Video Transcriber: Instagram, X, Facebook & TikTok to Text avatar

Video Transcriber: Instagram, X, Facebook & TikTok to Text

Pricing

from $1.50 / 1,000 video processeds

Go to Apify Store
Video Transcriber: Instagram, X, Facebook & TikTok to Text

Video Transcriber: Instagram, X, Facebook & TikTok to Text

Transcribe Instagram, X (Twitter), Facebook and TikTok videos to text with timestamps, SRT and language, plus author and engagement data. Export CSV, Excel, JSON, XML.

Pricing

from $1.50 / 1,000 video processeds

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Apify Partner

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

ParseForge Banner

🎙️ Video Transcriber Scraper

🚀 Export video transcripts in seconds. Paste Instagram, X (Twitter), Facebook and TikTok links, mixed in one list, and get the spoken words of every video as clean text, timestamped segments and a ready SRT subtitle file, next to 28 columns of author and engagement data. 5 videos from 4 platforms took 11 seconds in our verification run.

This Actor opens each public video the way a logged out visitor does, takes only its audio track (not the whole video file), and runs speech-to-text on it. You get the transcript as one plain text, the same text split into phrases with start and end seconds, an SRT file you can drop into any video editor, and the detected language. When TikTok or X already publish a caption track for a video, the Actor can use it instead, at no speech-to-text cost.

Every row also carries the context you need to rank what was said: caption, publish date, duration, author and verification, plus likes and comments on all four platforms, views on TikTok and Facebook, and shares on TikTok and Facebook reels. Speech-to-text understands 100+ languages and transcribes them as spoken.

🎯 Target Audience💡 Primary Use Cases
Content marketers and social media managersTurn top performing reels and clips into posts, newsletters and scripts
AI and data teamsFeed clean, timestamped speech into LLM, RAG and search pipelines
Agencies and creatorsBuild swipe files of hooks and scripts across four platforms
Brand and trend analystsHear what creators actually say about a product, not just what they caption
Video editorsGet an SRT subtitle file for any public clip in one step
Researchers and journalistsArchive and quote spoken content from public posts

📋 What the Video Transcriber does

  1. Accepts public video links, one per line, platforms mixed: Instagram reels and posts, X posts, Facebook reels, videos and watch links, TikTok videos and vm.tiktok.com share links. Duplicates are processed once.
  2. Loads each post and reads the video, author and engagement data the platform shows to any visitor.
  3. Downloads only the audio track of the video (a 2.5 minute reel is about 1 MB), which keeps runs fast.
  4. Transcribes the speech with AI and returns the transcript, timestamped segments, an SRT file and the detected language. With the default mode, a caption track published by TikTok or the creator on X is used first, for free.
  5. Emits one row per video, and one free error row for every link that is deleted, private, photo only or not a video.

💡 Why it matters: most transcript tools either cover one platform or only read captions, and social videos rarely have captions. This Actor listens to the audio, so every video with speech gets a transcript, and the transcriptSource column tells you which engine produced each one.

🎬 Full Demo (🚧 Coming soon)

📊 Output

Each dataset row is one video. 28 columns per row.

FieldTypeDescription
🖼 imageUrlstringVideo thumbnail
📝 titlestringThe post text or caption
🔗 urlstringCanonical video URL
📱 platformstringInstagram, X, Facebook or TikTok
🆔 idstringPlatform video or post ID
🗣 transcriptstringFull spoken transcript as one clean text, or N/A when the video has no speech
🎙 transcriptSourcestringAI speech-to-text, Creator captions, Platform auto-captions or None
🌐 transcriptLanguagestringSpoken language (ISO 639-1, for example en, es)
🔢 transcriptWordCountnumberWords in the transcript
ℹ️ transcriptNotestringWhy a transcript is missing, when it is (No speech detected, video over your length limit...)
⏱ durationSecondsnumberVideo length
📅 publishedAtstringPublish date and time (ISO 8601)
👤 authorUsernamestringAuthor handle
🪪 authorNamestringAuthor display name
🔗 authorUrlstringAuthor profile URL
✅ authorVerifiedstringYes, No or Not Disclosed
👁 viewsnumberView count (TikTok, Facebook)
❤️ likesnumberLikes or reactions
💭 commentsnumberComment or reply count
🔁 sharesnumberShare count (TikTok, Facebook reels)
#️⃣ hashtagsarrayHashtags in the post
🎞 videoIndexnumberPosition of the video inside a post with several videos
🎞 videoCountnumberVideos in that post
⏲ segmentsarrayPhrases with start, end (seconds) and text
💬 srtstringThe transcript as an SRT subtitle file
📥 inputUrlstringThe link you supplied
🕒 scrapedAtstringWhen the row was collected
❌ errorstringPopulated only on failed rows

