SRT → VTT
To convert SRT to VTT, upload your .srt file and the tool adds a WEBVTT header and rewrites each HH:MM:SS,mmm comma timecode to HH:MM:SS.mmm with a dot. SRT uses integer cue numbers; VTT makes them optional. Everything runs in your browser, so the file is never uploaded.
Last updated: 2026-06-11
Drop your .srt file here, or click to browse
Converts in your browser — nothing is uploaded
Drop your .srt file onto the converter or click to browse. It parses every cue and shows the cue count.
Click Convert to VTT. The converter adds the WEBVTT header and changes each comma timecode to a dot, instantly and in your browser.
Preview the result and download the .vtt file, ready for HTML5 video, YouTube, or any WebVTT-aware player.
The two formats hold the same cues but write them differently. The table below shows every difference the converter handles when it turns a .srt file into a .vtt file.
| Detail | SRT | VTT |
|---|---|---|
| File header | None | WEBVTT |
| Millisecond separator | , (comma) | . (dot) |
| Timecode | 00:01:23,456 | 00:01:23.456 |
| Cue numbers | Required, sequential integers | Optional |
| HTML5 video <track> | Not accepted | Native format |
| Cue settings & styling | No | Yes (position, line, CSS) |
WebVTT is the format browsers read in the HTML5 video <track> element, so any subtitle you want to play on a web page needs to be .vtt. SRT remains common for desktop players like VLC and for sharing files, but it will not load in a browser player without conversion.
VTT also supports cue settings — position, alignment, and CSS styling — that SRT cannot express. Converting an SRT file gives you a valid base you can then extend with those settings if you need them.
HH:MM:SS,mmm timecodes with a comma before the milliseconds.WEBVTT header and uses a dot before milliseconds.<track> element.00:01:23,456; VTT writes 00:01:23.456 — same instant, different punctuation.Drop your .srt file onto the converter above, click Convert to VTT, and download the .vtt file. It runs entirely in your browser — the converter adds the WEBVTT header and rewrites each timecode from comma to dot milliseconds. Nothing is uploaded to a server.
SRT (SubRip) starts each cue with a sequential integer number and uses HH:MM:SS,mmm timecodes with a comma before milliseconds. VTT (WebVTT) begins the file with a WEBVTT header line, uses HH:MM:SS.mmm with a dot, and makes cue numbers optional. VTT is the format HTML5 video expects.
The <track> element in HTML5 video only accepts WebVTT. An .srt file has no WEBVTT header and uses comma milliseconds, so the browser rejects it. Converting to .vtt adds the header and dot timecodes the player needs.
No. The timing values stay identical; only the punctuation changes. A cue at 00:01:23,456 in SRT becomes 00:01:23.456 in VTT — the same moment, written with a dot instead of a comma. Your subtitles stay in sync with the video.
Yes. It is free with no account, no upload, and no install. The conversion happens locally in your browser using JavaScript, so your subtitle text never leaves your device.
SRT cue numbers are optional in WebVTT, so the converter drops them by default and writes clean WEBVTT cues. The order and timing of every cue is preserved exactly.
Yes. Use the VTT to SRT converter to go the other direction. It renumbers cues sequentially and switches the dot back to a comma in the timecodes.