YouTube Transcript Scraper
Pricing
from $2.00 / 1,000 transcripts
YouTube Transcript Scraper
Transcripts from YouTube videos, Shorts, whole channels and playlists, with timestamps, SRT/VTT and AI-ready chunks. Watch channels for new videos on a schedule. Pay only for transcripts delivered.
Pricing
from $2.00 / 1,000 transcripts
Rating
0.0
(0)
Developer
Lean Pilar
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
YouTube Transcript Scraper: videos, Shorts, channels and playlists
Get YouTube transcripts as clean JSON, plain text, SRT or WebVTT subtitles, or AI-ready chunks with timestamp links. Paste video links, whole channels or playlists, pick your languages, and schedule it to pick up new uploads automatically. You only pay for transcripts that are delivered.
What you get
For every video:
| Field | What it contains |
|---|---|
text | The whole transcript as one string |
segments | Each caption line with start and duration in seconds |
srt, vtt | Ready-to-use subtitle files |
chunks | Passages of up to ~1,500 characters, each with its start time and a link that opens the video at that moment. Made for ChatGPT, Claude, RAG and search tools |
language, isAutoGenerated | Which transcript you got, and whether YouTube generated it |
availableLanguages | Every transcript language the video has |
| Video details | Title, channel, duration, views, description, keywords, thumbnail (free) |
Why this scraper
- Pay per transcript, not per row. Videos without captions, private or removed videos, and failed requests are listed with a clear reason and never charged.
- Whole channels and playlists. Paste
@handle, a channel link or a playlist link. Choose videos, Shorts and live streams, and how many of the newest to take. - Watch channels for new videos. Turn on Only new videos and schedule the actor daily. Each run returns only transcripts of uploads it has not delivered before, so you can feed a newsletter, a research database or an AI agent without duplicates.
- The right language. List your languages in order. Human-made captions are preferred over auto-generated ones, and if none match you get the language the video is spoken in (or skip it, free, if you prefer). Or get every language at once.
- Reliable. In our tests, 180 of 180 videos from 12 channels resolved without a single block, using residential proxies that are included in the price.
- Every URL format. watch links, youtu.be, Shorts, live, embed, mobile links and bare IDs.
Pricing
| Event | Price |
|---|---|
| Transcript (one delivered transcript) | $2.00 per 1,000 ($0.002 each) |
Proxy and platform usage are included. Records with status noTranscript, unavailable,
noVideos or error are free. Example: the newest 50 videos from 20 channels = 1,000
transcripts = $2.00.
Input example
{"urls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ","@veritasium","https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab"],"languages": ["en"],"outputFormats": ["text", "segments", "chunks"],"maxVideosPerSource": 20}
Monitor channels for new uploads
{"urls": ["@veritasium", "@kurzgesagt"],"onlyNewVideos": true,"monitorName": "science-channels","maxVideosPerSource": 10}
Schedule this daily in Apify Console (Schedules). The first run delivers the 10 newest
videos per channel; later runs deliver only new ones. Use a different monitorName for
each schedule.
Output example
{"status": "ok","videoId": "dQw4w9WgXcQ","url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","title": "Rick Astley - Never Gonna Give You Up (Official Video) (4K Remaster)","channelName": "Rick Astley","durationSeconds": 213,"language": "en","languageName": "English","isAutoGenerated": false,"availableLanguages": [{"code": "en", "name": "English", "autoGenerated": false}],"wordCount": 487,"text": "We're no strangers to love You know the rules and so do I ...","segments": [{"start": 18.64, "duration": 3.24, "text": "We're no strangers to love"}],"chunks": [{"index": 0, "start": 18.64, "end": 95.2, "text": "We're no strangers to love ...","url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ&t=18s"}]}
Status values
| Status | Meaning | Charged |
|---|---|---|
ok | Transcript delivered | Yes |
noTranscript | The video has no captions, or none in your languages (see availableLanguages) | No |
unavailable | Private, removed, age-restricted or members-only video | No |
noVideos | The channel or playlist has no videos in the selected tabs | No |
error | Bad input or YouTube kept blocking after several retries. Try again later | No |
Good to know
- Transcripts come from YouTube's own captions. Videos without captions cannot be transcribed by this actor (very fresh uploads often get auto-captions within hours).
- Translation into other languages is not offered: YouTube blocks automated access to its translate feature. You get every language the creator uploaded plus the auto-generated one.
- Use the transcripts in line with YouTube's terms and copyright law.
Other tools by the same author
- Google Trends Scraper: interest over time, regions, related queries and trending searches.