Title: YouTube Transcript API - Channels, Search, Playlists
Open Graph Title: YouTube Transcript API - Channels, Search, Playlists
X Title: The transcript API for social media video | TranscriptFetch
Description: A simple, reliable YouTube Transcript API. Turn any video into clean text with timestamped segments and AI Fallback Transcription. Python & JavaScript SDKs, batch fetching, and an MCP server for AI agents.
Open Graph Description: A simple, reliable YouTube Transcript API. Turn any video into clean text with timestamped segments and AI Fallback Transcription. Python & JavaScript SDKs, batch fetching, and an MCP server for AI agents.
X Description: TranscriptFetch is a transcript retrieval service for YouTube, TikTok and Instagram: whole channels, playlists and searches, not just one-off links.
Keywords:
Opengraph URL: https://transcriptfetch.com/youtube-transcript-api
Domain: transcriptfetch.com
{"@context":"https://schema.org","@type":"Organization","@id":"https://transcriptfetch.com/#organization","name":"TranscriptFetch","alternateName":"Transcript Fetch","url":"https://transcriptfetch.com","email":"support@transcriptfetch.com","logo":{"@type":"ImageObject","url":"https://transcriptfetch.com/apple-icon.png"},"contactPoint":{"@type":"ContactPoint","contactType":"customer support","email":"support@transcriptfetch.com"},"foundingDate":"2026","founder":{"@type":"Person","name":"Chandler Casey","sameAs":["https://www.linkedin.com/in/chandler-casey1/","https://x.com/solodevpreneur","https://indiepa.ge/chandlercasey"]},"description":"TranscriptFetch is a transcript retrieval service for YouTube, TikTok and Instagram: whole channels, playlists and searches, not just one-off links.","sameAs":["https://www.wikidata.org/wiki/Q141470122","https://cloudsecurityalliance.org/star/registry/transcriptfetch","https://github.com/TranscriptFetch","https://www.linkedin.com/company/transcript-fetch/","https://www.crunchbase.com/organization/transcriptfetch","https://www.npmjs.com/package/transcriptfetch","https://www.npmjs.com/package/n8n-nodes-transcriptfetch","https://pypi.org/project/transcriptfetch-sdk/","https://discord.gg/R4uBZNwRc","https://www.postman.com/transcriptfetch"],"knowsAbout":[{"@type":"Thing","name":"Closed captioning","sameAs":"https://en.wikipedia.org/wiki/Closed_captioning"},{"@type":"Thing","name":"Subtitles","sameAs":"https://en.wikipedia.org/wiki/Subtitles"},{"@type":"Thing","name":"Speech recognition","sameAs":"https://en.wikipedia.org/wiki/Speech_recognition"},{"@type":"Thing","name":"Web API","sameAs":"https://en.wikipedia.org/wiki/Web_API"},{"@type":"Thing","name":"YouTube","sameAs":"https://en.wikipedia.org/wiki/YouTube"},{"@type":"Thing","name":"Retrieval-augmented generation","sameAs":"https://en.wikipedia.org/wiki/Retrieval-augmented_generation"},{"@type":"Thing","name":"Large language model","sameAs":"https://en.wikipedia.org/wiki/Large_language_model"},{"@type":"Thing","name":"JSON","sameAs":"https://en.wikipedia.org/wiki/JSON"},{"@type":"Thing","name":"Web scraping","sameAs":"https://en.wikipedia.org/wiki/Web_scraping"},"YouTube transcripts","Video transcription","YouTube Data API","Model Context Protocol (MCP)","AI agents"]}
{"@context":"https://schema.org","@type":"WebSite","@id":"https://transcriptfetch.com/#website","name":"TranscriptFetch","url":"https://transcriptfetch.com/","publisher":{"@id":"https://transcriptfetch.com/#organization"}}
{"@context":"https://schema.org","@type":"FAQPage","mainEntity":[{"@type":"Question","name":"What happens when a video has no captions?","acceptedAnswer":{"@type":"Answer","text":"The audio is transcribed automatically on the same call: no second endpoint and no change to your code. Media under 20 minutes usually returns inline; longer media returns a 202 with a job you can poll or receive by callback. Transcription is billed by audio duration, one credit per started 5 minutes, and only on delivery."}},{"@type":"Question","name":"Which languages does it return?","acceptedAnswer":{"@type":"Answer","text":"Whatever caption track the video carries, with the language stamped on the response. When several tracks exist you can ask for one; when none exists and the audio is transcribed, the language is detected automatically."}},{"@type":"Question","name":"What are the rate limits?","acceptedAnswer":{"@type":"Answer","text":"Per-plan request rates, returned on every response as standard rate-limit headers so a client can back off without guessing. Batch is the cheaper path for volume: one call carries up to 50 videos on the free tier, Basic and Pro, and up to 500 on Mega and Scale."}},{"@type":"Question","name":"Can I fetch many videos in one request?","acceptedAnswer":{"@type":"Answer","text":"Yes. POST /transcripts/batch takes up to 50 ids per call, 500 on Mega and Scale, and returns a per-item outcome rather than failing the whole request. You are charged one credit per successfully delivered caption transcript; failures cost nothing."}},{"@type":"Question","name":"What is in the free tier?","acceptedAnswer":{"@type":"Answer","text":"50 credits, no card. Every endpoint is included, not a reduced subset, so you can build the real integration before deciding to pay for it."}},{"@type":"Question","name":"Is a credit the same as a request?","acceptedAnswer":{"@type":"Answer","text":"No. A credit is a delivered result. A caption transcript is one credit, a channel, playlist or search page is one credit, and polling a job, checking your balance and the health probe are free. Failed and empty results are never charged."}},{"@type":"Question","name":"Are there SDKs?","acceptedAnswer":{"@type":"Answer","text":"Python and JavaScript, both thin wrappers over the same REST endpoints with typed models. There is also an official n8n community node, and an MCP server if you would rather let an assistant make the call."}},{"@type":"Question","name":"What happens when YouTube changes something?","acceptedAnswer":{"@type":"Answer","text":"We fix it. Extraction runs through several methods behind one endpoint, so a change that breaks one path usually falls through to another before anyone notices, and the response shape your code parses does not move either way."}}]}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://transcriptfetch.com"},{"@type":"ListItem","position":2,"name":"YouTube Transcript API","item":"https://transcriptfetch.com/youtube-transcript-api"}]}
| application-name | TranscriptFetch |
| google-adsense-account | ca-pub-9390105787953726 |
| mobile-web-app-capable | yes |
| apple-mobile-web-app-title | TranscriptFetch |
| apple-mobile-web-app-status-bar-style | default |
| og:image | https://transcriptfetch.com/opengraph-image |
| og:image:type | image/png |
| og:image:width | 1200 |
| og:image:height | 630 |
| og:image:alt | The transcript API for social media video | TranscriptFetch |
| twitter:card | summary_large_image |
| twitter:image | https://transcriptfetch.com/opengraph-image |
| twitter:image:alt | The transcript API for social media video | TranscriptFetch |
| twitter:image:type | image/png |
| twitter:image:width | 1200 |
| twitter:image:height | 630 |
Links:
Viewport: width=device-width, initial-scale=1