Need the text from a YouTube video? Whether you’re a student taking notes, a researcher gathering data, or a content creator repurposing video material, there are several ways to get transcripts. Let’s compare the most popular methods.
Method 1: YouTube’s Built-in Transcript Feature
YouTube has a native transcript viewer hidden in the video description.
How to use it:
- Open a YouTube video
- Click "…more" below the video to expand the description
- Scroll down to the “Transcript” section and click “Show transcript”

- A transcript panel appears to the right with timestamps

Pros:
- No installation needed
- Works on any browser
- Shows timestamps
Cons:
- No auto-scroll — you have to manually scroll to follow along
- Can’t easily copy the full text (selecting all is clunky)
- No search within the transcript
- Limited formatting — just a wall of text
- Not available for all videos
This is fine for a quick look, but becomes frustrating for longer videos or when you need to work with the text.
Method 2: Browser Extensions (YouTube Text Tools)
Browser extensions bring transcripts directly into the YouTube interface with features that YouTube’s built-in viewer lacks.

YouTube Text Tools is a Chrome extension that adds a transcript panel that scrolls in sync with the video.
Key features:
- Auto-scroll — the transcript follows the video automatically
- Click-to-seek — click any line to jump to that moment
- Copy text — one-click copy of the entire transcript
- 100+ languages — switch between available transcript languages
- AI summaries — get key points with timestamps
- Font size control — adjust text size for comfortable reading
Pros:
- Works directly on YouTube — no switching tabs
- Auto-scroll synced with playback
- Multi-language support with translation
- AI-powered summaries
- Free to use
Cons:
- Chrome/Edge only (no Firefox yet)
- Requires extension installation
For most users, this is the easiest and most powerful option.
Method 3: yt-dlp (Command Line)
yt-dlp is a powerful open-source command-line tool for downloading YouTube content, including subtitles. It’s the successor to the popular youtube-dl.
Installation
# macOS
brew install yt-dlp
# Windows
winget install yt-dlp
# Linux
pip install yt-dlp
# Or download the binary from GitHub releases
Listing Available Subtitles
Before downloading, check which subtitle languages are available:

Downloading Subtitles
Download subtitles in your preferred format:

The --skip-download flag tells yt-dlp to only get subtitles, not the video itself.
Auto-Generated Subtitles
Many videos don’t have manual captions but have YouTube’s auto-generated ones. Use the --write-auto-sub flag:

Useful Flags
| Flag | Description |
|---|---|
--write-sub | Download manual subtitles |
--write-auto-sub | Download auto-generated subtitles |
--sub-lang en | Select language (en, es, fr, etc.) |
--convert-subs srt | Convert to SRT format |
--skip-download | Don’t download the video |
--sub-format vtt | Choose subtitle format |
Pros:
- Works from the command line — great for automation
- Download subtitles in bulk for multiple videos
- Multiple output formats (SRT, VTT, JSON, etc.)
- Can be scripted for batch processing
- Free and open source
Cons:
- Requires command-line knowledge
- No real-time viewing — you get a file, not a live transcript
- Need to install the tool
- No auto-scroll or interactive features
yt-dlp is the best choice when you need to download transcripts in bulk or integrate them into automated workflows.
Method 4: YouTube Data API
For developers, YouTube provides an official API to programmatically fetch captions.
from googleapiclient.discovery import build
youtube = build('youtube', 'v3', developerKey='YOUR_API_KEY')
# List available captions
captions = youtube.captions().list(
part='snippet',
videoId='VIDEO_ID'
).execute()
for item in captions['items']:
print(f"{item['snippet']['language']}: {item['snippet']['name']}")
Pros:
- Full programmatic control
- Can be integrated into apps and services
- Official and reliable
Cons:
- Requires a Google API key
- API quota limits apply
- Complex setup for non-developers
- Caption download endpoint requires OAuth (owner access)
Comparison Table
| Feature | YouTube Built-in | YouTube Text Tools | yt-dlp | YouTube API |
|---|---|---|---|---|
| No installation | ✓ | — | — | — |
| Auto-scroll | — | ✓ | — | — |
| Copy full text | — | ✓ | ✓ | ✓ |
| Multi-language | ✓ | ✓ | ✓ | ✓ |
| AI summaries | — | ✓ | — | — |
| Batch download | — | — | ✓ | ✓ |
| Scriptable | — | — | ✓ | ✓ |
| Free | ✓ | ✓ | ✓ | ✓* |
*YouTube API is free within quota limits.
Which Method Should You Use?
- Casual viewing → YouTube’s built-in transcript
- Students & researchers → YouTube Text Tools for auto-scroll, search, and AI summaries
- Developers & power users → yt-dlp for command-line access and batch downloads
- Building an app → YouTube Data API for programmatic access
For most people, a browser extension like YouTube Text Tools offers the best balance of power and convenience — you get the transcript right where you need it, synced with the video, and with extra features like AI summaries that save you time.