SRT vs VTT — Which Subtitle Format to Use
They are cousins: WebVTT was standardised later, visibly inspired by SRT, and the two agree on the essential shape of a cue. The differences that remain decide which one a given player will accept — and they are small enough that conversion is trivial, which is why the VTT to SRT and SRT to VTT pages exist as one-click fixes.
Quick answer: Use SRT for editors, desktop players and YouTube; use VTT for HTML5 web video, where the <track> element requires it. Same cues, different syntax: VTT has a WEBVTT header and dot milliseconds; SRT starts straight with cue 1 and uses a comma.
The syntax differences
- Header: VTT must start with “WEBVTT”; SRT starts directly with the first cue number
- Milliseconds: VTT uses a dot (00:00:01.000); SRT uses a comma (00:00:01,000)
- Cue IDs: optional identifiers allowed in VTT; SRT uses plain numbers
- Extras: VTT supports NOTE blocks, STYLE sheets and cue settings (position, align, line); SRT supports none
Which one your destination wants
Desktop players and professional editors are SRT country — VLC, Premiere, Resolve, YouTube uploads. Browsers are VTT country: the HTML5 <track> specification defines WebVTT, and Safari rejects anything else. Streaming-industry exchange runs on TTML, not either of these, but that is a broadcast workflow problem.
Converting between them
Because the cue model is identical, conversion is mechanical: change the millisecond separator, add or remove the header, drop or keep settings. Timings never move. Any converter — including this site's — does it losslessly in that sense; the only information that ever vanishes is VTT's optional styling when headed into plain SRT.