Facebook Transcript Extractor
Under maintenancePricing
from $10.00 / 1,000 results
Facebook Transcript Extractor
Under maintenance๐ Convert any Facebook video to text. Extract transcripts, subtitles, and captions with timestamps. Outputs JSON, SRT, or plain text. Works with fb.watch links and mobile URLs. Auto-captions + speech-to-text fallback. 14+ languages. No login needed.
Pricing
from $10.00 / 1,000 results
Rating
0.0
(0)
Developer
Scriptbase
Maintained by CommunityActor stats
0
Bookmarked
107
Total users
1
Monthly active users
a month ago
Last modified
Categories
Share
Extract transcripts from any Facebook video. 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 Facebook 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 Facebook 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.
- All URL formats -- standard, mobile, watch, and fb.watch links all work.
- 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 Facebook 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) | Facebook video URL |
language | string | "en" | Preferred language (ISO 639-1) |
format | string | "json" | "json", "text", "srt", or "vtt" |
Supported URLs
https://www.facebook.com/watch/?v=1234567890https://www.facebook.com/username/videos/1234567890https://fb.watch/abc123/https://m.facebook.com/watch/?v=1234567890
Output example
When format is json, the dataset row looks like this:
{"url": "https://www.facebook.com/watch/?v=10153231379946729","platform": "facebook","language": "en","duration_sec": 120,"segments": [{ "start": 0.0, "end": 3.5, "text": "..." },{ "start": 3.5, "end": 7.2, "text": "..." }],"full_text": "..."}
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 rejected by the transcript operation |
UNSUPPORTED_PLATFORM | No transcript operation serves this URL's platform |
UNAUTHORIZED | The actor's ScriptBase key is missing, invalid, or revoked |
INSUFFICIENT_CREDITS | The ScriptBase account behind this actor is out of credits |
NOT_FOUND | The video is private, removed, or has no extractable transcript |
UPSTREAM_FAILED | Every transcript source failed -- retry shortly |
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 Facebook videos into blog posts, articles, or social media content.
- Accessibility -- generate transcripts for hearing-impaired audiences.
- Market research -- analyze what creators and brands are saying at scale.
- SEO -- extract text content from videos for search engine optimization.
- Translation -- get transcripts as a starting point for multilingual subtitles.
- Dataset building -- collect transcripts for training, analysis, or archival.
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 Facebook 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.
Which languages work? Any language Facebook 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.