Values a platform does not publish to logged out visitors come back as Not Disclosed (for example Instagram and X view counts), never as an empty cell.

Real sample records

Three rows from a verification run, one per platform. segments and srt are shortened here to the first phrases.

{
"imageUrl": "https://scontent-iad3-1.cdninstagram.com/v/t51.82787-15/523950930_18382602892192930_7056202034204658927_n.jpg?stp=dst-jpg_e15_tt6&_nc_cat=104&ig_cache_key=MzY4MzgyNzUwODE4NTcwMzcxNQ%3D%3D.3-ccb7-5&ccb=7-5&_nc_sid=58cdad&efg=eyJ2ZW5jb2RlX3RhZyI6IkNMSVBTLnhwaWRzLjEwODAuc2RyLnZpZGVvX2RlZmF1bHRfY292ZXJfZnJhbWUuQzMifQ%3D%3D&_nc_ohc=682nSNChvRgQ7kNvwENpgB6&_nc_oc=Adruqsnez7P3TkRmKXokNnD_DVANCfOUZeuVWmMQgczXhlLjInULii55P-naymnD0_k&_nc_zt=23&_nc_ht=scontent-iad3-1.cdninstagram.com&_nc_gid=X6jg-tGmfZPCcZXpV-cxOQ&_nc_ss=70689&oh=00_AQI3_Ie8O2VrPuhGJY6Cmu0aPUlSI2zbhBqex5ltCUAXNg&oe=6ABB812A",
"title": "An \"intermediate-sized\" black hole is tricky to detect. Somewhere between small and supermassive black holes, this type is hard to find because they don't shine unless they're caught in the act of eating a nearby star! Hubble and @nasachandraxray teamed up to study one of these rare events. Learn more in this video and at the link in our bio! #NASA #Hubble #Chandra #BlackHole #science #news #astronomy #telescope #universe #cosmos",
"url": "https://www.instagram.com/reel/DMflZnXOKUj/",
"platform": "Instagram",
"id": "DMflZnXOKUj",
"transcript": "Just a few years after its launch in 1990, NASA's Hubble Space Telescope made a groundbreaking discovery. Nearly every galaxy in the universe appears to have a supermassive black hole at its center. Some are millions or even billions of times more massive than our sun. [...] This discovery shows the importance of different telescopes looking at the universe in different types of light.",
"transcriptSource": "AI speech-to-text",
"transcriptLanguage": "en",
"transcriptWordCount": 291,
"transcriptNote": "N/A",
"durationSeconds": 152,
"publishedAt": "2025-07-24T14:16:39.000Z",
"authorUsername": "nasahubble",
"authorName": "Hubble Space Telescope",
"authorUrl": "https://www.instagram.com/nasahubble/",
"authorVerified": "Yes",
"views": "Not Disclosed",
"likes": 11273,
"comments": 46,
"shares": "Not Disclosed",
"hashtags": ["NASA", "Hubble", "Chandra", "BlackHole", "science", "news", "astronomy", "telescope", "universe", "cosmos"],
"videoIndex": 1,
"videoCount": 1,
"segments": [
{ "start": 0.65, "end": 5.77, "text": "Just a few years after its launch in 1990," },
{ "start": 5.9, "end": 8.57, "text": "NASA's Hubble Space Telescope" },
{ "start": 8.57, "end": 10.59, "text": "made a groundbreaking discovery." }
],
"srt": "1\n00:00:00,650 --> 00:00:05,770\nJust a few years after its launch in 1990,\n\n2\n00:00:05,900 --> 00:00:08,570\nNASA's Hubble Space Telescope",
"inputUrl": "https://www.instagram.com/reel/DMflZnXOKUj/",
"scrapedAt": "2026-09-24T21:34:05.984Z",
"error": null
}
{
"imageUrl": "https://pbs.twimg.com/amplify_video_thumb/2042756826111053826/img/yNDBDC9D_d3mBDF-.jpg",
"title": "Welcome home Reid, Victor, Christina, and Jeremy! 🫶 The Artemis II astronauts have splashed down at 8:07pm ET (0007 UTC April 11), bringing their historic 10-day mission around the Moon to an end. https://t.co/1yjAgHEOYl",
"url": "https://x.com/NASA/status/2042756933686337713",
"platform": "X",
"id": "2042756933686337713",
"transcript": "Houston, Integrity splashdown, sending post landing command now. Splashdown confirmed. Copy splashdown, waiting on VLDR. Splashdown confirmed at 7:07 p.m. Central time, 5:07 p.m. Pacific time. From the pages of Jules Verne to a modern day mission to the moon, a new chapter of the exploration of our celestial neighbor is complete. Integrity's astronauts, back on earth.",
"transcriptSource": "AI speech-to-text",
"transcriptLanguage": "en",
"transcriptWordCount": 57,
"transcriptNote": "N/A",
"durationSeconds": 32,
"publishedAt": "2026-04-11T00:09:40.000Z",
"authorUsername": "NASA",
"authorName": "NASA",
"authorUrl": "https://x.com/NASA",
"authorVerified": "Yes",
"views": "Not Disclosed",
"likes": 383271,
"comments": 6640,
"shares": "Not Disclosed",
"hashtags": [],
"videoIndex": 1,
"videoCount": 1,
"segments": [
{ "start": 5.11, "end": 8.01, "text": "Houston, Integrity splashdown, sending post landing command now." },
{ "start": 8.57, "end": 9.91, "text": "Splashdown confirmed." },
{ "start": 10.51, "end": 12.3, "text": "Copy splashdown, waiting on VLDR." }
],
"srt": "1\n00:00:05,110 --> 00:00:08,010\nHouston, Integrity splashdown, sending post landing command now.\n\n2\n00:00:08,570 --> 00:00:09,910\nSplashdown confirmed.",
"inputUrl": "https://x.com/NASA/status/2042756933686337713",
"scrapedAt": "2026-09-24T21:34:01.568Z",
"error": null
}
{
"imageUrl": "https://scontent-iad6-1.xx.fbcdn.net/v/t15.5256-10/490455794_9818802761492294_4254408151381799631_n.jpg?stp=dst-jpg_tt6&cstp=mx720x405&ctp=s720x405&_nc_cat=106&ccb=1-7&_nc_sid=be8305&_nc_ohc=4SkwDGnNH4QQ7kNvwH3adM0&_nc_oc=Ado2jlLvp8kNpM7VWYa5CDe3NOWG8XrVmxLMVkm_GbyFj2nm6CQBJqevGlSfjKhjjvI&_nc_zt=23&_nc_ht=scontent-iad6-1.xx&_nc_gid=bSR0qpb0DKmCHzaksD0dMA&_nc_ss=70180&oh=00_AQKNC9luxlQN981dygn1m4rdIdE90NsP-uaxVdXB65UQog&oe=6ABB7D5B",
"title": "He came. He saw. He took great pictures. Now, it’s time for him to come home. Watch live as NASA astronaut Don Pettit and two cosmonauts depart the International Space Station aboard the Soyuz...",
"url": "https://www.facebook.com/NASA/videos/696829239355289/",
"platform": "Facebook",
"id": "696829239355289",
"transcript": "I come alive when I'm in orbit. And it's like my being should be in space. Some people are born to be cowboys and ride a horse. I'm born to ride a rocket and be in space. There's NASA Astronaut Don Pettit flying in to the International Space Station. [...] So the the photographs help complete the story of what it means for human beings to expand into space and uh expand into this frontier.",
"transcriptSource": "AI speech-to-text",
"transcriptLanguage": "en",
"transcriptWordCount": 269,
"transcriptNote": "N/A",
"durationSeconds": 153,
"publishedAt": "2025-04-18T15:24:23.000Z",
"authorUsername": "Not Disclosed",
"authorName": "NASA - National Aeronautics and Space Administration",
"authorUrl": "https://www.facebook.com/NASA",
"authorVerified": "Not Disclosed",
"views": 368107,
"likes": 6426,
"comments": 716,
"shares": "Not Disclosed",
"hashtags": [],
"videoIndex": 1,
"videoCount": 1,
"segments": [
{ "start": 1.76, "end": 6.03, "text": "I come alive when I'm in orbit." },
{ "start": 6.03, "end": 11.76, "text": "And it's like my being should be in space." },
{ "start": 11.76, "end": 17.39, "text": "Some people are born to be cowboys and ride a horse." }
],
"srt": "1\n00:00:01,760 --> 00:00:06,030\nI come alive when I'm in orbit.\n\n2\n00:00:06,030 --> 00:00:11,760\nAnd it's like my being should be in space.",
"inputUrl": "https://www.facebook.com/NASA/videos/nasa-astronaut-don-pettit-turns-the-camera-on-science/696829239355289/",
"scrapedAt": "2026-09-24T21:34:05.620Z",
"error": null
}

