YouTube Transcript Scraper – Subtitles, Captions, Playlists
Pricing
$3.00 / 1,000 transcript scrapeds
YouTube Transcript Scraper – Subtitles, Captions, Playlists
Bulk-extract YouTube transcripts (manual or auto captions) with timestamps as text, SRT, VTT or JSON – original language or auto-translated. Videos, Shorts & playlists; includes title, channel, duration, views, publish date. $2 per 1,000 videos.
Pricing
$3.00 / 1,000 transcript scrapeds
Rating
0.0
(0)
Developer
PulseData
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 minutes ago
Last modified
Categories
Share
YouTube Transcript Scraper – Subtitles, Captions & Playlists in Bulk
Extract the transcript of any YouTube video – manually created subtitles or auto-generated captions – with timestamps, as plain text, SRT, WebVTT or JSON segments. Feed video URLs, Shorts, bare video IDs or whole playlists, choose your preferred languages or let YouTube auto-translate the transcript into any language, and get video metadata (title, channel, duration, views, publish date, keywords) in the same item.
Reliable and cheap: $3 per 1,000 videos, no YouTube API key, no quotas.
Output
{"videoId": "aircAruvnKk","url": "https://www.youtube.com/watch?v=aircAruvnKk","title": "But what is a neural network? | Deep learning chapter 1","channelName": "3Blue1Brown", "channelId": "UCYO_jab_esuFRV4b17AJtAw","durationSeconds": 1104, "viewCount": 18923411, "publishDate": "2017-10-05","language": "en", "languageName": "English", "isAutoGenerated": false, "translatedTo": null,"availableLanguages": [ { "language": "en", "name": "English", "autoGenerated": false, "translatable": true }, { "language": "de", "name": "German", "autoGenerated": false } ],"segmentCount": 304, "wordCount": 3120,"text": "Here is a 28 by 28 pixel image …","segments": [ { "start": 4.2, "duration": 3.1, "text": "Here is a 28 by 28 pixel image" }, … ],"srt": "1\n00:00:04,200 --> 00:00:07,300\nHere is a …"}
Videos without captions or with a playability problem (private, age-restricted, removed) are returned with an error field (NO_CAPTIONS, NO_MATCHING_LANGUAGE, LOGIN_REQUIRED, …) and are not charged.
Input
| Field | Description |
|---|---|
videoUrls | Video URLs, Shorts, youtu.be links, embed URLs, bare IDs or playlist URLs (…/playlist?list=…). |
languages | Preferred language codes in order (en, de, es, …). Manual captions are preferred over auto-generated ones. |
fallbackToAnyLanguage | If no preferred language exists, use the first available track (default on). |
translateTo | Let YouTube translate the transcript into this language (e.g. en). |
outputFormats | text, segments, srt, vtt – pick any combination. |
includeMetadata | Title, description, channel, duration, views, publish date, keywords, thumbnail, category. |
maxVideosPerPlaylist | Cap when expanding playlists. |
concurrency | Parallel videos (default 5). |
proxyConfiguration | Optional. The actor runs without proxies and automatically switches to Apify residential proxy only for videos where YouTube asks for a sign-in. |
Use cases
- AI / LLM pipelines – summarize, translate, answer questions over video content, build RAG knowledge bases from channels and playlists.
- Content repurposing – turn videos into blog posts, newsletters, social posts, show notes.
- Research & monitoring – keyword search across transcripts, sentiment, competitor content analysis.
- Accessibility & localization – SRT/VTT subtitle files in the original or translated language.
Pricing
$0.003 per transcript returned. Videos without transcript are free.
Integrations
Run on schedule or via API/SDK; export JSON, CSV, Excel; connect to Google Sheets, Make, Zapier, n8n, LangChain, LlamaIndex; use as an MCP tool from Claude, Cursor or ChatGPT.