Skip to content
Trustample

VTT to SRT converter

Web captions into the universal format editors and players accept.

Last updated 17 August 2026

Editors, offline players and localisation vendors still ask for SRT. This converter removes the WEBVTT header, the NOTE and STYLE blocks and the cue settings, turns the decimal points in timestamps back into commas, renumbers every cue in sequence, and returns a clean file. It runs in your browser and nothing is uploaded. What it deliberately throws away, and the one thing worth rescuing first, is set out below.

What the conversion discards, and why that is right

Everything WebVTT can express beyond the words and their timings is removed, because SRT has no specification for any of it. That means cue settings for position and alignment, STYLE blocks carrying CSS, region definitions, NOTE comments, class tags and voice tags all go. Keeping them would produce a file that is not valid SRT and that each player would then interpret differently or refuse outright.

Some players do honour a handful of HTML tags inside SRT, commonly italic, bold, underline and a font colour tag. That behaviour is a convention rather than part of any standard, and it varies by player and by version. Building a workflow on it means captions that look correct in VLC and wrong in the editing suite, so the safer position is to let the editor apply styling to the subtitle track after import, which is what editors are built to do.

One loss is worth acting on before you convert. If the WebVTT used voice tags to mark who is speaking, those speaker names disappear completely, because the name lives inside the tag rather than in the caption text. When a transcript has two or more speakers and the names matter, rewrite them into the visible text first, in the form of the name followed by a colon at the start of the line. It takes a find and replace and it survives every format from that point on.

The timestamp forms that quietly break SRT

WebVTT allows a timestamp to omit the hour when the cue falls in the first hour, so 04:31.200 is legal and means four minutes and thirty one seconds. SRT parsers expect hours, minutes, seconds and milliseconds every time. This is the most common reason a hand edited file imports with no captions and no error message, and the converter expands every short timestamp to the full form rather than passing it through.

Cue numbering is the second one. WebVTT cues can be unnumbered, or carry a text identifier instead of a number. SRT expects plain integers counting up from one with no gaps. A file that keeps text identifiers, or that skips numbers because cues were deleted by hand, causes some players to stop rendering at the first gap and give no reason. Renumbering from one is part of the conversion for exactly that reason.

The decimal separator is the difference everyone knows about and it is genuinely trivial: a full stop becomes a comma. It is worth saying plainly that this alone is not what breaks files. If a converted file misbehaves, the timestamp form and the numbering are the places to look first.

Where SRT is still the only reliable choice

Video editors are the main reason this conversion exists. Premiere Pro, DaVinci Resolve and CapCut all import SRT dependably, while WebVTT support differs between versions and sometimes between the desktop and mobile builds of the same product. When a deadline depends on the file opening, SRT is the format that opens.

Command line work leans the same way. Burning subtitles permanently into a video with ffmpeg is most direct from an SRT file, and the tooling around it assumes that format. Broadcast and localisation suppliers generally specify SRT in their delivery requirements as well.

If you are converting because a platform rejected WebVTT, it is worth reading our SRT to VTT guide in the other direction first. It documents the reasons a valid WebVTT file fails to display, several of which have nothing to do with the file and are fixed in a minute once you know where to look.

Frequently Asked Questions (FAQs)

Will VTT styling and positioning survive?

No. SRT has no standard styling, so cue settings (align, position) and STYLE blocks are removed. That's the correct conversion: editors apply their own styling to the subtitle track.

My VTT has timestamps like 01:02.500 without hours. Handled?

Yes. WebVTT allows a timestamp to omit the hour when the cue falls inside the first hour, and SRT does not. Every short timestamp is expanded to the full 00:01:02,500 form before the file is written, which is the single most common reason a hand edited file imports with no captions and no error.

Is this really free? What's the catch?

Really free, no signup. It costs us nothing to run since it's your browser doing the work. The 'catch' is the footer link: if you ever need subtitles made from scratch, we'd like you to remember who gave you the free converter.

Can I convert many files at once?

One at a time here. If you're doing this in bulk you're probably also generating subtitles regularly, and Trustample exports both formats from the same transcript, which removes the conversion step entirely.

More free subtitle tools

Need subtitles made from a recording? Generate SRT from any audio or video with 60 free minutes every 30 days.

Chat with us