- YouTube
- Transcripts
- Guides
5 best ways to get a YouTube transcript in 2026
YouTube's own transcript panel, a free generator, an API, an AI agent and your own speech to text, compared on speed, cost and what breaks.
A YouTube transcript is what a video says, as text. YouTube shows one next to the video, but only for reading along, so the moment you want to search it, quote it or feed it to a model you need another route. Here are five, from a button you already have to an API that handles a thousand videos.
The short version
| Way | Best for | Cost |
|---|---|---|
| YouTube's Show transcript panel | Reading along while you watch | Free, on the video page |
| Free transcript generator | One video, with the text in your hands | Free, with a daily limit |
| Transcript API | A list of videos, or a feature in your product | 1 credit per transcript |
| AI agent with MCP | Asking questions about a video in a chat | The same credits as the API |
| Your own speech to text | Videos with no captions, or a model you choose | Your compute and your time |
I ran the API calls below today, on a 19 second video, a 13 minute one and a talk of over an hour. The panel I describe from YouTube's help pages.
What is a YouTube transcript?
A YouTube transcript is the spoken words of a video written out as text. A good one has timestamps too, so you know when each line is said.
Most tools read the captions YouTube already holds for the video, written by the creator or made by YouTube's speech recognition. The alternative is to take the audio and run speech recognition yourself, which works on any video with speech but takes longer and costs more.
Reading captions is fast and cheap. It stops at videos that have none.
1. YouTube's own Show transcript panel
Start here, because it costs nothing and needs no tool. Per YouTube's help page on transcripts, you open the video, click Show transcript in the description, and the transcript scrolls along as the video plays. Click any line and the video jumps to that moment. It works for any video that has captions.
That is a good way to read along, or to find the minute where someone says a name. The help page describes nothing beyond that. It lists no export and no way to pull the text into your own code.
If the captions are automatic, treat them with care. YouTube's own help says automatic captions may misrepresent the spoken content because of mispronunciations, accents, dialects or background noise.
Honest take. Use the panel when you are watching and want to jump around. It is the wrong tool the moment you need the text somewhere else.
2. A free YouTube transcript generator
For one video where you want the text itself, use a web tool. Ours is the free YouTube transcript generator.
- Copy the address of a public YouTube video.
- Paste it into the tool.
- Read the transcript. You get one line per caption with its start time.
- Copy the text, or download a .txt file that keeps the timestamps.
You need no account, no card and no API key. A daily limit applies.
Length is not a problem, because the tool reads captions that already exist. A talk of 1 hour and 1 minute came back with 10,309 words.
Honest take. The tool reads the captions YouTube already has. A video with none returns a message that says so, and the tool will not listen to the audio for you. It is made for one video at a time.
3. The YouTube transcript API
For a list of videos, or a transcript feature inside your own product, call the API. It is one POST request. Send videoId or the full link as videoUrl, and set includeTimestamps to true if you want the start and end of each line.
The same call with the TypeScript SDK.
And with the Python SDK.
Or from a terminal with the CLI.
This is the response, with the segments list cut to two lines.
text is the whole transcript in one string. segments has each line with startSeconds and endSeconds. isAutoGenerated is false when the creator wrote the captions, as here, and true when YouTube made them. Check it before you quote anyone word for word. The full reference is on the YouTube transcript API page.
One thing caught me. I sent a 13 minute video with no language and got captions in Arabic, marked as automatic. The same call with language set to en returned the English captions, 2,700 words. If your videos have more than one caption language, send language. It takes a tag such as en or pt-BR.
YouTube also has an official captions API in the YouTube Data API. Per the documentation for captions.download, that method requires permission to edit the video, it needs OAuth authorization, and each call costs 200 quota units. That fits managing captions on your own channel. It is not a way to read captions on videos you do not own.
Honest take. The API needs a key and a few lines of code, so it is the wrong pick for one video. It is the right pick the moment you have ten.
4. An AI agent with MCP
If you already work in Claude Code, Cursor or Codex, let the agent get the transcript. Add the Stophy MCP server once.
In Claude Code, run /mcp, select stophy and select Authenticate. You sign in with your browser and the setup has no API key. In Codex, run the two commands below.
Then paste a YouTube link and ask a question about it. Ask what the speaker says about pricing, or for the three points of the first ten minutes. The agent finds the transcript endpoint, calls it and answers from the text.
A transcript of an hour long talk runs to about ten thousand words. The agent reads them so you do not have to.
Honest take. This is the fastest way to ask about a video and the slowest way to export a hundred transcripts. For bulk work, use the API. A long transcript also fills a lot of your agent's context.
5. Your own speech to text
You can also do the whole job yourself. Download the audio of the video, then run it through a speech recognition model.
This is the only way here that works on a video with no captions. You also choose the model, the language handling and the output format.
Honest take. It is three tools and a script for something the other ways do in one step. Getting the audio is the fragile part, and a long video takes real compute time. Pick this way when a video has no captions, or when you need a specific model.
What a YouTube transcript costs
The panel and the free tool cost nothing. The API and the agent charge credits, and a new account has 1,000 of them.
| Video | Credits |
|---|---|
| 19 seconds, creator captions | 1 |
| 13 minutes, automatic captions | 1 |
| 1 hour 1 minute, creator captions | 1 |
| Private, removed or no transcript comes back | 0 |
A transcript costs 1 credit, whatever the length. I ran the first three videos in the table and each cost 1 credit. You pay only when a transcript comes back.
What does not work
- Videos with no captions. The tool and the API read captions only, so they return a message that says so. Use your own speech to text for those.
- Private, removed and age restricted videos. I sent an id that does not exist and got a clear not found message, at no cost.
- Quoting automatic captions word for word. Names, slang and overlapping voices go wrong. Check isAutoGenerated first.
- Reading someone else's captions with the official captions API. It needs permission to edit the video.
- The screen. A transcript holds what is said and nothing about the picture.
Which way to pick
For reading along while you watch, use the panel. For one video where you need the text, use the free tool. For a list of videos or a feature in your product, use the API. For a question about a video while you work, ask your agent.
Build your own pipeline only for videos with no captions, or when you need a particular model.
Frequently asked questions
How do I get a YouTube transcript?
Open the video, click Show transcript in the description and read it in the panel. To get the text as a file or in your own code, paste the link into a free transcript generator or call a transcript API.
Is there a free YouTube transcript generator?
Yes. The free YouTube transcript generator needs no account, no card and no API key. Paste a link and you get the text with a start time for each line. A daily limit applies.
Does the Show transcript button work on every video?
It works on videos that have captions. YouTube's help page says you can see the full transcript of any video that has captions. A video with no captions has nothing to show.
Can I get a YouTube transcript with timestamps?
Yes. The free tool shows the start time of each line and keeps it in the download. The API returns a segments list when you set includeTimestamps to true.
Is there a YouTube transcript API?
Yes. Send a POST request to the YouTube transcript endpoint with videoId or videoUrl. The response has the full text, the language and, if you ask, a list of timed segments. You need no YouTube API key and no Google login.
Can I use the official YouTube captions API instead?
Only for your own videos. YouTube's documentation says captions.download requires permission to edit the video and costs 200 quota units a call. It is built for creators who manage their captions, not for reading other channels.
How long can the video be?
There is no limit I could find. I transcribed a talk of 1 hour and 1 minute and it returned 10,309 words for 1 credit.
Can I turn a YouTube video into text if it has no captions?
Not with the tool or the API, which read captions only. For a video with no captions you need to take the audio and run speech recognition on it yourself.
Can Claude or Cursor read a YouTube video?
Yes, through MCP. Add the Stophy server to Claude Code, Cursor or Codex and paste a YouTube link. The agent calls the transcript endpoint and answers from what the video says.
How accurate is a YouTube transcript?
It depends on who made the captions. A creator's captions are usually close to the audio. Automatic ones get clear speech right and miss names and overlapping voices, and the response marks them with isAutoGenerated so you know when to read with care.