Embedding

Embed Subtitles in a Video: Track or Burned In

People say “embed subtitles” for two different results: a subtitle track stored inside the MP4 or MKV that viewers can switch on and off, or subtitles burned into the picture. The editor on this page produces the second, plus SRT and VTT files. For the first, this page names the free tools that write a real track and explains when that is the better choice.

Subtitle editor

Load a video, get subtitles from AI, an SRT/VTT file or your own typing, style them, and download an MP4 with the subtitles in the picture.

MP4, MOV, M4V, WebM or MKV · free to edit and render · no watermark · the video stays on your device

Two things called embedding

A video file is a container. Inside it sit separate streams: one for the picture, usually one for sound, and optionally one or more for subtitles. A subtitle stream is just timed text (or, on discs, small images) that the player draws when the viewer picks it from a menu. Adding one without touching the picture is called muxing, and it is what video engineers usually mean by embedded subtitles.

Everyone else often means something simpler: "I want the words to be in the video." That is burning in, where the text is drawn into each frame and becomes part of the image. Both are fair uses of the word, but they behave in opposite ways:

Muxed track
Optional, switchable, can hold several languages, no re-encode needed. Shows only where the player reads subtitle streams.
Burned in
Always visible, one language, styled exactly as designed. Needs a re-encode and shows on every player.

The longer comparison of tracks, sidecar files and burned text is in embedded versus sidecar subtitles.

What each container will hold

If you go the track route, the container decides which subtitle formats fit:

MKV
Takes almost any subtitle format as a track, SRT and ASS included, in as many languages as you like. Desktop players handle it well; many phones, browsers and social platforms don't.
MP4
Takes text subtitles in its own timed-text format, often labelled mov_text or tx3g. Apple's players and VLC generally show it, while many web players and social apps ignore it.
WebM
Carries WebVTT tracks and is mainly a web format.
Any container, burned in
No subtitle stream at all, so there is nothing for a player to support or drop.

This is why "it worked on my laptop" is such a common complaint. A track that VLC shows perfectly may simply not exist as far as a phone gallery, a chat app or a feed is concerned. MKV versus MP4 covers the containers in more detail.

Which one did you mean?

Ask where the video is going and who controls the player:

  • Viewers need to switch subtitles off, or pick among languages, in a player that supports tracks: mux a track.
  • The video will be posted to a social feed, sent through a messaging app or played on a screen you don't control: burn the subtitles in.
  • The destination has its own caption upload, such as YouTube, Vimeo or LinkedIn: do neither, and upload the SRT or VTT next to the video.
  • It is an HTML5 video on your own website: keep a VTT file and reference it from the page, as in subtitles for HTML5 video.

If the person asking can't tell you, burned-in is the safer guess for anything shared casually, and a separate file is safer for anything published on a platform.

Burning them in with the editor here

This editor never writes a subtitle stream into the MP4. What it does is render the subtitles into the picture, and export the same lines as SRT or VTT if you also want the soft version. Open the video, then add the lines in whichever way fits: AI subtitles generated from the speech, Import SRT / VTT for a file you already have, or typing each line at the playhead with Enter. Watch it through, fix the text and timing, choose a style, then Render video and Download video. The result is an MP4 at the source's resolution and frame rate with the text drawn in and no watermark.

Two limits matter for embedding jobs in particular. Subtitle tracks already inside an MKV aren't read, so pull them out first with MKVToolNix or FFmpeg and import the resulting SRT. And ASS, SSA and SBV files aren't imported, so convert them to SRT or VTT before you start.

Writing a real subtitle track with other tools

For a switchable track, export the SRT from this editor (or from the AI subtitle generator) and add it to the file with a muxing tool. None of these is the single right answer; they suit different habits:

  • MKVToolNix: add the video and the SRT in its GUI, set the track's language and whether it plays by default, and start multiplexing. Nothing is re-encoded, and the result is an MKV.
  • FFmpeg: a command such as ffmpeg -i video.mp4 -i subtitles.srt -map 0 -map 1 -c copy -c:s mov_text output.mp4 copies picture and sound untouched and converts the SRT into an MP4 text track. For an MKV output you can keep the SRT as it is.
  • HandBrake: import the SRT on the Subtitles tab and leave "Burn In" unticked for a soft track. HandBrake re-encodes the video either way, so pick a quality setting you are comfortable with; adding an SRT with HandBrake walks through it.

Muxing with stream copy leaves the picture identical to the original, which is the main advantage of a track over burning in.

Pitfalls with embedded tracks

  • The track exists but nothing shows. Check that the player has subtitles enabled and that the track is flagged as default; when an SRT file won't work lists the other usual causes.
  • Accented letters or non-Latin scripts turn into gibberish. Save the SRT as UTF-8 before muxing.
  • Styling disappears. Converting an ASS track to MP4's text format keeps the words but drops fonts, colours and positions.
  • The track vanishes after upload. Feeds and chat apps rebuild the video from picture and sound, and a track is typically discarded on the way.

Delivering both from one session

Many projects need a burned copy for sharing and a clean copy with a soft track for platforms and archives. Work through the subtitles once in the editor, render the burned MP4, then press Export SRT and mux that file into your original with one of the tools above. Both versions then carry identical text and timing, and a later correction means editing one SRT. If the subtitles need to be in another language, translated subtitles produces the file from the speech, and burning translated subtitles covers the rendered version.

About the subtitle editor on this page

Opens
MP4, MOV, M4V, WebM, MKV videos your browser can decode
Subtitles from
AI (from the speech, optionally translated into one of 21 languages), an SRT or VTT file, or typing them in
You download
An MP4 with the subtitles drawn into the picture at the original resolution and frame rate, plus SRT and VTT files
Cost
Editing, styling, rendering and SRT/VTT export are free, with no account and no watermark. AI subtitles cost 1 credit per minute (5-credit minimum per video); signing in with Google gives 100 free credits and accounts get 10 free credits a day
Privacy
The video never leaves your device and is rendered in your browser. Only for AI subtitles is the audio sent, over HTTPS, and it is deleted within 30 minutes of delivery
Rendering needs
Chrome or Edge 94+, Safari 16.4+, or Firefox 130+ on a computer. Editing and SRT/VTT export work in any current browser

More: burn, embed and hardcode

Subtitle tools

Frequently asked questions

Can this editor add a switchable subtitle track to my MP4?

No. Its video output always has the subtitles burned into the picture. Export SRT or VTT here, then mux the file into the video with MKVToolNix, FFmpeg or HandBrake.

Does embedding a subtitle track reduce video quality?

Not when the tool copies the streams, as MKVToolNix and FFmpeg with stream copy do. Burning subtitles in, or passing the video through HandBrake, involves a re-encode.

Why don't my embedded subtitles show on Instagram or WhatsApp?

Those apps keep the picture and sound and ignore subtitle tracks inside the file. For text that survives sharing, burn the subtitles into the picture.

How do I get subtitles out of an MKV so I can edit them?

Extract the track with MKVToolNix or FFmpeg to get an SRT, then use Import SRT / VTT in the editor. The editor itself doesn't read tracks inside MKV files.

Should I embed SRT or VTT?

SRT is the usual choice for MKV and MP4 muxing tools, while VTT is the web's format for HTML5 players. The editor exports both, so you can keep one of each.