Runs on your device · WebGPU

Video caption generator

Drop in a Reel or any video up to 3 minutes and this tool writes captions from what is said, on your own device. Fix any word or timing, pick a style and a position, then burn the captions into the video or download them as an SRT or VTT file. Your video never leaves this page.

Downloads once: Whisper speech model, Fast 42–117 MB or Better 76–199 MB (WebGPU uses the larger files)

How it works

  1. 1Choose your video

    Pick a Reel or any clip up to 3 minutes and 600 MB. It opens in this page and plays from your device; nothing is uploaded.

  2. 2Generate the captions

    Whisper, an open speech model, listens to the sound and writes each word with its timing, using your graphics chip through WebGPU or, where that isn’t available, your processor.

  3. 3Fix words and times

    Every line can be edited. Tap a line’s number to play from there, retype a misheard name, or nudge when a line starts and ends. The preview updates as you type.

  4. 4Burn in or download

    Choose white with an outline, bold yellow or boxed text, and low, middle or high. Then record a new video with the captions in the picture, or save SRT and VTT files.

What you get, and what to check

Captions come out in short lines of up to about 32 characters, each on screen for no more than about 3 seconds, which is roughly what fits in two lines on a vertical video. A new line starts at the end of a sentence or at a pause, and a long sentence is split after a comma or between phrases rather than straight after “the” or “to”. The speech model is Whisper, released by OpenAI under the MIT licence; Fast is its tiny version (39 million parameters) and Better is base (74 million).

Clear speech in a quiet room mostly comes out right, with the odd slip. Small models stumble on brand names, usernames, slang, numbers said quickly and words sung over music, so read every line once before you post. OpenAI’s model card says Whisper performs unevenly across languages, with lower accuracy where it had less training data, and these small models show it. In a quick check with computer-generated voices, Better got all 28 words of a Spanish sentence right and Fast got about a third wrong. Hindi went worse: Fast turned it into rough English, and Better managed a few words in Urdu and Latin letters before getting stuck. For Hindi, treat the captions as a draft to retype.

Speech modelFast (Whisper tiny)Better (Whisper base)
Download with WebGPU117 MB199 MB
Download without WebGPU42 MB76 MB
Best forClear speech, quick drafts, phonesAccents, background noise, fewer fixes

Tip: If your Reel ends with “comment GUIDE”, make sure that word sits in its own caption line. People watching with the sound off then know exactly what to type.

Burned-in captions or a caption file?

Burned-in captions are part of the picture. They show for everyone, wherever the video ends up: on the platform you post to, in a downloaded copy, in another app. Nobody can switch them off, and nobody can edit them later. That makes them the dependable choice when people may watch with the sound off, which is the reason Meta’s Business Help Centre article “Add captions to your video ad” (facebook.com/business/help/1675722002698686) gives for adding captions at all.

An SRT or VTT file keeps the words separate from the video, as numbered lines with start and end times. Many video editors can import one and restyle it. Meta Ads Manager takes an SRT file for the captions of a video ad on Facebook and Instagram, and wants the file name to end in a language and country code, such as ice_cream_ad.en_US.srt, or the captions won’t upload. VTT is the version web players use.

  • Burning records the video again in real time, so a 90-second Reel takes about 90 seconds and plays with sound while it records. Keep the tab in front: browsers stop drawing video in background tabs.
  • Chrome (version 126 and later) and browsers built on the same engine, such as Edge, save an MP4 with H.264 video and AAC sound, which Meta’s Reels specifications for Instagram list. A browser that can only record WebM saves WebM, which you may need to convert before posting.
  • Safari can’t burn captions in: the recording relies on capturing the playing video as a stream, which Safari doesn’t support, and almost every browser on iPhone and iPad runs on Safari’s engine. The SRT and VTT downloads work everywhere.

Limits and privacy

  • Videos up to 3 minutes and 600 MB can be captioned, and up to 2 minutes can be burned in. For longer talks, the video to text tool transcribes up to 20 minutes.
  • The sound is read by your browser’s own decoder, so MP4, MOV and WebM all work as long as your browser can play them. iPhone videos in HEVC need a browser that plays HEVC.
  • Your video stays on your device. The only download is the speech model, which comes from Hugging Face once and is kept by your browser for next time.
  • Burned videos are capped at 1920 pixels on the long side and 30 frames per second, which keeps the recording smooth on ordinary laptops.

Questions people ask

Is this caption generator really free?

Yes. It runs on your own device, so there is no server bill to pass on: no sign-up, no watermark and no monthly limit. The one cost is the speech model download the first time you use it, which your browser keeps afterwards.

Does my video get uploaded?

No. Your browser reads the video and the speech model runs on your graphics chip or processor. Nothing about the video, the sound or the captions is sent to DMFast or anyone else.

Which languages can it caption?

Whisper knows 99 languages. The list here has the common ones, and Auto-detect works out which is spoken from the first 28 seconds with speech; if it guesses wrong, pick the language yourself. Hindi is the weak spot of these small models: Fast tends to give rough English, and Better may write Urdu script or lose its way.

Why can’t I burn captions in on my iPhone?

Burning records the playing video, sound included, by capturing it as a stream, and Safari doesn’t support that. Almost every browser on iPhone and iPad uses Safari’s engine, so the same applies there. Download the SRT file and add it in an editing app, or burn the captions in on a computer.

Can I change the font or colours?

There are three styles (white with a black outline, bold yellow, and white text on a dark box), three positions and three sizes. For other fonts, download the SRT and style it in your video editor.

More free tools

Related guides

Answer every comment and DM, automatically

When someone comments a word like GUIDE, DMFast replies and sends them your link in a DM. Free plan, no card.

Start free