Free tool · No signup
YouTube Subtitle Downloader
Download the subtitles of a YouTube video as an SRT or VTT file you can load in a video player or editor, or as plain text. Pick any caption language the video has.
How to use it
- Copy the video's link from YouTube. Shorts links, youtu.be links and bare video IDs work too.
- Paste it above and press Get subtitles. The preview shows the first lines with their timings.
- Pick a language from the list if you need one other than the video's own.
- Press SRT, VTT or TXT to download the file.
SRT, VTT or TXT?
SRT is the most widely supported subtitle file: VLC, most video editors (Premiere Pro, DaVinci Resolve, CapCut) and upload forms accept it. VTT (WebVTT) is the format for subtitles on the web, used by the HTML <track> element and many online players. TXT drops the timings and gives you just the words.
The files keep the timings of YouTube's caption track, so they line up with the video. Creator-uploaded tracks are usually cleaner than auto-generated ones, which can lack punctuation.
Only existing caption tracks can be downloaded. If a video has no captions, there is nothing to download: this page doesn't create subtitles from the audio.
Do the same in code
This page runs on the YTAPI transcript API. With a key you can fetch transcripts from scripts, apps and AI agents, in bulk, without the limits of this page. New accounts get 200 free credits; one transcript uses one credit.
curl
curl "https://api.ytapi.dev/v1/transcripts?video_id=dQw4w9WgXcQ&format=srt&languages=es" \
-H "Authorization: Bearer $YTAPI_API_KEY" -o subtitles.es.srtPython
# pip install ytapi-sdk
from ytapi import YTAPI
api = YTAPI() # reads YTAPI_API_KEY
srt = api.get_transcript("dQw4w9WgXcQ", format="srt", languages=["es"])
open("subtitles.es.srt", "w", encoding="utf-8").write(srt)JavaScript / TypeScript
// npm install @ytapi/sdk
import { writeFile } from "node:fs/promises";
import { YTAPI } from "@ytapi/sdk";
const api = new YTAPI(); // reads YTAPI_API_KEY
const vtt = await api.getTranscript("dQw4w9WgXcQ", { format: "vtt", languages: ["es"] });
await writeFile("subtitles.es.vtt", vtt as string);Frequently asked questions
Is it free?
Yes. You can download subtitles here without an account, about 10 videos every 10 minutes. For more, or to download from code, sign up for an API key: new accounts get 200 free credits and need no card.
Can I download auto-generated subtitles?
Yes. The language list shows both creator-uploaded and auto-generated tracks; auto-generated ones are marked as such.
Can I download subtitles in a language the video doesn't have?
No. You can download the caption tracks that exist on the video. The list after the first fetch shows all of them.
Which format should I use for Premiere Pro or DaVinci Resolve?
SRT. Both import it as a captions track. Use VTT for web players and the HTML <track> element.
Is downloading subtitles allowed?
Subtitles are part of the video's content, which belongs to its creator. Downloading them for personal use, accessibility or research is common; re-publishing them may need the creator's permission. Check YouTube's terms and the rules where you live.