Burn in subtitles
Bake an SRT or ASS file into the picture, so captions survive any re-upload.
Your file
Drop a file here, or click to choose
It stays on this device. Nothing is sent anywhere.
Settings
Soft subtitles versus burned in
A separate SRT file can be switched off, restyled, and translated. It also gets stripped the moment the video is uploaded somewhere that does not support it, which is most places. Burning the captions into the pixels means they always appear, on any player, on any platform, in any preview thumbnail. The tradeoff is that they can never be turned off or changed.
Styling
The defaults follow broadcast convention: white text, black outline, sat above the bottom edge. Raise the bottom margin if a platform overlays its own controls or captions in that area, 90 to 140 px clears most of them.
SRT, ASS, SSA and VTT files all work. An ASS file that already carries its own styling will mostly override these settings, which is usually what you want.
Why burned captions are worth the loss of flexibility
Most video is watched with the sound off, at least at first. Feeds autoplay muted, people watch on trains and in offices, and a video that needs audio to make sense in its first two seconds mostly does not get watched. Burned captions solve that unconditionally: they are part of the picture, so they appear in every player, on every platform, in the preview thumbnail, and after any re-encode the platform performs.
A separate subtitle track is better in every way except that it frequently does not survive. It can be switched off, restyled, translated and searched, and it is stripped by most upload paths without warning. Where a platform does support proper captions, such as YouTube, uploading the SRT alongside is the better option and this tool is unnecessary.
Getting the timing right first
Burning is permanent, so timing errors become permanent too. Check the SRT before you run it rather than after: open it in a text editor, confirm the first cue matches the first words, and confirm the last cue is not past the end of the video. Subtitles written against a different cut of the same footage are the usual source of drift, and a file that starts correct and ends seconds out means the frame rates did not match.
If you do not have a subtitle file yet, transcribe generates one from the audio in the browser and hands it back as SRT, which you can correct before burning. Auto captions does both steps in one pass when the transcript needs no editing.
Margins, and the platform furniture problem
The default position follows broadcast convention and is right for landscape video watched in a normal player. Vertical platforms are the exception worth planning for: TikTok, Reels and Shorts draw usernames, descriptions, buttons and a progress bar over roughly the lower fifth of the screen, and captions placed there are simply hidden. Raising the bottom margin to somewhere between 90 and 140 px clears most of it.
White text with a black outline is the default because it survives any background. If your footage is consistently bright or consistently dark you can do better, but the outline is what makes captions work over changing scenes, and removing it is nearly always a mistake.
Common questions
My subtitles are out of sync. Can I shift them?
Not here. Fix the timings in the SRT file itself. It is plain text, so any editor will open it.
Which languages are supported?
The bundled font covers Latin, Greek and Cyrillic scripts. Chinese, Japanese, Korean, Arabic and Indic scripts will not render, because no font for them is included.
Why is the text tiny or enormous?
Font size is in points against the source resolution. Scale it with the video: around 24 for 1080p, 16 for 720p.