The same job, different syntax
Both SRT and WebVTT store a list of cues, and each cue pairs a time range with some text. The most visible difference is the timing separator: SRT uses a comma (00:00:01,000) while WebVTT uses a dot (00:00:01.000).
WebVTT files also start with a WEBVTT header, and WebVTT interprets block structure more strictly than most SRT readers.
When SRT wins
SRT is the closest thing to a universal subtitle format. Players, editors, subtitling platforms and learning tools accept it almost everywhere, and its simple structure makes it easy to hand-edit.
- You need maximum player and platform compatibility
- You exchange files with a subtitle service or a freelancer
- You want a format people can open and fix by hand
When VTT wins
WebVTT is designed for the web. The HTML5 video element consumes VTT directly through the track element, and the format standardizes cue settings such as positioning and vertical text.
- You publish captions on a web page or platform that consumes VTT
- You need cue positioning, styling or vertical text
- You want strict, machine-readable timing
Practical notes on converting between them
When converting, the timing block is the main thing to fix: replace commas with dots (or the reverse) and add or remove the WEBVTT header. Cue numbering, however, is significant in SRT but optional in WebVTT.
A careless converter can silently renumber cues, change timing precision or break the encoding of accented characters. Check a small sample before converting a long file.
What Polyglot Tool offers today
Polyglot Tool currently translates SRT files. VTT translation is planned but not implemented, so this guide does not claim it works today.
If your source is SRT, you can translate it in the browser while keeping numbering, timestamps and structure intact. If your source is VTT, convert it to SRT first, translate, and convert back when the target platform requires VTT.
An SRT cue
1
00:00:01,000 --> 00:00:04,000
Hello and welcome.
A VTT cue
WEBVTT
00:00:01.000 --> 00:00:04.000
Hello and welcome.
| Aspect | SRT | WebVTT (VTT) |
|---|---|---|
| Timing separator | Comma (00:00:01,000) | Dot (00:00:01.000) |
| File header | None required | WEBVTT required |
| Line breaks | CRLF typical on Windows | CRLF required by the spec |
| Metadata | Not supported | Standardized cue settings, styles and captions |
| Native web video | No | Yes (the video element) |
| File extension | .srt | .vtt |