How to download YouTube subtitles on Mac — as SRT or a plain-text transcript
First: what kind of subtitles does the video have?
You can only download a subtitle track — the kind the player's subtitles (CC) button turns on and off. Subtitles burned into the picture are just pixels; no downloader can get text out of them.
YouTube videos can have three kinds of tracks:
- Manual subtitles — uploaded by the creator or by volunteers. The most accurate; some videos have several languages.
- Auto-generated — speech-recognized captions in the original language. Most videos only have these; expect missing punctuation and odd line breaks. In yt-dlp and Vidnip their language code ends in
-orig, e.g.en-orig. - Auto-translated — machine translations of the original captions into almost any language. Quality is mixed, and they are the most rate-limited (more below).
The four options at a glance
| Method | Cost | What you get | Best for |
|---|---|---|---|
| The built-in YouTube transcript | Free | Text on the page that you select and copy | Quoting a few lines from one video |
| yt-dlp | Free | SRT files, whole playlists included | Anyone comfortable in Terminal |
| Online sites and browser extensions | Mostly free, with ads | SRT or TXT | The occasional one-off |
| Vidnip | Subtitles-only downloads don't use your free downloads | SRT, or TXT without timings, in two clicks | Doing it often, without Terminal |
1. The built-in YouTube transcript: free, copy-only
- Open the video in your browser and click ...more to expand the description.
- Scroll to the Transcript section and click Show transcript.
- The transcript opens next to the video and scrolls with playback; click any line to jump there. Select the text and copy it.
The button follows the YouTube interface language: 「内容转文字」 in Simplified Chinese, 「文字起こしを表示」 in Japanese.
The catch: videos without captions don't have this section; it's one video at a time; there's no SRT file, and on long videos you scroll a lot while selecting.
2. yt-dlp: free, one command to an SRT file
yt-dlp is an open-source command-line downloader. Install it with Homebrew, along with ffmpeg (used to convert subtitle formats):
brew install yt-dlp ffmpeg
# See which subtitles a video has:
# "Available subtitles" are manual, "Available automatic captions" are auto
yt-dlp --list-subs "VIDEO_URL"
# Manual subtitles only, saved as SRT, no video
# (languages the video doesn't have are skipped)
yt-dlp --skip-download --write-subs --sub-langs "en,es,fr" --convert-subs srt "VIDEO_URL"
# Only auto-generated captions? Get the original-language track (code ends in -orig)
yt-dlp --skip-download --write-auto-subs --sub-langs ".*-orig" --convert-subs srt "VIDEO_URL"
--skip-download leaves the video alone; --sub-langs takes language codes separated by commas, or patterns (.*-orig means every original-language auto track); --convert-subs srt turns the VTT files YouTube serves into SRT. Files land in the current Terminal folder as "Title [video ID].language.srt". Give it a playlist URL and it fetches the subtitles of every video in the list.
--sleep-subtitles 5 for playlists, and if you're refused, wait a few minutes. Original-language tracks are generally unaffected.3. Vidnip: two clicks, SRT or a plain-text transcript
If you'd rather skip Terminal, Vidnip turns the same job into two menu items:
- Copy the video page URL, paste it into the address field at the top of Vidnip, and press Return or click Detect. YouTube usually takes 10–20 seconds.
- A card appears under Detected videos. Click the subtitle button on the right of the card (the speech-bubble icon) to see every track the video has: Manual subtitles, Auto-generated, and the Auto-translated submenu (common languages first, the rest under All…). Tick the languages you want — or tick nothing, and Vidnip picks one track using Preferred language in Settings → Subtitles.
- At the bottom of the same menu, choose Subtitles Only (.srt) or Transcript Only (.txt). You can also right-click the card and choose Download Subtitles Only (that one always saves .srt).
A row tagged Subtitles appears in the download list with "Getting subtitles…", and it's usually done in moments. Files go to your download folder (Downloads by default; change it in the bar at the bottom of the window), named "Title [Subtitles].language.srt", e.g. … [Subtitles].en-orig.srt — one file per language. With the app set to Chinese or Japanese, the tag reads [字幕].
- It doesn't use your free downloads. Subtitles-only downloads don't count toward the first 3 free videos, and they keep working after those are used up.
- Want a language other than the original? By default you get the original-language auto captions. Tick a language under Auto-translated, or turn on Allow auto-translated subtitles in Settings → Subtitles.
- Several languages at once: Vidnip spaces out the requests and asks once more for any language that didn't arrive. Anything still missing is named under the row — download those again in a few minutes.
- Adding a language later: for a video you already took subtitles from, you'll see "You’ve already downloaded these subtitles" — click Download Again.
- One video at a time for now: for the subtitles of a whole playlist, use the yt-dlp command above.
Online download sites and browser extensions work too, for the occasional video. Two things to watch: most of those sites carry ads and redirects, and extensions often ask for access to every site you visit — check the permissions before installing. They run into the same YouTube rate limits.
Turning SRT into plain text
An SRT file numbers every subtitle and gives it start and end times:
12
00:01:05,200 --> 00:01:08,900
Today we're looking at
how to save subtitles
Vidnip's Transcript Only (.txt) converts that on your Mac: it drops the numbers and timings, strips styling tags such as <i>, merges the lines that auto captions repeat as they roll, and writes one line per subtitle line in UTF-8. Only the .txt is kept.
Already have an SRT file? One line in Terminal does the same with tools built into macOS:
tr -d '\r' < "subtitles.srt" | sed -E -e '/-->/d' -e '/^[0-9]+$/d' -e 's/<[^>]*>//g' -e '/^[[:space:]]*$/d' | uniq > "transcript.txt"
In order: remove Windows line endings, delete the timings, delete the numbers, strip tags, delete blank lines, and let uniq merge adjacent duplicates (auto captions roll, so each sentence shows up two or three times). One side effect: a spoken line that is only a number — a year on its own, say — is deleted along with the subtitle numbers.
What to do with the transcript
- Summarize it with AI: paste the TXT into an AI assistant and ask for the key points or a summary. Without timings the TXT is shorter; to ask "where does it talk about X?", give it the SRT so it can point to the minute.
- Find a quote: ⌘F in the transcript beats scrubbing through the video.
- Notes and writing: copy what you need, and credit the source.
- Language learning: download the same video's subtitles in two languages and read them side by side.
When it doesn't work
- The subtitle menu only says "No subtitles available for this video": the video has no subtitle track — the text may be burned into the picture — and no tool can download it.
- The language you want is only under Auto-translated: you can get it, but it's the most throttled. Take the original track first and the translation a few minutes later.
- Error 429: YouTube is temporarily limiting requests. Wait a few minutes, ask for fewer languages, and don't keep retrying from the same network.
- Videos that need a sign-in (members-only, age-restricted): sign in under Settings → YouTube in Vidnip (a secondary account is a good idea), then detect again.
Common questions
How do I download YouTube subtitles as an SRT file?
Three ways: the free yt-dlp command with --skip-download --write-subs --convert-subs srt (use --write-auto-subs instead of --write-subs when the video only has auto captions); Vidnip, where you detect the video and choose Subtitles Only (.srt) from the subtitle menu; or an online download site. The built-in YouTube transcript only lets you copy text, not save an SRT file.
Is downloading subtitles free? Does it use Vidnip's free downloads?
yt-dlp and the built-in YouTube transcript are free. In Vidnip, Subtitles Only and Transcript Only don't use your free downloads either, and they keep working after the first 3 free videos are used up.
What's the difference between SRT and TXT?
SRT numbers each subtitle and gives its start and end time, so players can load it and you can see when something was said. TXT is just the words without timings, which is easier to read, search or hand to an AI. Vidnip's TXT also merges the lines that auto captions repeat.
Can I get subtitles in a language the video doesn't have?
Yes, if YouTube offers auto-translation for that video. In Vidnip, tick the language under Auto-translated in the subtitle menu; in yt-dlp, use --write-auto-subs with that language code, for example --sub-langs es. It's machine translation of mixed quality, and YouTube limits it the most, so if it fails, try again a few minutes later.
Why did some languages fail? What does 429 mean?
429 means YouTube is temporarily limiting requests, and auto-translated subtitles hit it most often. Wait a few minutes, download the missing languages again, and ask for fewer at a time. With yt-dlp, add --sleep-subtitles 5 for playlists. Original-language tracks are usually unaffected.
Can I download subtitles that are burned into the video?
No. They are part of the picture, with no separate subtitle file; you would need text recognition or speech recognition to recreate them. A quick test: if the player's subtitles (CC) button can turn them off, they are a downloadable track.
Where are the downloaded subtitles saved?
Vidnip saves them in your download folder (Downloads by default) as Title [Subtitles].language.srt, for example en-orig for the original English auto captions, one file per language. yt-dlp saves to the current Terminal folder by default.
Subtitles and transcripts in two clicks
Detect a video in Vidnip and the subtitle menu ends with Subtitles Only (.srt) and Transcript Only (.txt). Subtitles-only downloads don't use your free downloads.
Download Vidnip for Mac