📄 YouTube Transcript Viewer

Extract, copy, and download YouTube video transcripts instantly • perfect for students, researchers & creators!

📝 Extract Text 📥 Download 🔒 100% Private

📋 Paste YouTube Video URL

Supports youtube.com, youtu.be, and YouTube Shorts URLs

⚠️ Copyright Notice
This tool does not download videos or audio. It only displays publicly available transcript/subtitle text for educational and reference purposes.

⭐ Features

📝
Extract Text
Get full transcript
⏱️
Timestamps
Every 30 seconds
📥
Download
Word & TXT files
🔒
Private
No data stored

🛠️ How It Works

1
🔗
Copy URL
Copy any YouTube video link from your browser address bar
2
📋
Paste & Extract
Paste the URL above and click "Get Transcript"
3
👀
Read & Review
View the full transcript with optional timestamps every 30s
4
📥
Copy or Download
Copy to clipboard or download as Word (.docx) or TXT file

Supported URL formats: youtube.com/watch, youtu.be short links, and YouTube Shorts URLs.

Timestamps: Toggle the checkbox to show/hide timestamps. They're grouped every 30 seconds for clean readability.

Download options: Word (.docx) includes formatted text with timestamps as headers. TXT gives you plain text for easy pasting.

Privacy: Everything runs in your browser. No video data is stored on any server.

💡 Pro Tips
  • Toggle timestamps off for clean copy-paste into notes or documents.
  • Works with auto-generated captions and manually uploaded subtitles.
  • If a video has no transcript, the creator may have disabled captions.
  • Great for studying lecture videos, extracting quotes, or creating summaries.

❓ Frequently Asked Questions

What is a YouTube transcript?

A YouTube transcript is the text version of all spoken words in a video. It includes captions and subtitles that YouTube generates automatically or that creators upload manually.

Is this tool free to use?

Yes! This YouTube transcript viewer is completely free. No login or registration required. Your data is never stored on our servers.

Why can't I get a transcript for some videos?

Some videos don't have transcripts available. This can happen if the creator disabled captions, the video is new, or it's in a language without auto-caption support.

Can I use this for research or study?

Absolutely! This tool is perfect for students, researchers, and content creators who need to reference video content in text form for educational purposes.

' + title + '<' + '/title>' + '<style>body{font-family:Calibri,sans-serif;font-size:11pt;line-height:1.6}h1{color:#333;font-size:16pt}h2{color:#666;font-size:12pt;font-weight:normal}p{margin:10px 0}b{color:#0066cc}<' + '/style><' + '/head>' + '<body><h1>⭐ ' + title + '<' + '/h1>' + '<h2>Video: <a href="' + videoUrl + '">' + videoUrl + '<' + '/a><' + '/h2>' + '<h2>Generated: ' + date + '<' + '/h2><hr>' + lines + '<' + '/body><' + '/html>'; var blob = new Blob([content], { type: 'application/msword' }); var url = URL.createObjectURL(blob); var a = document.createElement('a'); a.href = url; a.download = 'transcript_' + currentVideoId + '.doc'; a.click(); URL.revokeObjectURL(url); } function downloadAsTxt() { var showTimestamps = document.getElementById('showTimestamps').checked; var title = currentVideoTitle || 'YouTube Transcript'; var videoUrl = 'https://www.youtube.com/watch?v=' + currentVideoId; var date = new Date().toLocaleDateString(); var content = title + '\n'; content += 'Video: ' + videoUrl + '\n'; content += 'Generated: ' + date + '\n'; content += '==================================================\n\n'; if (showTimestamps) { var INTERVAL = 30; var groups = []; var currentGroup = { start: 0, texts: [] }; for (var i = 0; i < currentTranscriptData.length; i++) { var item = currentTranscriptData[i]; var itemStart = item.start || 0; if (currentGroup.texts.length > 0 && itemStart >= currentGroup.start + INTERVAL) { groups.push(currentGroup); currentGroup = { start: itemStart, texts: [] }; } if (currentGroup.texts.length === 0) { currentGroup.start = itemStart; } currentGroup.texts.push(item.text); } if (currentGroup.texts.length > 0) { groups.push(currentGroup); } for (var j = 0; j < groups.length; j++) { var group = groups[j]; var time = formatTime(group.start); var text = group.texts.join(' '); content += '[' + time + '] ' + text + '\n\n'; } } else { var texts = []; for (var k = 0; k < currentTranscriptData.length; k++) { texts.push(currentTranscriptData[k].text); } content += texts.join(' '); } var blob = new Blob([content], { type: 'text/plain' }); var url = URL.createObjectURL(blob); var a = document.createElement('a'); a.href = url; a.download = 'transcript_' + currentVideoId + '.txt'; a.click(); URL.revokeObjectURL(url); } </script> </body> </html>