YouTube transcript APIs compared

You need the transcript of videos you do not own, from code that runs on a server, and you want to know what it will cost at 1,000, 25,000 and a million videos a month. This page puts eight options side by side: two you run yourself, five hosted APIs, and us. Prices were read from each vendor's public pricing page in September 2026. Where a number is not published, the cell says so.

How we compared

Eight criteria, the same for everyone. Does it work from a datacenter IP without you supplying a proxy. Price per 1,000 transcripts at three volumes. Output formats. Whether it covers search, channel and playlist listings or only single videos. Translation. What happens when a video has no captions, and whether you pay for it. MCP or agent support. And the free tier. We did not measure accuracy: every option returns the caption track YouTube already serves.

Comparison table

OptionDatacenter IPsEntry priceFormatsSearch / channel / playlistTranslationFailed videoMCPFree tier
youtube-transcript-api (library)Blocked; needs proxy$0 + proxyJSON, SRT, VTT, TXT, CSVNoYouTube's own tracksExceptionNoEverything
YouTube Data API v3Yes$0SRT, VTT, TTML, SBV, SCCYes (100 units/search)No403 for videos you cannot editNo10,000 units/day
SupadataYes$17/mo, 3,000 creditsJSON, textChannel, playlistPro+, 30 credits/minNot publishedNo100 credits/mo
ScrapingDogYes$40/mo, 200,000 creditsJSONSeparate APIsNot publishedNot publishedNo200 credits
transcriptapi.comYes$5/mo, 1,000 creditsText, timestampsYesNot publishedOnly successful requests billedYes100 credits
youtube-transcript.ioYes$9.99/mo, 1,000Not publishedChannel (Plus+)Not publishedNot publishedNo (n8n, Make)25 tokens/mo
RapidAPI listingsUsuallyVariesVariesVariesVariesVariesNoUsually small
TranscriptAPIYes$10 top-up, 2,500 creditsJSON; SRT/VTT via MCP and toolsYes, all three+1 credit / 40 segmentsRefunded, retryable: falseYes, hosted + npx20 credits

“Datacenter IPs” means: can you call it from AWS, GCP, Hetzner, Vercel or a GitHub Action and get a transcript back without renting a proxy. That is the criterion that sends most people from the first row to the rest of the table. More on why in youtube-transcript-api blocked.

youtube-transcript-api (self-hosted library)

The jdepoix/youtube-transcript-api Python package is MIT-licensed, free, and the reference implementation everyone else quietly copies. It lists caption tracks, fetches them, asks YouTube for its own translations, and formats to JSON, SRT, VTT, CSV or text. On a laptop it is the right answer.

Its README is honest about the catch: YouTube “has started blocking most IPs that are known to belong to cloud providers”, so deployed code hits RequestBlocked or IpBlocked. The library ships a Webshare integration for exactly this reason. It also warns that it uses an undocumented part of YouTube, so “there is no guarantee that it won't stop working tomorrow”. No search, no channel listing, no playlist listing. The total cost is the proxy bill plus the hours you spend when YouTube changes its player response. Our migration guide covers the swap; the data shape is identical.

YouTube Data API v3

Free, official, stable, and the wrong tool. Google's docs give a default quota of 10,000 units per day, and captions.downloadcosts 200 of them. Worse, the method “requires the user to have permission to edit the video”, so for any video that is not yours it returns 403 regardless of quota. It does search (100 units a call, so 100 searches a day) and playlist listing well. Keep it for managing your own channel; see why you cannot download captions you do not own.

Supadata

A hosted multi-platform API: YouTube transcripts plus web scraping and other video sites. Published plans as of September 2026: Free 100 credits a month; Basic $5 a month billed annually with 300 credits; Pro $17 for 3,000; Mega $47 for 30,000; Giga $297 for 300,000; Supa $897 for 1,000,000. A YouTube transcript is one credit. Translation and batch endpoints are Pro and above, and translation is priced at 30 credits per minute of video, which makes a one-hour talk 1,800 credits.

Good at: breadth beyond YouTube, and clear rate limits per plan. Falls down on: monthly credits that reset, a $60-a-year minimum for the cheapest paid plan, and no published refund policy for a captions-off video.

