SRT to VTT Converter

Choose an .srt subtitle file, or paste its text, and get a WebVTT file with timestamps fixed and an optional time shift.

SRT to VTT

Your subtitle file is converted inside this page and never uploaded.

VTT result

What this tool does

To convert SRT to VTT, open the .srt file here or paste its text. The tool adds the WEBVTT header, changes each timestamp comma to a dot and writes the cues back out. You can also shift all the times by a number of seconds. Then download the .vtt file for use in an HTML5 video track.

Reads the cues of an SRT file and writes them as a WebVTT file with the required header and timestamp format.

Shifts every cue by the number of seconds you set, and reports the cue count and the end time.

How to use it

  1. Choose your .srt file, or paste the subtitle text.
  2. Optionally enter a shift in seconds; negative moves subtitles earlier.
  3. Check the VTT result and the cue count.
  4. Press Download .vtt or Copy VTT.

Why use this converter

Converts SRT to WebVTT with the header added and timestamp commas turned into dots, ready for an HTML5 video track. HTML5 video players read WebVTT, not SRT. The two formats are nearly identical, but a missing header or the wrong timestamp separator makes the browser ignore the whole file.

Why we built it

We built the SRT to VTT converter to add the header and turn timestamp commas into dots, with an optional time shift. Convert back with the VTT to SRT converter and add a video with add audio to video.

Handy alongside this: the Text to Speech and the Video to MP3.

Who this tool is for

  • Web developers adding captions to HTML video
  • Video editors converting subtitle files
  • Teachers preparing captioned lessons

When to use it

  • Adding captions to a video on your own website with the HTML5 track element.
  • Uploading subtitles to a player or platform that asks for WebVTT.
  • Correcting subtitles that appear a second or two late or early.
  • Cleaning up a subtitle file whose cue numbering or spacing is inconsistent.

How it works

An SRT cue is a number, a time range written 00:01:02,500 --> 00:01:05,000 and the text. A WebVTT cue has no required number, starts the file with the line WEBVTT, and writes times with a dot: 00:01:02.500 --> 00:01:05.000.

The converter parses each cue, applies any shift to both start and end, and rewrites it in the target format. A shift that would make a time negative is held at 00:00:00.000.

Basic styling tags such as <i> and <b> are kept as text. SRT has no positioning, so none is added.

What you give it, and what you get back

Input and output of SRT to VTT Converter
ItemDetails
InputAn .srt file, or its text pasted in. Cues with hour:minute:second,millisecond timestamps.
ShiftSeconds to add to every start and end time; use a negative number to move earlier.
OutputWebVTT text beginning with WEBVTT, with dot-separated milliseconds.
StatsThe number of cues found and the end time of the last one.

Issues you may run into

Common problems with SRT to VTT Converter
What you seeWhy it happensWhat to do
"No subtitle cues were found"The text does not contain lines with a --> time range.Check the file is plain-text SRT and not a different subtitle format.
Accented characters look wrongThe file was saved in an older encoding such as Windows-1252.Re-save the file as UTF-8 in a text editor and convert again.
Subtitles still out of syncThe delay is not constant (for example a different frame rate).A fixed shift fixes a constant offset only; use a dedicated tool for frame-rate drift.
Browser does not show the captionsThe track element is missing its kind and srclang, or the file is on another domain.Add kind="subtitles" and srclang, and serve the .vtt from the same site.

Assumptions and limitations

Frequently asked questions

How do I convert SRT to VTT?

Open the .srt file here and press Download .vtt. The tool adds the WEBVTT header and changes timestamp commas to dots.

What is the difference between SRT and VTT?

WebVTT is the web standard for captions. It starts with a WEBVTT header and uses dots in timestamps, while SRT numbers each cue and uses commas.

Can I fix subtitles that are out of sync?

Yes, if the delay is constant. Enter the number of seconds to shift - negative to move earlier - and download the result.

How do I use a VTT file on my website?

Add a track element inside your video element: <track kind="subtitles" src="captions.vtt" srclang="en" label="English" default>.

Is my subtitle file uploaded?

No. It is converted in your browser.

Can I convert VTT back to SRT?

Yes - use the VTT to SRT converter, which does the reverse and numbers the cues.