KOENJA

Convert SRT to VTT

Turn an .srt file into a WebVTT file that browsers can show with the HTML5 video tag.

Drop an SRT file here or paste subtitle text

Choose fileor paste with Ctrl + V

SRT VTT SMI

Files are processed in this browser. They are not uploaded to a server.

Why convert SRT to VTT

Browsers do not read SRT. The HTML5 <track> element only accepts WebVTT (.vtt) files. Video players built on the browser, such as Video.js and Plyr, and many course and video hosting platforms also expect VTT. If you have an SRT file from a transcription service or a subtitle site, you need to convert it before you can use it on the web.

The file is converted in your browser and is not uploaded.

How to convert SRT to VTT

  1. Drop the .srt file in the area above, or paste the subtitle text with Ctrl + V. VTT is already selected as the output format.
  2. Check the list of subtitles and times.
  3. If the subtitles are out of sync, enter a timing shift. A negative value moves them earlier, a positive value moves them later.
  4. Click Save subtitles. The .vtt file is saved as UTF-8.

What is different in VTT

  • The file starts with a WEBVTT header line.
  • Times use a period instead of a comma: 00:01:02.500 instead of 00:01:02,500.
  • Cue numbers are optional.

The text itself does not change, so nothing is lost in the conversion.

Adding the VTT file to a web page

Place the .vtt file on the same server as the page, then add a track element inside the video tag:

<video controls src="video.mp4"><track kind="subtitles" src="subs.vtt" srclang="en" label="English" default></video>

The VTT file must be served from the same site as the page, or from a server that allows cross-origin requests. Opening the page directly from your disk (file://) usually blocks the track, so test it on a local or real web server.

SRT files with broken characters

SRT files from older sources are sometimes saved in a legacy encoding such as EUC-KR or Shift_JIS instead of UTF-8. The tool detects these and shows the text correctly in the list. The VTT file is always saved as UTF-8, which is what browsers expect. If the list still shows garbled text, open the SRT in a text editor, save it as UTF-8 and try again.

FAQ

Can I convert VTT back to SRT?
Yes. Drop the .vtt file and choose SRT as the output format.
Does the VTT keep my line breaks?
Yes. Each subtitle keeps its text and line breaks. Only the header and the time notation change.
The subtitles do not show in my browser.
Check that the track tag has kind="subtitles" and a correct src path, and that the page is served over http or https, not opened as a local file.

Other tools