YouTube Transcript Scraper: Subtitles to Text, SRT & API avatar

YouTube Transcript Scraper: Subtitles to Text, SRT & API

Pricing

from $1.60 / 1,000 transcripts

Go to Apify Store
YouTube Transcript Scraper: Subtitles to Text, SRT & API

YouTube Transcript Scraper: Subtitles to Text, SRT & API

Get YouTube transcripts and subtitles of videos, Shorts, whole channels and playlists: plain text, timestamped segments, SRT or VTT, any caption language, manual or auto-generated. Search words inside transcripts with links to the moment. Only-new mode for new uploads. No API key.

Pricing

from $1.60 / 1,000 transcripts

Rating

0.0

(0)

Developer

Superior Actors

Superior Actors

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

20 hours ago

Last modified

Share

YouTube Transcript Scraper: Subtitles to Text, SRT & API

Get the transcript of any YouTube video, Short, whole channel or playlist: plain text, timestamped segments, SRT or VTT subtitles, in any caption language the video has, manual or auto-generated. Search words inside transcripts and get a link to the exact second, or schedule Only new videos to get the transcripts of new uploads.

{ "videos": ["https://www.youtube.com/watch?v=rfscVS0vtbw"], "languages": ["en"] }

No YouTube API key, no quota, no browser extension, no login. Use it as a YouTube transcript API: one call returns clean JSON.

What you get

One row per video. Real example, September 2026:

titlechannelNamelanguagewordCounttext
Learn Python - Full Course for BeginnersfreeCodeCamp.orgEnglish50,862In this course, I'm going to teach you everything you need to know to get started programming in Python...
iPhone 18 Pro Review: All About that ChipMarques BrownleeEnglish (auto-generated)3,343...
Never Gonna Give You Up (4K Remaster)Rick AstleyEnglish487[♪♪♪] ♪ We're no strangers to love ♪ ...
FieldDescription
textThe whole transcript as plain text
segments[{start, duration, text}] in seconds, one per caption line
timestampedText[1:23] text on every line (option)
srt, vttSubtitle files as text, with no overlapping lines (options)
language, languageCode, isAutoGeneratedThe caption track used, e.g. English (auto-generated), en, true
availableLanguagesEvery caption track of the video: code, name, auto-generated or not
wordCount, characterCount, segmentCountSize of the transcript
matches, matchCountWith Search words: {word, timestamp, text, url}, the url opens the video at that second
title, channelName, channelId, durationSeconds, views, videoUrlThe video
description, keywordsDescription and tags (option)
transcriptAvailable, errorWhy there is no transcript: no captions, not in your languages, video unavailable. These rows are free

How it works

  1. Add videos, Shorts, channels or playlists: youtube.com/watch?v=..., youtu.be/..., /shorts/..., video IDs, youtube.com/@handle, /channel/UC... or ?list=...
  2. Set Transcript languages in order of preference: en, es, de...
  3. Pick the output formats: segments, text with timestamps, SRT, VTT
  4. Run, then download as JSON, CSV or Excel, or call it as an API
InputWhat it does
Videos per channel or playlistA channel gives its latest uploads, a playlist its videos (default 10)
Transcript languagesFirst language the video has; en also matches en-GB
Otherwise use the original languageNo preferred language: the transcript in the spoken language instead of nothing
Auto-generated captionsUse when there are no manual captions (default), prefer them, or never
Search words in transcriptsTimestamped links to every mention; Only videos that mention the words skips the rest for free
Only new videosMonitoring: each scheduled run returns only videos not seen before

Why this Actor

📺 Channels and playlistsA whole channel or course in one run, one row per video
🔍 Search inside transcriptsWhere a word is said, with a link to the second: brand mentions, quotes, topics
🎞️ All formats at onceText, segments, timestamped text, SRT and VTT in the same row
🌍 Language controlYour language order, manual or auto-generated, and the list of all tracks
🔔 Only new videosTranscripts of new uploads on a schedule, for summaries and research feeds
💰 $2 per 1,000 transcriptsVideos without captions are free; the popular transcript Actors charge $5-10 per 1,000

Only new videos: transcripts of new uploads

  1. Add channels or playlists, switch on Only new videos, give the task a Monitor name
  2. Save as a task and add a schedule, e.g. every morning
  3. First run returns the latest videos (up to Videos per channel or playlist) and remembers them. Every later run returns only videos it has not seen. An empty result means no new uploads

Send the new transcripts to Slack, email, Google Sheets or an AI summary with an integration.

Pricing

Pay per result, no subscription needed. Apify Scale and Business plans pay less:

EventFree and Starter plansScale planBusiness plan
Run start$0.001$0.001$0.001
Transcript (one video, all formats you chose)$0.002$0.0018$0.0016
TaskCost
1 video$0.003
The 50 latest videos of a channel~$0.10
New videos of 5 channels, daily for a month (~1 new video a day each)~$0.33 per month

Videos without captions, unavailable videos and videos skipped by Only videos that mention the words are not charged.

Ready-made tasks

Open one, change the videos, channels or playlists, and run:

TaskWhat you get
Download YouTube Transcript as TextFull transcript of one video
YouTube Transcript with Timestamps: [1:23] Text per LineA timestamp on every line
YouTube Channel Transcripts in Bulk: Latest VideosA channel's latest videos

FAQ

Does it work for videos without subtitles? It uses YouTube's captions: the creator's or the auto-generated ones, which most spoken videos have. A video with no captions at all (music without words, some live streams) gets a free row with error. It does not transcribe audio itself.

Can it translate a transcript? No. YouTube blocks its machine translation for automated requests, so the Actor returns the languages the video really has (availableLanguages). Translate the text with your own tool or an LLM.

Are auto-generated transcripts accurate? They are YouTube's speech recognition: good for search, summaries and AI, without punctuation and with some misheard words. Choose Auto-generated captions: Never to get only creator-written captions.

Why does it need a proxy? YouTube asks many server IPs to sign in before it shows captions. The Actor takes a fresh Apify datacenter IP for each attempt and, if needed, a residential one; the proxy cost is included in the price.

Very long videos? Yes: a 4.5-hour course gives about 50,000 words in one row.

Use with the API and AI agents

Run it via the Apify API from Python, Node.js or any HTTP client, or connect it to Claude, ChatGPT and other AI agents through the Apify MCP server: "Get the transcripts of the last 5 videos of @mkbhd and summarize what he says about battery life."

Other YouTube tools

ToolWhat it does
YouTube Comments ScraperComments and replies of videos, Shorts and channels, only-new monitoring
YouTube SEO & Rank TrackerSearches a video ranks for, keyword rankings, tags, suggestions
Google Sheets Import & ExportSend the results to a Google Sheet

The Actor reads only public captions that YouTube shows to any visitor, without logging in, and does not download video or audio. Transcripts are the creators' content: use them for research, accessibility, search and analysis, and respect copyright when you republish them.