YouTube Transcript Scraper — Channels, Playlists & AI Chunks avatar

YouTube Transcript Scraper — Channels, Playlists & AI Chunks

Pricing

from $0.33 / 1,000 transcript delivereds

Go to Apify Store
YouTube Transcript Scraper — Channels, Playlists & AI Chunks

YouTube Transcript Scraper — Channels, Playlists & AI Chunks

Extract YouTube transcripts and subtitles in bulk from videos, Shorts, whole channels, playlists or search results. Plain text, timestamped segments, SRT/VTT and RAG-ready chunks with deep links. Pay only for transcripts delivered.

Pricing

from $0.33 / 1,000 transcript delivereds

Rating

0.0

(0)

Developer

Cleancut Data

Cleancut Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Security

Limited permissions

Share

YouTube Transcript Scraper — Channels, Playlists, Search & AI-ready Chunks

Extract YouTube transcripts and subtitles in bulk: single videos, Shorts, entire channels, playlists or search results. Get clean text, timestamped segments, SRT/WebVTT files and RAG-ready chunks with deep links to the exact second of the video.

You only pay for transcripts that are delivered. Videos without captions, private or unavailable videos are reported in the dataset for free.

What can it do?

  • 🎬 Any YouTube input — watch?v= URLs, youtu.be links, Shorts, live replays, embeds, plain video IDs, channels (@handle, /channel/UC…, /c/…, /user/…) and playlists.
  • 🔎 Search mode — type a keyword and transcribe the top N videos.
  • 📺 Whole channels — Videos, Shorts and/or Live tabs, with a per-source limit.
  • 🌍 Language control — preferred languages in order (es also matches es-419), caption type (human-made first, any, human-made only or automatic only), automatic fallback, and YouTube's built-in translation to any language.
  • 🧭 Free discovery mode — list every caption track and translation language of a video before paying for transcripts.
  • 🤖 AI-ready output — transcript chunks of N seconds, each with start time and a link like …watch?v=ID&t=125s. Drop them straight into embeddings, vector DBs or LLM prompts.
  • 📝 Formats — plain text, segments (start/duration/text), SRT and WebVTT.
  • 📊 Video details included, free — title, channel, duration, views, likes, publish date, upload date, category, description, keywords and thumbnail. No extra event, no extra charge.
  • 💸 Lightweight & cheap — HTTP-only (no browser), requests only the fields it needs.

Use cases

  • Feed LLMs / RAG pipelines with video knowledge (courses, podcasts, conferences).
  • Content repurposing: blog posts, newsletters, social clips from videos.
  • SEO & market research: what competitors and creators say about a topic.
  • Accessibility & subtitles: download SRT/VTT files in bulk.
  • Academic research and media monitoring.

Input example

