X (Twitter) Transcript Extractor avatar

X (Twitter) Transcript Extractor

Pricing

from $10.00 / 1,000 results

Go to Apify Store
X (Twitter) Transcript Extractor

X (Twitter) Transcript Extractor

🐦 Convert any X (Twitter) video or recorded Space to text. Extract transcripts with timestamps. Outputs JSON, SRT, or plain text. Supports Spaces up to 1 hour. Speech-to-text powered. 14+ languages. No login needed.

Pricing

from $10.00 / 1,000 results

Rating

0.0

(0)

Developer

Zero Downtime

Zero Downtime

Maintained by Community

Actor stats

1

Bookmarked

66

Total users

13

Monthly active users

a day ago

Last modified

Share

Extract transcripts from any X (Twitter) video or recorded Space. Paste a URL, get back timestamped text -- ready for repurposing, analysis, or translation.

Works with any public video. No login required.

What it does

  1. You provide an X video or Space URL.
  2. The actor extracts the transcript.
  3. You get back structured text with timestamps -- in JSON, plain text, or SRT.

Key features

  • Multi-language -- see supported languages below.
  • 4 output formats -- JSON with timestamps, plain text, SRT subtitles, or WebVTT.
  • Video metadata -- title, author, duration, thumbnail, and upload date.
  • X Spaces -- transcribe recorded Spaces (up to 1 hour).
  • Fast on repeat lookups -- recently extracted videos return from cache in milliseconds.
  • No login required.

Supported languages

CodeLanguage
enEnglish
esSpanish
frFrench
deGerman
ptPortuguese
itItalian
nlDutch
jaJapanese
koKorean
zhChinese
arArabic
ruRussian
trTurkish
hiHindi

Input

FieldTypeDefaultDescription
urlstring(required)X (Twitter) video or Space URL
languagestring"auto"Preferred language (ISO 639-1) or "auto"
formatstring"json""json", "text", "srt", or "vtt"

Supported URLs

https://x.com/user/status/1234567890
https://twitter.com/user/status/1234567890
https://x.com/i/spaces/1eaKbNZvYQbKX

Output example

When format is json, the dataset row looks like this:

{
"url": "https://www.twitter.com/...",
"platform": "twitter",
"video_id": "...",
"source": "live",
"metadata": {
"title": "...",
"duration_sec": 120,
"extracted_via": "..."
},
"transcript": {
"language": "en",
"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.

source indicates freshness: live (fresh pipeline run), warm (recent cache hit), cold (older cache rehydrate).

When extraction fails, you get a clear error in the dataset:

{
"error": "NotAvailable",
"message": "No transcript available for this video."
}

Error codes

CodeMeaning
InvalidURLNot a valid Twitter URL
UnsupportedPlatformURL host is not a supported platform
NotAvailableVideo is private, removed, or has no extractable transcript
RateLimitedToo many requests -- retry after a short delay
TIMEOUTExtraction took longer than the actor's poll budget
INTERNAL_ERRORUnexpected error during extraction

Use cases

  • Content repurposing -- turn X videos and Spaces into blog posts, newsletters, or social media captions.
  • Accessibility -- generate subtitles for videos that don't have them.
  • Research & analysis -- analyze what creators, journalists, and brands are saying.
  • Podcast transcription -- transcribe recorded X Spaces for archival or distribution.
  • Translation -- get text for translating X content into other languages.
  • 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 an X account? No. Works with any public video or recorded Space, no login needed. NSFW-gated content returns an AUTHENTICATION_REQUIRED error.

Does it work with X Spaces? Yes. Recorded Spaces (up to 1 hour) are supported. Use the Space URL format: https://x.com/i/spaces/[spaceId].

Which languages work? See the supported languages table above.

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? The actor runs on the Apify platform. Cost depends on video length and processing needed.