ScrapingDog YouTube transcripts API

ScrapingDog is a general scraping API with a YouTube transcript endpoint. Its pricing table lists the transcript API at 1 credit per request, and plans start at Lite, $40 a month for 200,000 credits, then Standard, $90 for 1,000,000, with a 200-credit free trial. Annual billing is ten months for twelve. Output is JSON segments with text, start, duration, with a language parameter.

Good at: the lowest price per request past ~25,000 a month, with search and channel data as separate APIs on the same key. Falls down on: a $40 floor for a hobby project, no translation, no published refund policy, and credit costs that differ per API.

transcriptapi.com

transcriptapi.com is not us. It is a separate company with a similar name; we are transcriptapi.io. Their public site advertises transcripts, search, channel and playlist endpoints, RSS upload tracking that costs no credits, and MCP access. Pricing as of September 2026: 100 free credits; $5 a month for 1,000 credits with top-ups at $2.50 per 1,000; or $4.50 a month billed annually ($54) with top-ups at $1.50 per 1,000. One credit is one successful request, so failures are not billed.

Good at: the cheapest paid entry point on this page, and a feature list close to ours. Falls down on: the top-up rate is the whole story above 1,000 a month, so 25,000 transcripts cost roughly $65 on monthly billing, and we could not find a published enterprise tier.

youtube-transcript.io

Primarily a browser tool, with an API on the paid plans. Pricing as of September 2026: Free with 25 tokens a month; Plus $9.99 a month for 1,000 transcripts; Pro $24.99 for 3,000, with $47.99 and $79.99 tiers for 6,000 and 10,000; Enterprise custom above that. The API docs describe two endpoints, POST /api/transcripts (up to 50 ids per call) and POST /api/channels (Plus and Pro), rate-limited to 5 requests per 10 seconds.

Good at: a simple UI for non-developers and ready-made n8n and Make templates. Falls down on: the rate limit caps a single key at about 43,000 requests a day, no search endpoint, and no published pricing past 10,000 a month.

RapidAPI listings

Search RapidAPI for “youtube transcript” and you get dozens of listings, most of them the Python library behind somebody's proxy. Fine for a weekend project; free tiers are common. For anything you ship, check the listing's uptime history and last update date. A single-maintainer wrapper goes down the day YouTube changes something, and there is no one to call.

TranscriptAPI

Ours. GET /transcript for any public video with a caption track, plus /search, /channel/videos, /channel/search, /playlist and a free new-upload webhook. Every call is one credit; a repeat of a cached video is free; AI translation is one extra credit per 40 segments, minimum two, so a one-hour talk is roughly 30 credits. Prices: 20 free credits with no card; one-time top-ups that never expire at $10 for 2,500, $39 for 10,000, $149 for 50,000 and $449 for 200,000; Production at $49 a month for 25,000 credits; Enterprise from $249 a month for 1,000,000. Details on the pricing page.

When YouTube refuses a video (captions off, private, deleted, age-restricted) the credit comes back automatically and the response carries retryable: false and a plain English hint, which matters when an agent is deciding whether to try again. There is an MIT MCP server with five tools, hosted and via npx. Full reference in the docs.

Where we fall down: no video or audio download, and no speech-to-text for videos without captions. No comments. The REST endpoint returns JSON segments only; SRT and VTT come from the MCP server or the free browser tools, not from /transcript itself. Pricing is credits only, so if you want a flat unlimited plan we do not have one. And we are a younger product than Supadata or ScrapingDog, with a shorter track record to point at.

Which one for which case

  • Hobby script on your own machine. youtube-transcript-api. It is free and your home IP is fine. The moment it moves to a VPS or a cron job in the cloud, pick any hosted option below or budget for a residential proxy.
  • SaaS product, a few thousand to tens of thousands a month. This is where TranscriptAPI, Supadata and transcriptapi.com are within a couple of dollars per 1,000 of each other. Decide on the details: whether failed videos are refunded, whether unused credits expire, and whether you need search and channel listing on the same key. Our hosted YouTube transcript API page walks through that integration.
  • AI agent or MCP client. TranscriptAPI or transcriptapi.com, the two with MCP servers. For agents the important field is retryable; a model that gets a bare 500 will loop.
  • Enterprise volume, hundreds of thousands and up. ScrapingDog is the cheapest published price per request at a million a month; TranscriptAPI's Enterprise plan and Supadata's Supa plan are the alternatives with transcripts as the main product rather than one endpoint of many.

