SRT or VTT: which subtitle file do you actually need?
The two formats carry the same timings and differ in about four ways. Which one you want depends entirely on where the file is going next.
Every tool that exports subtitles offers both SRT and VTT, and almost none of them tell you which to pick. The honest answer is that they carry the same information, and the choice comes down to what opens the file next.
What actually differs
The decimal separator is the one that bites people: SRT writes
00:00:01,240, VTT writes 00:00:01.240 — a period, not a comma. It’s the
single most common reason a file gets rejected. Rename a .srt to .vtt
without touching the contents and every timestamp in it is now invalid.
Beyond that, a WebVTT file has to begin with the line WEBVTT, where an SRT
file starts straight in on cue number 1, and SRT numbers each of its blocks
with a sequence number that VTT makes optional and usually leaves out. VTT
can also do more — cue positioning, alignment, region definitions, styling
blocks, cue identifiers you can target from CSS — none of which SRT has, and
in practice most subtitle files use none of it either.
Here is the same cue in both:
1
00:00:00,100 --> 00:00:03,712
If you can hear this sentence, the protocol works.
WEBVTT
00:00:00.100 --> 00:00:03.712
If you can hear this sentence, the protocol works.
So which one
For the web, VTT — it’s the only format the HTML <track> element accepts,
so if the audio or video is going to play in a browser, that settles it. For
everything else, SRT: video editors, YouTube’s subtitle uploader, social
platforms, transcription workflows, burn-in tools all lean on the format with
thirty years of support behind it, and when a tool only takes one, it’s SRT.
If you’re not sure, take both. They’re a few kilobytes each, and exporting both now is cheaper than re-synthesising later — speech synthesis isn’t deterministic, so a second render produces slightly different audio and your old subtitles will drift against it.
A note on cue length
Neither format tells you how long a cue should be, which is where most automatically generated subtitles go wrong. Timings that are technically perfect are still unreadable if a cue holds thirty words.
The rule of thumb worth following: break at roughly 42 characters, and never let a single cue run longer than about five seconds. That is what this tool does — cues are split at whichever limit comes first, so the file you download is readable rather than merely accurate.
→ Subtitle timing rules: cue length, reading speed and line breaks
