YouTube Transcript Scraper – Download Subtitles & Captions avatar

YouTube Transcript Scraper – Download Subtitles & Captions

Pricing

from $4.00 / 1,000 successful results

Go to Apify Store
YouTube Transcript Scraper – Download Subtitles & Captions

YouTube Transcript Scraper – Download Subtitles & Captions

Extract transcripts, captions & subtitles from YouTube videos, channels or playlists — no API key. Timestamped or plain text, SRT/VTT export, 156-language translation, plus full video & channel metadata. Built for AI summaries, ChatGPT & research. Pay only for transcripts returned.

Pricing

from $4.00 / 1,000 successful results

Rating

5.0

(2)

Developer

Harsh Maur

Harsh Maur

Maintained by Community

Actor stats

3

Bookmarked

2

Total users

1

Monthly active users

6 hours ago

Last modified

Categories

Share

YouTube Transcript Scraper — Download Captions, Subtitles & Transcripts from Videos, Channels & Playlists (No API Key)

Pull the full transcript of any YouTube video — plus its captions/subtitles, metadata, and stats — as timestamped segments, plain text, or a ready-to-use SRT/VTT subtitle file. Feed it one video, a whole channel, or a playlist. No API key, no login, no Google account.

You pay only for transcripts that are actually returned — videos with no captions are reported back for free.