The same run transcribed a TikTok video from TikTok's own auto-captions and a 205 second NASA video on X from the creator's caption track, both without any speech-to-text cost.

✨ Why choose this Actor

  • Four platforms, one list. Mix Instagram, X, Facebook and TikTok links in the same run and get the same columns back for all of them.
  • Speech-to-text, not only captions. Social videos rarely carry captions. This Actor listens to the audio, so any video with speech gets a transcript, in 100+ languages.
  • Free captions when they exist. In the default mode a caption track published by TikTok or by the creator on X is used instead of speech-to-text, so you do not pay for minutes you do not need.
  • Three shapes of the same text. A plain transcript, phrase level segments with start and end seconds, and an srt subtitle file ready for any editor.
  • Context on every row. Caption, date, duration, author, verification, likes and comments, plus exact views on Facebook and TikTok.
  • You always know the source. transcriptSource labels every transcript and transcriptNote explains every empty one.
  • Budget guard for long uploads. Videos longer than your limit (30 minutes by default, up to 60) return their data without speech-to-text.
  • Honest failures, never charged. Deleted, private and photo only posts come back as error rows with the reason, and error rows are free.
  • No login and no cookies from you. Only public posts, read the way a logged out visitor sees them.

📈 How it compares to alternatives

This ActorSingle platform transcript toolsCaption-only toolsManual copying
Instagram, X, Facebook and TikTok in one runYesNoVariesYes
Videos without captionsAI speech-to-textVariesEmpty rowType it yourself
Timestamped segmentsYes, per phraseVariesSometimesNo
SRT subtitle file per videoYesRarelyRarelyNo
Free use of existing captionsTikTok and XVariesYesN/A
Source of each transcript labelledYesRarelyNoN/A
Author and engagement dataYesVariesVariesNo
Charged when a link failsNeverVariesVariesN/A

