Audio & Video Transcriber: Any URL & Podcast RSS to Text
Pricing
from $17.00 / 1,000 media transcribed (up to 2 min)s
Audio & Video Transcriber: Any URL & Podcast RSS to Text
Get a text transcript of any audio or video link: YouTube, TikTok, Instagram, Facebook, X, Reddit, Vimeo, Loom, MP3 and MP4 files, podcast RSS, Apple Podcasts and Spotify podcasts. Speech to text with Whisper inside the Actor, 99 languages, timestamps and SRT. No API key. Errors are free.
Pricing
from $17.00 / 1,000 media transcribed (up to 2 min)s
Rating
0.0
(0)
Developer
Scrapewise Data
Maintained by CommunityActor stats
0
Bookmarked
11
Total users
7
Monthly active users
8 hours ago
Last modified
Share
Audio & Video Transcriber (Whisper)
Audio & Video Transcriber turns audio and video from any public link into text: direct files (MP3, M4A, MP4, WAV, WebM, OGG...), YouTube, TikTok, Instagram, Facebook, X (Twitter), Reddit, Vimeo, Dailymotion, SoundCloud, Loom, Twitch clips and 1,000+ other sites, and podcasts from RSS feeds, Apple Podcasts or Spotify links (the newest episodes, or the exact episode you link). You get the full transcript with timestamps, optional SRT subtitles, the detected language (99 languages), title, uploader and duration.
Transcription runs inside the Actor with OpenAI's open Whisper model (faster-whisper), so there is no API key to bring and no third-party bill. No login, no cookies.
US$ 0.02 per file up to 2 minutes, then US$ 0.01 per extra minute. A 1-hour podcast costs about US$ 0.60. YouTube adds US$ 0.005 per minute. Files without speech and error rows are free.
Transcription pricing at a glance
- Price per file: US$ 0.02 (covers up to 2 minutes of audio), no run start fee, no monthly fee
- Longer files: US$ 0.01 per extra minute (about US$ 0.60 per hour of audio)
- YouTube links: + US$ 0.005 per minute of video (YouTube refuses cloud servers; part of the audio needs a residential proxy)
- What we charge for: Only files with a transcript delivered. No speech, errors, too-long files and duplicates are free
Example transcript output
Vimeo video transcribed on Apify on 2026-09-30 (segments cut to 3):
{"type": "transcript","url": "https://vimeo.com/86877247","platform": "Vimeo","title": "What Moves You? A film for runners by runners","uploader": "What Moves You?","durationSeconds": 127.1,"billedMinutes": 2.12,"extraMinutes": 1,"language": "en","languageProbability": 0.996,"transcript": "We're different. We see things differently. We see the world in a different way. We ignore the pain and we brave the cold. We've learned that running in circles doesn't always mean finishing where you've started. And that isolated paths aren't lonely. We are the elites and the not-so-elites. We are runners. born to it. I guess you could say we're oddballs, but we share a bond that is forged on the road from failure to triumph, and back again. And that makes us the same. These are our excuses. But what are the reasons? What really moves us? What if there is something deeper? Stronger moving us forward. What if we just think we know the reasons? And what if the real reasons are not entirely our own? The human race starts with a story. This is yours.","wordCount": 139,"segments": [{ "start": 6.86, "end": 12.29, "text": "We're different. We see things differently." },{ "start": 12.29, "end": 16.61, "text": "We see the world in a different way." },{ "start": 16.61, "end": 23.96, "text": "We ignore the pain and we brave the cold." }],"model": "whisper-base"}
Supported transcription sources
Tested on Apify on 2026-09-30 with real public links. "Handled" means a transcript, or a correct free row such as NO_SPEECH for music-only clips.
| Source | Links that work | Tested | How |
|---|---|---|---|
| YouTube | youtube.com/watch?v=, youtu.be/, /shorts/, m.youtube.com | 48 of 48 public videos handled | No login, no cookies. Public videos only; age-restricted and members-only videos are free LOGIN_REQUIRED rows |
instagram.com/reel/CODE/, /p/CODE/, /tv/CODE/ | 16 of 16 handled | The public post page and its audio-only track. For whole profiles use Instagram Reels Transcript | |
facebook.com/reel/ID, /watch/?v=ID, /PAGE/videos/ID | 36 of 36 handled | Public videos and reels of pages. Videos shared only with friends or groups are free LOGIN_REQUIRED rows | |
reddit.com/r/.../comments/ID/..., redd.it/ID, v.redd.it/ID, share links | 12 of 12 live videos handled | Reddit-hosted video from its public video server. Posts that link to YouTube or other sites are followed. Removed videos are free NOT_FOUND rows | |
| Spotify | open.spotify.com/episode/ID, /show/ID | 7 of 7 episodes found | Spotify audio is DRM, so it is never downloaded from Spotify. The Actor finds the same show's public RSS feed (most shows have one) and transcribes that episode file. Spotify-only shows are a free SPOTIFY_EXCLUSIVE row |
| Apple Podcasts, RSS | show or episode links, any podcast feed | yes | The episode file from the public feed |
| TikTok, X (Twitter), Vimeo, Dailymotion, SoundCloud, Loom, Twitch clips | video or track page | yes | Page reader of the open-source yt-dlp |
| Direct files | .mp3, .m4a, .mp4, .wav, .webm, .ogg, .opus, .flac... | yes | Downloaded as is, up to 1.5 GB |
Transcribe video to text: YouTube, TikTok, Instagram, Facebook, X (Twitter)
Paste the post or video link. The Actor downloads only the smallest audio track (never the full video when an audio-only track exists) and transcribes it. On YouTube it reads the audio itself, so it works on videos without captions; if you only need existing captions, YouTube Transcript is cheaper.
Transcribe audio to text: MP3, WAV, M4A files
Any public file link works, including signed or tracking links (podtrac, simplecast, S3, Google Cloud Storage, Dropbox direct links). Files up to 1.5 GB.
Podcast transcription from an RSS feed, Apple Podcasts or Spotify
Paste the podcast RSS feed, an Apple Podcasts show or episode link, or a Spotify show or episode link, and set maxEpisodesPerFeed. The Actor transcribes the newest episodes and adds the episode title, podcast name and publish date to each row. Schedule it daily and you get new episodes as text.
Video guides from Apify: how to schedule an Actor and how to connect it to other apps.
Loom transcript: screen recordings and video messages to text
Paste loom.com/share/... or loom.com/embed/... links of public Loom videos, one per line. The Actor reads the audio of the recording and returns the full transcript with timestamps, the video title and duration, without a Loom account. Useful for turning walkthroughs, bug reports, sales demos and async updates into searchable text or feeding them to an AI agent. Private or password-protected videos and videos with no speech come back as free rows with an error code.
What you can do with the transcripts
- Content repurposing: turn videos and podcasts into blog posts, newsletters, show notes and subtitles.
- Research and monitoring: search what was said in podcasts, news clips and social videos.
- AI pipelines: clean text with timestamps for RAG, summarisation, translation or training data.
- Accessibility: SRT subtitles for your own videos.
Transcriber input
| Field | What it does |
|---|---|
urls | Links: audio or video files, video and post pages (YouTube, Instagram, Facebook, Reddit...), podcast RSS feeds, Apple Podcasts and Spotify links |
maxEpisodesPerFeed | Default 3. Newest episodes per feed, Apple Podcasts show or playlist |
language | auto (default) detects per file. Or force a 2-letter code (en, pt, es, de, ja...) |
model | tiny (fastest), base (default), small (most accurate, best for non-English and noisy audio; each minute counts twice) |
includeSegments | Default true: phrase-level start and end in seconds |
includeSrt | Default false: adds a ready .srt subtitle text |
maxDurationMinutes | Default 120. Longer files get a free MEDIA_TOO_LONG row. Caps your cost |
{"urls": ["https://www.tiktok.com/@bbcnews/video/7652791912868482326","https://feeds.npr.org/500005/podcast.xml","https://example.com/interview.mp3"],"maxEpisodesPerFeed": 2,"model": "base","includeSrt": true}
Transcript output fields
url, mediaUrl (the audio file, for direct files and podcast episodes), platform, title, uploader, podcast, publishedAt, durationSeconds, billedMinutes, extraMinutes, youtubeMinutes, language, languageProbability, transcript, wordCount, segments (start, end, text), srt, model, source (the link you gave, for example the feed), scrapedAt.
Error codes (never charged)
| errorCode | Meaning |
|---|---|
NO_SPEECH | Music, sound effects or silence only |
NO_AUDIO | The video has no audio track |
MEDIA_TOO_LONG, MEDIA_TOO_LARGE | Above maxDurationMinutes, or a file above 1.5 GB |
YOUTUBE_BLOCKED | YouTube refused every server we tried for this video (rare). Run again later, or use YouTube Transcript for captions |
USE_INSTAGRAM_ACTOR | An Instagram profile link: use Instagram Reels Transcript for profiles |
NOT_A_VIDEO | An Instagram photo or carousel, or a Reddit text or image post |
BLOCKED | Instagram did not answer after retries; run again later |
LOGIN_REQUIRED | The site only shows this media to logged-in users (private posts, friends-only Facebook videos, age-restricted YouTube) |
SPOTIFY_EXCLUSIVE | The show (or that episode) exists only on Spotify, with no public RSS feed. Spotify audio is DRM-protected and never downloaded |
DRM_PROTECTED | DRM-protected media on other sites |
NOT_FOUND, NO_EPISODES, NOT_A_FEED | Deleted, private, wrong link, or a feed without audio |
UNSUPPORTED_URL, INVALID_URL, INVALID_INPUT | A link or value the Actor does not understand |
DOWNLOAD_FAILED, TRANSCRIPTION_FAILED | The site or the file did not cooperate after retries; run again |
NOT_REACHED, UNEXPECTED | The run timeout or spending limit arrived, or something unforeseen broke; only that file is lost |
Audio and video transcription pricing
| Event | Price |
|---|---|
| Media transcribed (up to 2 minutes of audio) | US$ 0.02 |
| Extra minute, per started minute after the first 2 | US$ 0.01 |
| YouTube minute, per started minute of a YouTube video (YouTube links only) | US$ 0.005 |
- 1,000 short clips (under 2 minutes) cost US$ 20.
- A 5-minute file costs US$ 0.02 + 3 x US$ 0.01 = US$ 0.05.
- A 60-minute podcast costs US$ 0.02 + 58 x US$ 0.01 = US$ 0.60.
- With
model: small, minutes count twice (it uses about 3 times the compute): a 5-minute file costs US$ 0.02 + 8 x US$ 0.01 = US$ 0.10. - A 10-minute YouTube video costs US$ 0.02 + 8 x US$ 0.01 + 10 x US$ 0.005 = US$ 0.15. YouTube refuses cloud servers, so part of its audio comes through a paid residential proxy; that is the only reason for the extra fee.
No speech, errors and duplicates are free, and there is no Apify compute bill on top. billedMinutes, extraMinutes and youtubeMinutes on each row show the minutes used for the price.
Audio and video transcriber FAQ
Does it work with YouTube? Yes, for public videos (48 of 48 in our 2026-09-30 tests), with no login or cookies. It adds US$ 0.005 per minute for the residential proxy YouTube requires. If the video already has captions and you only need them, YouTube Transcript is cheaper.
Why not OpenAI's Whisper API or the official YouTube API? OpenAI's hosted Whisper API needs your own API key, bills you separately and accepts files up to 25 MB, so you still have to download and split the media yourself. The official YouTube Data API only downloads caption tracks with the video owner's permission. This Actor takes the link, fetches the audio and transcribes it in one run, with no key and no second bill.
Does it download from Spotify? No. Spotify audio is DRM-protected. For a Spotify episode link, the Actor finds the same episode in the show's public RSS feed (Apple Podcasts directory) and transcribes that file. Shows that exist only on Spotify come back as a free SPOTIFY_EXCLUSIVE row.
Which languages? The 99 languages Whisper knows, detected automatically. Forcing language helps on short clips.
Speaker names? No. The transcript is one text with timestamps; it does not tell who is speaking.
How fast? About 6 to 10 seconds of processing per minute of audio with base, plus the download. A 30-minute episode takes around 4 minutes.
Transcriber limitations
- Public media only. Private posts, paid content, DRM streams and pages that need login are out of reach. The Actor reads public pages and files only.
- Machine transcription. Whisper is strong on clear speech; music, crowds and heavy slang lower accuracy. Use
smallfor non-English speech. - Some sites refuse cloud servers. YouTube and Instagram are handled with retries through other IPs; a link that still fails comes back as a free row.
- Runs with 4 GB of memory by default (one CPU core for the model). Less memory makes runs slower, not cheaper.
Related scrapers
- YouTube Transcript Scraper: YouTube captions, SRT and AI transcription per video.
- YouTube Channel Transcripts Scraper: bulk transcripts of whole channels, SRT and VTT.
- TikTok Transcript Scraper: TikTok captions with views and likes.
- Instagram Reels Transcript Scraper: reel and video to text, whole profiles included.
- Social Video Downloader: download TikTok, Instagram, Facebook and X videos as files.
Changelog
- 2026-09-30, 0.2: YouTube audio (public videos, no login), Instagram reels and video posts, Reddit videos (including posts that link elsewhere), Spotify episode and show links (transcribed from the show's public RSS feed, never from Spotify), long episodes transcribed in 10-minute blocks (1-hour podcasts no longer run out of memory). New
youtubeMinutesfield and YouTube minute event. - 2026-09-30, 0.1: first release. Files, 1,000+ video sites, podcast RSS and Apple Podcasts, Whisper tiny, base or small, auto language, timestamps, SRT, free rows for no speech and errors.