YouTube Transcript Extractor
Pricing
from $10.00 / 1,000 results
YouTube Transcript Extractor
🎬 Convert any YouTube video to text. Extract transcripts, subtitles, and captions from videos, Shorts, and live streams. Get timestamped segments or full text in JSON, SRT, or plain text. Auto-captions speech-to-text fallback. 14+ languages. No login needed.
Pricing
from $10.00 / 1,000 results
Rating
5.0
(1)
Developer
Zero Downtime
Maintained by CommunityActor stats
0
Bookmarked
49
Total users
5
Monthly active users
7 days ago
Last modified
Categories
Share
Extract transcripts from any YouTube video, Short, or live stream. Paste a URL, get back timestamped text -- ready for repurposing, analysis, or translation.
Works with any public video. No login required.
What it does
- You provide a YouTube video URL.
- The actor extracts the transcript.
- You get back structured text with timestamps -- in JSON, plain text, SRT, or VTT.
Key features
- Multi-language -- supports any language YouTube provides captions for. See supported languages for speech-to-text fallback.
- 4 output formats -- JSON with timestamps, plain text, SRT subtitles, or WebVTT.
- Timestamped segments -- every line with precise start/end times, plus video duration and full text.
- Shorts & live streams -- works with standard videos, Shorts, and completed live streams.
- Fast on repeat lookups -- recently extracted videos return from cache in milliseconds.
- No login required.
Supported languages
When captions are available, the actor supports any language YouTube provides. When captions aren't available, the speech-to-text fallback supports:
| Code | Language |
|---|---|
en | English |
es | Spanish |
fr | French |
de | German |
pt | Portuguese |
it | Italian |
nl | Dutch |
ja | Japanese |
ko | Korean |
zh | Chinese |
ar | Arabic |
ru | Russian |
tr | Turkish |
hi | Hindi |
Input
| Field | Type | Default | Description |
|---|---|---|---|
url | string | (required) | YouTube video URL |
language | string | "en" | Preferred language (ISO 639-1) |
format | string | "json" | "json", "text", "srt", or "vtt" |
Supported URLs
https://www.youtube.com/watch?v=VIDEO_IDhttps://youtu.be/VIDEO_IDhttps://www.youtube.com/shorts/VIDEO_IDhttps://www.youtube.com/live/VIDEO_IDhttps://m.youtube.com/watch?v=VIDEO_ID
Output example
When format is json, the dataset row looks like this:
{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","platform": "youtube","language": "en","duration_sec": 213,"segments": [{ "start": 0.0, "end": 3.5, "text": "We're no strangers to love" },{ "start": 3.5, "end": 7.2, "text": "You know the rules and so do I" }],"full_text": "We're no strangers to love You know the rules and so do I ..."}
When format is text, srt, or vtt, the formatted transcript is written to the actor's key-value store under the OUTPUT key.
When extraction fails, you get a clear error in the dataset:
{"error": "NOT_FOUND","message": "No transcript available for this video."}
Error codes
| Code | Meaning |
|---|---|
INVALID_FORMAT | format was not one of json/text/srt/vtt |
BAD_REQUEST | The URL was malformed or not a supported video URL |
NOT_FOUND | The video is private, removed, or has no extractable transcript |
RATE_LIMITED | Too many requests -- retry after a short delay |
TIMEOUT | Extraction took longer than the actor's poll budget |
INTERNAL_ERROR | Unexpected error during extraction |
Use cases
- Content repurposing -- turn YouTube videos into blog posts, articles, or social media content.
- Accessibility -- generate transcripts for hearing-impaired audiences.
- Research & analysis -- build datasets of video content for market research.
- SEO -- extract text content from videos for search engine optimization.
- Translation -- get transcripts as a starting point for multilingual subtitles.
- Education -- create study materials from lecture videos.
Integrations
Use this actor with the Apify API or connect it to your workflow:
- Python --
apify_client.actor("your-actor-id").call(run_input={"url": "..."}) - JavaScript --
await client.actor("your-actor-id").call({url: "..."}) - Zapier / Make / n8n -- trigger on new videos and get transcripts automatically.
- Webhooks -- get notified when a transcript is ready.
FAQ
Does this need a YouTube account? No. Works with any public video, no login needed.
What if a video has no subtitles? The actor will still extract a transcript using speech-to-text.
Does it work with YouTube Shorts?
Yes. Shorts URLs (youtube.com/shorts/VIDEO_ID) are fully supported.
Does it work with live streams? Yes, for completed live streams with replay available.
Which languages work? Any language YouTube provides captions for. See the supported languages table for speech-to-text fallback.
Can I process multiple videos? Yes. Call the actor via the Apify API or use integrations (Zapier, Make, n8n) to process videos in a loop.
What does it cost? Pricing is per transcribed minute (1 minute = 1 charge unit, minimum 1), so you pay only for the audio actually processed — and failed extractions cost nothing. The exact per-minute price is shown on this actor's Apify Store page.