Open ToolsGet the Android App

Files never leave your device.

Add Subtitles to Video (SRT to MP4 or MKV)

Add subtitles to video as a track viewers can switch on and off: drop an MP4, MKV or other video together with its SRT, VTT or ASS file and get one file with the subtitles inside. The picture is copied, not re-encoded, in almost every case, so quality and size stay the same. It all happens in your browser, with no upload and no watermark.

  • Runs on your device
  • WebCodecs · GPU
  • FFmpeg
  • Works offline

Updated

Drop your video and subtitle file here

MP4MOVMKVWEBMAVIFLV
Processed on your device — never uploaded0 bytes uploaded

How to add subtitles to a video

  1. Step 1: Drop the video and its subtitle file on the box above together, or pick the subtitle file under Subtitle file.

  2. Step 2: Choose the Subtitle language, so players show the right name in their subtitle menu.

  3. Step 3: Pick MP4 for phones and TVs, MKV to keep ASS styling, or WebM for the web.

  4. Step 4: Press Add and download the video. Subtitles are on by default; switch off Show by default to start with them hidden.

Good to know

Settings explained

Subtitle file
SRT, VTT, ASS or SSA — or drop it together with the video.
Save as
MKV keeps ASS styling. MP4 uses mov_text (plain text). WebM uses WebVTT and re-encodes video that isn’t VP8/VP9/AV1. Rotated phone clips are re-encoded upright for MKV.

Formats

Opens
MP4MOVMKVWEBMAVIWMVFLV3GPTSMPGMPEGVOBOGVMXFSRTVTT
Saves as
MKVMP4WebM

Combines several files into one result.

How it runs

Hardware video engine
Video is decoded and encoded by your device’s media hardware through WebCodecs — usually several times faster than real time.
FFmpeg (when needed)
Older formats and a few filters use FFmpeg compiled to WebAssembly. It downloads once (about 31 MB) the first time it is needed and is cached for offline use.

MP4, MKV or WebM: which container to choose

All three hold a switchable subtitle track. MP4 plays on the most devices, MKV keeps the most features, and WebM is for web players. No subtitle file yet? Generate one with auto captions. Want subtitles that can never be turned off, for Instagram or TikTok? Burn subtitles into video instead.

How each output container stores your subtitles
MP4MKVWebM
Subtitle trackMP4 timed text (mov_text)SubRip, or ASS for .ass filesWebVTT
ASS styling and positionsDropped (plain text)Kept; fonts already attached to the MKV stay tooDropped
Video and audioCopied; re-encoded only if the copy failsCopied (portrait phone clips are re-encoded upright)Copied only if VP8, VP9 or AV1 with Opus or Vorbis
Existing subtitle tracksText tracks keptAll kept, picture subtitles tooText tracks kept
Plays oniPhone, QuickTime, VLC, most TVsVLC, mpv, Kodi, Plex, many TVsVLC and mpv; browsers play the video but usually need a separate .vtt file to show subtitles
EngineFFmpeg, downloaded onceBuilt in for SRT; FFmpeg for ASS or extra tracksFFmpeg, after a WebCodecs re-encode if needed
Lines timed after the end of the video are left out, and the last line is cut at the end, so the file does not grow a black tail.

What are soft subtitles?

Soft subtitles are a separate text track stored inside the video file, next to the picture and sound. The player draws them, so viewers can turn them on or off, pick a language and, in many players, change the font size. Hard (burned-in) subtitles are part of the picture itself and always show.

Soft subtitles are the right choice for films, lectures and anything watched in a media player. Social apps such as Instagram, TikTok and WhatsApp ignore subtitle tracks, so videos for them need burned-in text.

Embed subtitles in a video without losing quality

Adding a subtitle track does not require touching the picture. ProMedia copies the compressed video and audio streams into the new file and only adds the text, so the output is about the size of the input plus a few kilobytes of subtitles. Re-encoding happens only in these cases:

  • MP4 with an unusual codec: if the stream copy fails, the audio is converted to AAC first, and only if that fails too is the video converted to H.264.
  • MKV from a phone held upright: the MKV written here cannot store the rotation flag, so the picture is re-encoded upright. Choose MP4 to avoid that.
  • WebM from H.264 or HEVC video: WebM only allows VP8, VP9 and AV1, so the video is converted first.

Why are my subtitles not showing?

  • The track is off. Open the player’s subtitle or CC menu and pick the language, or leave Show by default on next time.
  • The app ignores tracks. Instagram, TikTok and WhatsApp never show soft subtitles. Burn them in instead.
  • Styling vanished. MP4 stores plain text, so ASS colours and positions are lost. Save as MKV to keep them.
  • Lines are early or late. The track is timed exactly as the file says. Fix the file with subtitle sync, then add it again.
  • Strange characters. Old encodings are converted to UTF-8 automatically. If it still looks wrong, re-save the file with the subtitle converter and a forced encoding.

Add several subtitle languages to one video

Each run adds one track, and the tracks a video already has are kept. To build a multi-language file, add the first language, then drop the result back in with the second subtitle file, and so on. The language you add last becomes the default when Show by default is on; the others stay one click away in the player’s menu.

Tips & troubleshooting

  • The subtitles are in another language? Translate subtitles keeps the timing, then add the result here.

  • Want two languages on screen at once? Merge SRT files into one dual-language subtitle first, then add that file here.

  • Want the subtitle file back out of a video later? Extract subtitles from MKV and MP4 saves every track as SRT, VTT or ASS.

  • Long MKV that a TV will not play? Add the subtitles as MP4, which most TVs and phones read.

  • Check what ended up in the file with media info online: it lists every subtitle track with its language.

Add Subtitles to Video (Soft Subs) FAQ

How do I add SRT to MP4?

To merge SRT with MP4, drop both files on this page, keep Save as on MP4 and press Add. The SRT becomes an MP4 subtitle track that QuickTime, iPhone, VLC and most TVs can switch on. The video is copied, not re-encoded.

How do I add SRT to MKV?

Drop both files, choose MKV and press Add. SRT, VTT and SBV files become a SubRip track; ASS files keep their styling. Existing audio tracks, subtitle tracks, fonts and chapters in the MKV are kept.

Does adding subtitles reduce video quality?

No, in almost every case. The picture and sound are copied bit for bit and only the subtitle track is added. The exceptions are portrait phone videos saved as MKV, WebM output from H.264 video, and rare MP4 inputs whose streams cannot be copied.

Why are my subtitles not showing on Instagram or TikTok?

Those apps ignore subtitle tracks inside a video. For social media, burn subtitles into video so the text becomes part of the picture.

Can I add subtitles in several languages?

Yes. Add one language, then run the resulting video again with the next subtitle file. Every run keeps the tracks already in the file and adds one more, tagged with the language you picked.

Is your video uploaded anywhere?

No. Your video is processed by your own browser on your own device. There is no server that receives files, so nothing is uploaded, stored or shared. You can even switch to airplane mode once the page has loaded.

All subtitle tools