Limits of the public web, stated plainly: Instagram and X do not show view counts to logged out visitors, Facebook does not show share counts on regular videos, and private, age restricted or login only videos cannot be read. AI timestamps are the model's estimates and can drift by a second or so. AI transcripts reflect whatever can be heard, which can include the lyrics of a song.

🚀 How to use

  1. Create a free Apify account. New accounts include $5 of free platform credit, which is plenty to try this out: console.apify.com/sign-up
  2. Open the Actor and go to the Input tab.
  3. Paste video links, one per line, any mix of platforms.
  4. Set how many videos to process with Max Items.
  5. Pick a Transcript source: platform captions with speech-to-text for the rest (default), speech-to-text for every video, or captions only.
  6. Click Start. The log prints each video's word count and source as it lands.
  7. Open the Dataset tab and download as CSV, Excel, JSON or XML, or pull it from the API.
{
"videoUrls": [
"https://www.instagram.com/reel/DMflZnXOKUj/",
"https://x.com/NASA/status/2042756933686337713",
"https://www.tiktok.com/@apifylife/video/7338085038258457889"
],
"maxItems": 100,
"transcriptionMode": "CAPTIONS_THEN_AI"
}

💼 Business use cases

Content repurposing across platforms

Collect the best performing reels, clips and TikToks of a creator or a campaign, run them in one batch and hand transcript to your writers or an LLM. likes and comments stay on each row, so you repurpose what worked.

Hook and script research

The first entries of segments are the hook. Sort by likes, read the first two or three phrases of each video and you have a cross platform swipe file of openings, with the exact second each line lands.

Brand and product monitoring

Transcribe the videos that mention your product and read what people say out loud, not only what they caption. transcriptLanguage routes Spanish, Portuguese or German videos to the right team.

AI, search and subtitles

Load segments into a vector store and link each answer back to the second of the video it came from, with url and publishedAt for citations. Video teams can take the srt column straight into an editor to subtitle a clip.