What does the YouTube Transcript Scraper do? {#what-does-it-do}

✅ No API key or login

No YouTube Data API quota, no OAuth, no cookies. Paste links and run.

🎬 Videos, channels & playlists

One video, an @handle/channel (its recent uploads), or a full playlist — mix them in a single run.

🌐 Translate into 156 languages

Get the transcript in the video's language, or auto-translate it into any of YouTube's 156 supported languages.

📝 Timestamps, text, SRT & VTT

Choose timestamped segments, clean joined text, or a downloadable .srt / .vtt subtitle file.

🤖 Auto-generated (ASR) + human captions

Works with creator-uploaded captions and YouTube's automatic speech-recognition subtitles.

📊 Full video & channel metadata

Title, description, views, likes, comments, duration, publish date, thumbnail, channel name/ID/@handle, and subscriber count — on every result.

🔄 Export anywhere

Download as JSON, CSV, Excel, or feed straight into Slack, Notion, Google Sheets, n8n, Zapier, Make, or an AI agent.

How to get a YouTube transcript {#how-to-scrape}

  1. Paste one or more YouTube video links into Video URLs (or an @handle/channel into Channels, or a Playlist link).
  2. (Optional) Pick a transcript language and format (timestamps / text / SRT / VTT).
  3. Click Start — transcripts and metadata land in the dataset, ready to export.
{
"videoUrls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ"],
"channelUrls": ["@mkbhd"],
"playlistUrls": [],
"maxVideos": 50,
"language": "en",
"transcriptFormat": "both"
}

What data you get from each video {#what-data}

  • Transcripttranscript (array of { start, end, duration, text }), transcriptText (joined plain text), and srt / vtt strings when you pick those formats.
  • Languagelanguage, availableLanguages, isAutoGenerated, wasTranslated.
  • VideovideoId, url, title, description, durationSeconds, viewCount, likeCount, commentCount, publishedAt, category, keywords, thumbnail.
  • ChannelchannelName, channelId, channelUrl, channelUsername (@handle), channelThumbnail, subscriberCount.
  • Statusstatus (success/failed) and an errorCode for videos that have no captions or aren't available.

YouTube transcript use cases {#use-cases}

  • Summarize videos with ChatGPT, Claude or Gemini — pull the transcript, drop it into an LLM, get the gist without watching.
  • AI training data & RAG — build clean text corpora and search-augmentation indexes from video content.
  • Content repurposing — turn videos into blog posts, newsletters, show notes, and social clips.
  • SEO & content audits — mine a channel's spoken keywords and topics at scale.
  • Research & note-taking — searchable text from lectures, talks, interviews, and podcasts.
  • Subtitles & localization — export SRT/VTT and translate captions into other languages.
  • Market & sentiment analysis — analyze what creators and competitors are actually saying.

How to download a YouTube transcript to text {#video-to-text}

Set Transcript format to Plain text and paste your Video URLs. Each result's transcriptText is the full transcript as one clean string — paste-ready for an LLM, a doc, or a database.

How to get transcripts for an entire YouTube channel {#channel}

Drop a channel URL or @handle into Channels and set Max videos. The scraper resolves the channel and pulls transcripts for its most recent uploads (paginating past the first page). Add several channels to batch them in one run.

How to extract transcripts from a YouTube playlist {#playlist}

Paste a youtube.com/playlist?list=… link into Playlists and set Max videos. Every video in the playlist is transcribed. Tip: a channel's "uploads" playlist (UU… id) is an easy way to walk a back-catalog.

How to translate YouTube subtitles into another language {#translate}

Set Transcript language to any ISO 639-1 code (es, hi, ja, fr, de, pt, …). If the video already has captions in that language we return them; otherwise YouTube auto-translates the transcript into it (156 languages). The wasTranslated field tells you which you got.

How to export YouTube captions as SRT or VTT {#srt-vtt}

Set Transcript format to SRT or VTT and each result includes a ready-to-use subtitle-file string in the srt / vtt field — drop it straight into a video editor or re-upload it as captions.

How to get YouTube transcripts for ChatGPT & AI agents {#ai}

Every result is structured JSON, so an AI agent can read it directly. Connect the actor over MCP (below) to pipe transcripts into Claude, ChatGPT, or your own agent, or schedule a channel and have each new video's transcript delivered automatically.

Output example {#output-example}

{
"videoId": "dQw4w9WgXcQ",
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"title": "Rick Astley - Never Gonna Give You Up (Official Video)",
"channelName": "Rick Astley",
"channelUsername": "RickAstleyYT",
"subscriberCount": 4510000,
"publishedAt": "2009-10-25",
"durationSeconds": 213,
"viewCount": 1600000000,
"likeCount": 19179747,
"commentCount": 2400000,
"language": "en",
"isAutoGenerated": false,
"wasTranslated": false,
"availableLanguages": ["en", "de", "ja", "pt-BR", "es-419"],
"transcript": [
{ "start": 18.64, "end": 21.88, "duration": 3.24, "text": "We're no strangers to love" }
],
"transcriptText": "We're no strangers to love …",
"thumbnail": "https://i.ytimg.com/vi/dQw4w9WgXcQ/hqdefault.jpg",
"status": "success"
}

How much does it cost? {#pricing}

$0.005 per transcript ($5 per 1,000) — and you're charged only when a transcript is actually returned. Videos with no captions, or that are private/removed/age-restricted, come back as a free failed row, so you never pay for an empty result. Unlike scrapers that bill every input video, you don't pay for the ones YouTube has no transcript for. No per-run or start fee.

Use with AI agents and MCP {#ai-mcp}

The actor speaks the Model Context Protocol, so Claude, ChatGPT, Cursor, and other agents can run it as a tool.

Push transcripts straight to Slack, Notion, or Sheets (no code) {#mcp-connectors}

Pick an authorized MCP connector in the input and every transcript is delivered to your app — Slack, Notion, Airtable, Google Sheets, and more. Your credentials stay in Apify; the actor never sees them. Schedule it on a channel and each new upload's transcript lands in your workspace automatically.

Integrate with n8n, Zapier, and Make {#integrations}

Trigger runs and pull results from any automation platform via Apify's API and webhooks — wire transcripts into your own pipelines, sheets, or AI workflows.

Support {#support}

Found a video that won't transcribe or want a new field? Open an issue from the actor's page — happy to help.

FAQ {#faq}

Do I need a YouTube or Google API key?

No. There's no API key, login, OAuth, or cookies — just paste links.

Does every YouTube video have a transcript?

Only videos that are playable and have at least one caption track (creator-uploaded or auto-generated). That's a YouTube limitation, not the scraper's — and you're never charged for a video we can't transcribe.

Can I download transcripts for a whole channel or playlist?

Yes. Paste a channel URL/@handle or a playlist link and set Max videos — the scraper pulls transcripts for the channel's recent uploads or every video in the playlist.

Can I get the transcript in another language?

Yes — set Transcript language to any of 156 ISO 639-1 codes. We use the native caption track if it exists, otherwise YouTube auto-translates it.

Can I export SRT or VTT subtitle files?

Yes. Set Transcript format to SRT or VTT and the result includes a ready-to-use subtitle-file string.

Does it work with YouTube Shorts and auto-generated captions?

Yes to both — Shorts links work, and automatic (ASR) captions are returned when no manual ones exist (isAutoGenerated marks which).

How many transcripts can I scrape?

There's no hard cap — paste as many video URLs as you like, or scale via channels and playlists.

Can I use it with ChatGPT, Claude, or AI agents?

Yes — output is structured JSON and the actor is MCP-compatible, so agents can call it directly or receive transcripts through a connector.

Which export formats are supported?

JSON, CSV, Excel, HTML table, RSS, and direct delivery to Slack/Notion/Sheets via MCP.

How am I charged?

Per transcript actually delivered. No-caption or unavailable videos are free.

Other Actors {#other-actors}