{
"startUrls": [
"https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"https://www.youtube.com/@RickAstleyYT",
"https://www.youtube.com/playlist?list=PLlaN88a7y2_qHDbY9eQbuNTAuEJUSEeuu"
],
"searchQueries": ["how to make sourdough bread"],
"maxVideosPerSource": 20,
"languages": ["en", "es"],
"captionType": "preferManual",
"outputFormats": ["segments", "chunks"],
"chunkDurationSeconds": 60,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

Output example

{
"videoId": "dQw4w9WgXcQ",
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"status": "ok",
"title": "Rick Astley - Never Gonna Give You Up (Official Video) (4K Remaster)",
"channelName": "Rick Astley",
"channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",
"durationSeconds": 213,
"durationText": "3:33",
"viewCount": 1833568509,
"likeCount": 19491030,
"publishDate": "2009-10-24T23:57:33-07:00",
"uploadDate": "2009-10-24T23:57:33-07:00",
"category": "Music",
"language": "es-419",
"languageName": "Spanish (Latin America)",
"isAutoGenerated": false,
"isTranslated": false,
"availableLanguages": [{ "languageCode": "en", "name": "English", "isAutoGenerated": false, "isTranslatable": true }],
"segmentCount": 60,
"wordCount": 308,
"text": "Conocemos bien el amor Tú conoces las reglas, igual que yo…",
"segments": [{ "start": 18.64, "duration": 3.24, "text": "Conocemos bien el amor" }],
"chunks": [{
"index": 0, "start": 18.64, "end": 82.04, "startTime": "0:18",
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ&t=18s",
"text": "Conocemos bien el amor Tú conoces las reglas…", "wordCount": 52
}],
"source": { "type": "video", "input": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }
}

Output views

The Output tab (and the API, with ?view=) offers ready-made tables:

ViewWhat you get
OverviewOne row per video: thumbnail, title, channel, date, duration, views, language and the transcript
Timestamped segmentsOne row per caption line with start and duration
AI chunks (RAG)One row per chunk with a deep link to that second
Subtitles (SRT / WebVTT)Ready-to-save subtitle files
Video detailsChannel, dates, category, views, likes, keywords, thumbnail
Caption languagesOne row per caption track (discovery mode)
Errors (free)Why a video could not be transcribed

Every field is documented in the dataset schema (type, description and example), so AI agents and integrations know exactly what they get. A run summary is saved as SUMMARY in the key-value store.

Errors (free)

Videos that cannot be transcribed produce a free row with status: "error" and an errorCode:

errorCodeMeaning
TRANSCRIPTS_DISABLEDThe video has no captions at all
LANGUAGE_NOT_AVAILABLENone of your languages exists and fallback is off
CAPTION_TYPE_NOT_AVAILABLEYou asked for human-made only (or automatic only) and the video has none
VIDEO_UNAVAILABLE / VIDEO_UNPLAYABLEDeleted, private or region-locked video
AGE_RESTRICTEDRequires a signed-in account
BLOCKEDYouTube rejected the IP — use the RESIDENTIAL proxy group

Pricing

Pay per event — you only pay for transcripts delivered. Listing channels, playlists and search results is free, discovery mode is free, video details are free, and so are videos without captions or with errors.

Your Apify planPrice per 1,000 transcripts
Free$0.39
Starter (Bronze)$0.37
Scale (Silver)$0.35
Business (Gold) and above$0.33

Plus a start fee of $0.0005 per run (at the default 512 MB of memory). Example: transcribing a whole channel of 500 videos costs $0.17–$0.20. Set “Max transcripts in total” or the run's maximum cost to cap spending.

Tips

  • Proxy: the default is Apify RESIDENTIAL proxy, because YouTube blocks most data-center IPs. Each transcript transfers only ~30 KB, so the proxy cost is tiny.
  • Automatic vs human captions: isAutoGenerated: true means YouTube's speech recognition. Use Caption type to force human-made only or automatic only.
  • Not sure which languages a video has? Turn on “List caption languages only (free)” first: you get every caption track and the languages it can be translated to, without paying.
  • Translation uses YouTube's own machine translation, available only for tracks marked as translatable.
  • Integrations: run it from Make, Zapier, n8n, LangChain or the Apify API, and schedule it to transcribe new channel uploads daily.

FAQ

Does it use the official YouTube Data API? No. The official API only lets channel owners download their own captions. This Actor reads the same publicly available captions that the YouTube player shows.

Can it transcribe videos without captions? No. If a video has no captions (neither human nor automatic), it is reported as TRANSCRIPTS_DISABLED and not charged.

Is it legal? It extracts publicly available captions. You are responsible for how you use the content; respect copyright and YouTube's Terms of Service, and do not republish transcripts you don't have rights to.

Changelog

  • 0.2 — Cleaner input with sections, caption type selector, one “Extra formats” picker, free discovery mode, free likes, publish date, upload date and category, 7 output views and a fully documented output schema.
  • 0.1 — First release: videos, Shorts, channels, playlists, search, language preference & translation, SRT/VTT, AI chunks.

More from Cleancut Data

  • 🏨 Google Hotels Rate Shopper: what every booking site charges for your hotels and dates, with taxes, free cancellation and rate-parity gaps.
  • ✈️ Google Flights Cheapest Fares: the cheapest Google Flights fare per route and date, the cheapest day of the month and price-drop alerts.