· 5 min read
How to Convert WebVTT Subtitles Into SRT Format
Heshan Fernando
Co-founder & COO
A subtitle file exported as WebVTT — the format most web video players and browser-based tools default to — often needs to become SRT instead, since SRT remains the format most video editing software, media players, and upload workflows actually expect. The two formats are close cousins, both built around timestamped text cues, but they’re not interchangeable as-is: WebVTT uses a period in its timestamps where SRT expects a comma, WebVTT doesn’t require sequential cue numbering the way SRT does, and WebVTT supports header and styling metadata that SRT has no equivalent for.
Manually rewriting a subtitle file’s timestamps and structure to fix these differences is exactly the kind of repetitive, detail-sensitive editing that’s easy to get wrong across a file with more than a handful of cues.
What converting WebVTT to SRT actually involves
WebVTT and SRT both structure subtitles as a sequence of timed cues — a start and end timestamp paired with the text to display during that interval — but they differ in specific formatting details that matter for compatibility. WebVTT timestamps use a period before the milliseconds (00:01:23.456), while SRT requires a comma in that same position (00:01:23,456). WebVTT doesn’t strictly require each cue to be numbered sequentially, while SRT format expects exactly that. WebVTT can also include a header line and optional styling or positioning metadata that has no direct SRT equivalent and needs to be stripped out during conversion rather than carried over incorrectly. Getting the conversion right means handling all of these differences consistently across every single cue in the file, not just the first few — a mistake introduced partway through, like an inconsistent timestamp format or a numbering gap, can make the resulting SRT file fail to load correctly wherever it’s used next.
This matters in genuinely practical workflows — moving a subtitle file from a web-based export into video editing software, or preparing captions for a platform that specifically expects the SRT format rather than WebVTT.
Why people get stuck here
- WebVTT and SRT timestamps use different punctuation for milliseconds. A period versus a comma before the milliseconds value looks like a tiny difference, but SRT parsers are typically strict about it, and getting it wrong breaks the file.
- SRT requires sequential cue numbering that WebVTT doesn’t strictly enforce. A WebVTT file without consistent numbering needs that structure added during conversion, not just carried over as-is.
- WebVTT header and styling metadata has no direct SRT equivalent. This content needs to be recognized and stripped during conversion, rather than accidentally left in a format that doesn’t support it.
- Manually editing every cue in a longer subtitle file is tedious and mistake-prone. A file with dozens or hundreds of cues means the same formatting fix needs to be applied consistently that many times if done by hand.
What a good VTT to SRT converter looks like
Correctly reformats timestamps for every cue
Converting the period-to-comma millisecond formatting consistently across the entire file, not just some cues, is essential for the result to actually parse correctly.
Adds proper sequential numbering
Generating the sequential cue numbers SRT requires, even when the source WebVTT file didn’t strictly include them, produces genuinely valid SRT output.
Strips WebVTT-specific metadata that SRT doesn’t support
Removing header and styling content that has no SRT equivalent avoids leaving behind formatting that could break or confuse an SRT parser.
Common mistakes to avoid
- Manually rewriting timestamps and cue numbering across a subtitle file with more than a handful of cues.
- Leaving WebVTT-specific header or styling content in a file meant to be valid SRT.
- Missing a timestamp’s period-to-comma conversion partway through a manual edit, breaking that specific cue.
- Not verifying the converted SRT file actually loads correctly in its intended destination before relying on it.
How to do it with VTT to SRT
Online Tool Store’s VTT to SRT takes pasted WebVTT subtitle contents and returns numbered, comma-formatted SRT output ready to download, entirely in your browser.
- Paste your WebVTT subtitle file contents.
- Let it convert timestamps, add sequential numbering, and strip WebVTT-specific metadata.
- Review the properly formatted SRT output.
- Download the finished SRT file, ready for your video editor or upload workflow.
Because every formatting difference — timestamp punctuation, cue numbering, metadata stripping — is handled consistently across the whole file, the resulting SRT is valid and ready to use without manual cleanup.
Frequently asked questions
What’s the actual difference between WebVTT and SRT timestamps?
WebVTT uses a period before the milliseconds value, while SRT requires a comma in that same position — a small but strict formatting difference that needs to be applied consistently across every cue for the SRT file to parse correctly.
Does SRT support the styling and positioning metadata that WebVTT has?
No — SRT has no direct equivalent for WebVTT’s header and styling metadata, so that content needs to be recognized and stripped out during conversion rather than carried over into an unsupported format.
Why would I need to convert WebVTT to SRT instead of just using WebVTT everywhere?
Many video editing applications, media players, and upload workflows specifically expect SRT format rather than WebVTT, so converting is often necessary to move a subtitle file between different tools in a production pipeline.
Final thought
WebVTT and SRT are close but not identical, and getting every formatting difference right across a whole subtitle file is tedious to do by hand. Convert it properly, and get an SRT file that’s actually ready to use wherever you need it.