VTT → SRT
To convert VTT to SRT, upload your .vtt file and the tool drops the WEBVTT header, numbers every cue, and rewrites each HH:MM:SS.mmm dot timecode to HH:MM:SS,mmm with a comma. SRT needs sequential 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 .vtt file here, or click to browse
Converts in your browser — nothing is uploaded
Drop your .vtt file onto the converter or click to browse. It parses every cue and shows the cue count.
Click Convert to SRT. The converter drops the WEBVTT header, numbers each cue, and changes every dot timecode to a comma — instantly, in your browser.
Preview the result and download the .srt file, ready for VLC, editing software, or any SubRip-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 .vtt file into a .srt file.
| Detail | VTT | SRT |
|---|---|---|
| File header | WEBVTT | None |
| Millisecond separator | . (dot) | , (comma) |
| Timecode | 00:01:23.456 | 00:01:23,456 |
| Cue numbers | Optional | Required, sequential integers |
| Cue settings & styling | Yes (position, line, CSS) | No (dropped) |
| Desktop players (VLC, etc.) | Limited | Widely supported |
SubRip (.srt) is the most widely supported subtitle format for desktop players like VLC, media servers like Plex, and many video editors. If a tool refuses your .vtt file, converting to .srt usually fixes it because SRT is older and more universally parsed.
SRT cannot carry VTT cue settings or CSS styling, so the converter keeps only the text and timing. For each cue it writes a sequential integer number, then the comma timecodes that SubRip expects.
WEBVTT header and uses a dot before milliseconds.HH:MM:SS,mmm timecodes with a comma before the milliseconds.00:01:23.456; SRT writes 00:01:23,456 — same instant, different punctuation.Drop your .vtt file onto the converter above, click Convert to SRT, and download the .srt file. It runs entirely in your browser — the converter drops the WEBVTT header, numbers every cue, and rewrites each dot timecode to comma milliseconds. Nothing is uploaded.
VTT (WebVTT) starts the file with a WEBVTT header, uses HH:MM:SS.mmm timecodes with a dot, and treats cue numbers as optional. SRT (SubRip) has no header, uses HH:MM:SS,mmm with a comma, and requires a sequential integer number above every cue.
Many desktop players and older editing tools expect SubRip (.srt). A .vtt file uses dot milliseconds and a WEBVTT header those tools may not parse. Converting to .srt removes the header, renumbers the cues, and switches to comma timecodes they understand.
No. The timing values are identical; only the punctuation changes. A cue at 00:01:23.456 in VTT becomes 00:01:23,456 in SRT — the same moment, written with a comma. Your subtitles stay in sync.
Yes. It is free with no account, no upload, and no install. The conversion runs locally in your browser with JavaScript, so your subtitle text never leaves your device.
SRT has no place for VTT cue settings (position, line, alignment) or CSS styling, so those are dropped. The cue text and timing are kept, and each cue gets a sequential integer number.
Yes. Use the SRT to VTT converter to go the other direction. It adds the WEBVTT header and switches the comma back to a dot in the timecodes.