Add subtitles to a video

1. Drop a video here

or click to choose — MP4, MOV, M4V, WebM, MKV

Drop in a video and its subtitle file — SRT, VTT or ASS — or type the lines yourself. The preview shows the subtitles on the video exactly as they will be written; pick a style and size, shift the timing if it is off, and the page draws them into every frame and saves an MP4. Instagram, WhatsApp, TikTok and every player show them, because they are now part of the picture. No watermark, no account, nothing uploaded.

How to add subtitles to a video

  1. Drop the video (MP4, MOV, M4V, WebM or MKV) into the first box.
  2. Drop the subtitle file into the second box — .srt, .vtt or .ass — or paste or type the lines.
  3. Play or drag through the video. The subtitles appear on top exactly as they will be written.
  4. Choose a style (white with a black outline, white on a dark box, or yellow), a size and the position.
  5. Press Burn subtitles into video, check the result and download the MP4.

Typing subtitles yourself

A subtitle file is plain text. Each line on screen is a number, a timing line, the words, and a blank line:

1
00:00:00,500 --> 00:00:03,000
Welcome to the kitchen.

2
00:00:03,200 --> 00:00:06,000
Today: bread with three ingredients.

Pause the video where a line should begin and read the time from the player. A line of about 40 characters is comfortable to read; longer lines wrap onto a second row automatically. Two to six seconds on screen per line works for most speech.

Burned-in or a separate file?

Where the video is goingUse
Instagram, TikTok, WhatsApp, X, LinkedIn feedBurned in — this page
A presentation, a screen at an event, a phone galleryBurned in
YouTubeUpload the .srt in YouTube Studio; viewers can turn it off and it is searchable
Your own website’s <video>A .vtt file in a <track> — SRT to VTT
A film for VLC, Plex or a TVKeep the .srt next to the video with the same name

Burned-in subtitles (also called hard-coded or open captions) cannot be switched off or translated by the viewer, but they show everywhere, including in apps that throw away subtitle tracks when you post.

Files that look fine but show nothing

When we tested subtitle files in Chrome 155, several common mistakes produced no subtitles and no error. One was a VTT with commas in its timestamps. Others were timestamps like 00:00:01.5 and an SRT saved in Windows-1252 (accents became �). An SRT with no blank line between cues put the next cue’s number inside the text. This page reads all of those correctly. A line starting with {\an8} is placed at the top, as VLC would show it, and other styling tags are ignored rather than printed. The line under the subtitle box says what it found and fixed.

What happens to the video

Each frame is decoded by your browser, the subtitle for that moment is drawn on top, and the frame is encoded again as H.264. That is the only way to put text into the picture. Width, height and frame timing stay the same. The bitrate is the original plus 15%, because the sharp edges of letters need a little extra data; the sound is re-encoded as AAC. Afterwards the page lists how many subtitle lines fell inside the video and in how many frames text was drawn, so a timing mistake shows up as a number, not as a surprise later.

The text uses the fonts on your device, so Turkish, Arabic, Hindi, Chinese, Japanese and emoji work without downloading anything. Tools that run FFmpeg in the browser have to download it first, along with fonts for the scripts they support.

Privacy

The video and the subtitle file stay on your device. Nothing is uploaded, there is no account and no watermark. To change the size of the result for a particular app, use Resize video or Crop video.

Frequently asked questions

How do I add subtitles to a video?

Drop the video into the first box and the .srt (or .vtt, .ass) file into the second. Play or scrub the video in the preview to check the timing, choose a style and size, then press Burn subtitles into video. When it finishes, check the result in the player and download the MP4.

I don&rsquo;t have a subtitle file. Can I type the subtitles?

Yes. Type them into the Subtitles box in SRT form: a number, a timing line such as 00:00:01,000 --> 00:00:03,500, the text, then a blank line. The preview updates as you type. Pause the video where a line should start to read the time from the player.

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

Burned-in (hard-coded, open) subtitles are drawn into the picture: they always show and cannot be turned off, which is what you want for social media, where apps ignore subtitle tracks. Soft subtitles are a separate track or file that the viewer switches on. For a website’s <video> tag, a separate .vtt file is better — SRT to VTT makes one.

My subtitles are out of sync. Can I fix that?

Type the difference in seconds into Shift timing: a positive number makes them appear later, a negative one earlier. The preview updates straight away, so you can check it before encoding.

Do accents, Arabic, Chinese and emoji work?

Yes. The text is drawn by your browser with the fonts already on your device, so any script your device can show will appear. Older SRT files saved in Windows-1252 are recognised and read correctly, so é does not turn into �.

Does it lower the video quality?

The picture has to be encoded again to include the text. The page uses the original bitrate plus 15% (at least 1.5 Mbps), because sharp letter edges need extra data, and keeps the original size and frame timing. The sound is re-encoded as AAC.

Is there a watermark or a length limit?

No watermark and no account. Nothing is uploaded; the limit is your device’s speed and memory. A few minutes of 1080p is fine on a laptop; long films take a while.