How to Add Burned-In Captions to a Video (Free Step-by-Step Guide)
"Burned-in" (hard-coded) captions are text permanently rendered into the video frame itself — unlike a separate subtitle track, they show up everywhere the video plays, including places that strip subtitle files (most social feeds, some ad players, screen recordings shared as plain MP4). Here's the actual process, free tools first, without skipping the parts that usually go wrong.
1. Get a transcript with timestamps first
You can't burn in captions without a timed transcript (an .srt file) — plain text
isn't enough, you need to know which words appear during which seconds. Free starting points:
- YouTube's own auto-captions — if the video is already on YouTube, you can
download its auto-generated
.srtfrom YouTube Studio for free and clean it up. - Free local transcription — open-source Whisper-based tools run entirely on
your own machine, no upload, no per-minute cost, output an
.srtdirectly. - Free web transcription tools — fine for short clips; check the free tier's length limit and accuracy before relying on it for anything client-facing.
Whichever route you use, read the .srt once before styling it — auto-generated
timestamps sometimes drift on fast speech or overlapping voices, and it's much easier to fix a
text file than to re-render a styled video because of a transcript error.
2. Clean up the transcript before you style anything
The two things that actually matter at this stage: line length (captions that wrap awkwardly on
a phone screen are the #1 readability complaint) and speaker attribution if more than one person
talks. Fix both in the plain .srt text file — it's just timestamped text, editable in
any text editor — before moving to styling.
3. Pick a style that matches where the video will actually play
This is the step people skip and then redo. A caption style tuned for 16:9 YouTube (bottom third, moderate size) will sit inside a platform's UI buttons on a 9:16 vertical feed, or look oversized on a small podcast-clip crop. Decide the destination platform before styling, not after.
4. Burn the captions in
ffmpeg with libass support can hard-code a styled .srt
directly into a video in one command — no paid software required. The styling part (font, size,
color, position, outline) is where most people either hand-tune trial-and-error settings or
just accept a plain, unstyled default. Engineer Tsai Studio's free
Caption Style Presets
pack has 5 ready-made, already-rendered-and-checked presets (YouTube, Shorts/Reels/TikTok,
podcast, corporate, accessibility high-contrast) plus the script that applies them — skips the
trial-and-error part of this step entirely.
Scope
This guide covers the free, do-it-yourself path end to end. If you'd rather hand off the whole transcription-to-styled-caption pipeline instead of running it yourself, that's the same underlying capability Engineer Tsai Studio is developing as a full transcription/captioning service — not yet listed for sale as of this guide's publish date, but the free preset pack above is real, usable today regardless.
Other Engineer Tsai Studio services: PDF tables to Excel, product photo background removal, Chart of Accounts starter pack. Questions: hello@tsaielectro.com.
See everything Engineer Tsai Studio offers: AI Tools & Services.