Price per 1,000 transcripts

Cheapest published plan that covers the volume, divided by the volume, monthly billing, September 2026. Assumes one credit per transcript and no translation. Proxy costs for the library are not included because they are per gigabyte and per provider.

Option1,000 / month25,000 / month1,000,000 / month
youtube-transcript-api + proxyproxy cost, not publishedproxy cost, not publishedproxy cost, not published
YouTube Data API v3$0, but only for videos you can edit
Supadata$17.00 (Pro)$1.88 (Mega)$0.90 (Supa)
ScrapingDog$40.00 (Lite)$1.60 (Lite)$0.09 (Standard)
transcriptapi.com$5.00$2.60 (plan + top-ups)$2.50 (top-ups)
youtube-transcript.io$9.99 (Plus)not published (Enterprise)not published
TranscriptAPI$4.00 ($10 top-up, 2,500 credits, no expiry)$1.96 (Production)$0.25 (Enterprise)

Two caveats. Our top-up credits do not expire, so the 1,000 cell shows the per-1,000 rate rather than the $10 outlay. And a plan whose credits are shared across many APIs (ScrapingDog, Supadata) is only this cheap if transcripts are all you buy with them.

Frequently asked questions

What is the best YouTube transcript API?

It depends where the code runs and how many videos you need. On your laptop, the free youtube-transcript-api library is hard to beat. From a server, YouTube blocks datacenter IPs, so you need a residential proxy or a hosted API. Among hosted APIs, ScrapingDog is cheapest at very high volume, transcriptapi.com is cheapest for a few hundred a month, and TranscriptAPI sits between them with credits that never expire, refunds on failed videos and an MCP server for AI agents.

Why can't I use the official YouTube Data API v3 for transcripts?

The Data API's captions.download method only works when the request is authorised by OAuth as an account with permission to edit the video. For anyone else's video it returns 403, and it costs 200 quota units of a 10,000-unit daily default. It is the right API for managing your own channel and the wrong one for reading transcripts of public videos.

How much does a YouTube transcript API cost per 1,000 transcripts?

As of September 2026, published prices work out to roughly $0.09 to $1.60 per 1,000 on ScrapingDog depending on plan, $0.90 to $17 on Supadata, $2.50 on transcriptapi.com top-ups, about $10 on youtube-transcript.io's Plus plan, and $0.25 to $4 on TranscriptAPI. The self-hosted library is free but a residential proxy is not; proxy pricing is per gigabyte and varies by provider.

Is transcriptapi.com the same as transcriptapi.io?

No. transcriptapi.com is a separate company with a similar name. This page is published by transcriptapi.io. We list their public pricing because people confuse the two, and we have tried to state it accurately.

Does TranscriptAPI download the video or audio?

No. TranscriptAPI returns the caption track YouTube already has for a public video, plus search, channel and playlist listings. It does not download media, does not run speech-to-text on videos without captions, and does not return comments. If a video has captions disabled, the call fails, the credit is refunded and the response says retryable: false.

Which YouTube transcript APIs work with AI agents and MCP?

TranscriptAPI ships an MIT-licensed MCP server (npx -y transcriptapi-mcp) and a hosted endpoint at api.transcriptapi.io/mcp for claude.ai and ChatGPT. transcriptapi.com also advertises MCP access. Supadata, ScrapingDog and youtube-transcript.io are plain REST APIs you would wrap yourself; youtube-transcript.io offers n8n and Make templates.

Try the numbers yourself

Every account starts with 20 free credits and no card, enough to fetch a few transcripts from a cloud IP and see the refund behaviour on a video with captions off. Get a key, then read the youtube-transcript-api alternative page if you are replacing the library, or migrate if you are coming from the Data API.