# Burn Subtitles into Video

> Burn SRT or VTT subtitles into a video permanently in your browser: choose font, size, colour, outline and position, preview live, save an MP4. No upload.

- URL: https://bytescope.dev/en/burn-subtitles/
- Locale: en · Also: [ja](https://bytescope.dev/ja/burn-subtitles.md) · [zh-Hant](https://bytescope.dev/zh-Hant/burn-subtitles.md)
- Runs: Your files never leave your browser — all processing is local.
- Requires: Needs a browser with WebCodecs video encoding (recent Chrome, Edge, Opera, Safari or desktop Firefox). Saving straight into a file you choose needs Chrome, Edge or Opera on desktop (File System Access API). Other browsers build the output in memory and stop around 1 GB.
- Updated: 2026-09-08

## What it does

Drop a video and a subtitle file, set how the text should look, and get back an MP4 with the subtitles drawn into the picture. Instagram, TikTok, LINE and most chat apps ignore separate .srt files, and a tutorial whose captions only show when the viewer remembers to switch them on is easy to miss. Burned-in text shows everywhere the video plays. Everything runs in your browser: the video is decoded, the text is drawn on each frame and the result is encoded again on your own computer, and nothing is uploaded.

### How it works

SRT and VTT are the formats this version is built for. ASS, SBV and LRC files are accepted too, but only their text and timing are used: ASS styles and effects are not applied yet, and the page says so when it reads one. Files in BIG5, GBK, Shift_JIS and other legacy encodings are detected automatically. Cues that cannot be burned, such as zero-length lines or lines that end before they start, are skipped and counted instead of stopping the job. The preview plays the video with the subtitles drawn by the same code that will burn them, at the output size, so what you see is what you get.

### Style, timing and output

Pick a font from the ones installed on this computer (the system font or common Chinese, Japanese, Korean and Latin families), a size as a share of the video height (5% by default), text and outline colours, outline width, an optional semi-transparent box, bottom or top position with a margin, and a maximum number of characters per line. Long lines wrap at word boundaries, and Chinese or Japanese punctuation never starts a line. A global time offset moves every subtitle earlier or later. The output is H.264 MP4 at the original size with a High, Medium or Low quality level, or aimed at a target size such as 25 MB; the sound is copied unchanged unless a tight target needs it smaller. Progress shows speed and time left, and the job can be cancelled at any point.

### Honest limits

Burned subtitles become part of the picture. They cannot be removed, edited or switched to another language afterwards, so keep the original file. Fonts come from the computer doing the burning, so the same settings may look slightly different on another machine; the finished video looks the same everywhere. The whole video is re-encoded, which takes time and costs a little quality. HDR videos from iPhones come out as SDR and may look paler, and the page warns you before you start. Right-to-left scripts such as Arabic are drawn without crashing, but their line layout is not guaranteed yet. A switchable subtitle track that keeps the video untouched is a different job and is not offered here yet.

If the subtitles drift against the speech, fix the timing in Subtitle Sync first. To make subtitles from scratch, Video Subtitles transcribes the speech on your device, and Subtitle Translate turns them into another language with the timing kept.

## Limits

Does not add a switchable subtitle track (the text becomes part of the picture), edit subtitle text or timing, or apply ASS effects; the whole video is re-encoded.

## FAQ

### What is the difference between burned-in and soft subtitles?

Soft subtitles are a separate track or .srt file that the player draws and the viewer can turn on, off or switch. Burned-in, or hardcoded, subtitles are drawn into every frame, so they show on any player and any app, including ones that ignore subtitle files, but they can never be turned off. This page makes burned-in subtitles.

### Which subtitle files can I use?

SRT and VTT are fully supported. ASS, SSA, SBV and LRC files also load, but only their text and timing are used; ASS fonts, colours, positions and effects are not applied in this version. Text encodings such as UTF-8, BIG5, GBK and Shift_JIS are detected automatically.

### Can I remove the subtitles later?

No. Once burned in, the text is part of the picture, just like anything the camera recorded. Keep your original video and subtitle file if you might need a clean copy or a different language later.

### Why does the font look different on another computer?

The text is drawn with fonts installed on the computer doing the burning. If you open the same page elsewhere, a font that is missing there falls back to another one, so the preview may differ. The finished video does not change: the text is already pixels.

### Does burning subtitles reduce video quality?

Slightly. Drawing text on the frames means the whole video must be encoded again, which always loses a little detail. High quality keeps the loss hard to see at the original size; Medium and Low, or a small target size, trade more quality for a smaller file.

### My subtitles are a little early or late. What can I do?

Use the time offset to move every subtitle by the same number of seconds; a positive value shows them later. If the gap grows over the length of the video, the timing needs stretching rather than shifting, which Subtitle Sync does.

### Is my video uploaded?

No. The video and subtitle file are read from your disk in the browser, and the new MP4 is written back to your disk. There is no server in between, so there is no upload, queue or file size cap from a service.