🔌 Automating Video Transcriber

  • Make and Zapier: trigger a run when a new link lands in a sheet or a form, then push the transcript into Notion, Airtable or your CMS.
  • Slack: post the transcript of every new competitor video into a channel for the content team.
  • Airbyte: sync datasets into Snowflake, BigQuery or Postgres next to your social analytics.
  • GitHub: schedule runs from Actions and keep versioned transcript archives.
  • Google Drive: drop a CSV or Google Sheet into a shared folder after every run.
  • API and webhooks: every run emits a dataset ID. Subscribe to the run succeeded webhook and pull the rows into any system.

🌟 Beyond business use cases

  • Research: study language, misinformation or public health messaging in short form video with searchable, timestamped text.
  • Personal: save the recipe, workout or tutorial someone explained in a reel as text you can search.
  • Non-profit: monitor how causes and campaigns are discussed across platforms and languages.
  • Experimentation: build a small corpus of spoken social media language for classification or summarisation experiments.

🤖 Ask an AI assistant about this scraper

Paste this into ChatGPT, Claude or any assistant to get help designing your run:

I am using the ParseForge Video Transcriber on Apify. It accepts public Instagram, X (Twitter), Facebook and TikTok video URLs and returns one row per video with 28 fields, including transcript (plain text), segments (start, end, text), srt, transcriptSource (AI speech-to-text, Creator captions, Platform auto-captions or None), transcriptLanguage, platform, durationSeconds, publishedAt, authorUsername, authorName, likes, comments, views (TikTok and Facebook) and hashtags. Help me design a run and an analysis to answer this question: [your question here].

❓ Frequently Asked Questions

🔐 Do I need an account or cookies on these platforms? No. The Actor reads public posts exactly as a logged out visitor sees them. Private, age restricted and login only videos cannot be read.

🔗 Which link formats work? Instagram /reel/, /p/ and /tv/ links, X and twitter.com /status/ links, Facebook /reel/, /videos/ and /watch?v= links, TikTok video links and vm.tiktok.com share links. Links from other sites return a free error row.

🗣 What is the difference between captions and speech-to-text? Captions are a text track published with the video by the platform or the creator. Speech-to-text is produced by this Actor from the audio. Both come back in the same transcript, segments and srt columns, labelled by transcriptSource.

🌍 Which languages are supported? Speech-to-text detects the spoken language automatically, 100+ languages, and transcribes it as spoken, without translating.

🔇 Why is a transcript N/A? Read transcriptNote: the video has no speech (music only), it is longer than your length limit, captions only mode was chosen and the platform has none, or the audio could not be retrieved. The row still carries all the video data.

🎞 What about posts with several videos? Each video in the post becomes its own row, with videoIndex and videoCount telling you where it sits in the post. Photo only posts return a free error row.

⏳ How long can a video be? Up to 60 minutes. The default limit is 30 minutes; raise Max video length to transcribe longer videos. Videos above the limit still return their data.

⏱ Are the timestamps exact? For platform captions they are the platform's own timings. For speech-to-text they are the model's estimates and can drift by a second or so.

🌐 Do I need a proxy? No for normal runs. Switch on Apify Proxy only for very large batches or if you see repeated load errors.

💵 How much does it cost? It is pay per event. Each video costs $0.003 on the free Apify plan tier and less on higher tiers (down to $0.001), with platform captions included when they exist. Speech-to-text, only for videos without captions or when you ask for it, adds $0.01 per started minute of video (down to $0.005). Videos over your length limit, error rows and failed links are free, and there is no run-start fee. Choose Platform captions only to pay for the video rows alone.

📥 What export formats are supported? CSV, Excel, JSON, XML, plus direct API access and integrations with Make, Zapier, Airbyte, Slack, Google Drive and more.

⚖️ Is this legal? The Actor reads publicly available posts. You are responsible for how you use the transcripts, including copyright, privacy law and each platform's terms where they apply to you.

🔌 Integrate with any app

Every run writes to an Apify dataset reachable through a REST API, so the output drops into whatever you already use. Native integrations cover Make, Zapier, Airbyte, Slack, Google Drive, GitHub, Google Sheets and webhooks, and the API covers everything else.

💡 Pro Tip: browse the complete ParseForge collection.

🆘 Need Help? Open our contact form

⚠️ Disclaimer: independent tool, not affiliated with Instagram, Facebook, Meta, X, TikTok or ByteDance; only publicly available data.