Convert WebVTT subtitles to SRT

Drop your .vtt file and get an .srt that video editors, players and upload forms actually accept.

  1. 1File
  2. 2Conversion
  3. 3Download

What this tool does

WebVTT is what browsers speak. Nearly everything else — Premiere, DaVinci, VLC, the subtitle upload box on most platforms — expects an SRT, and hands you a vague error when you feed it a VTT. Going backwards is not just swapping dots for commas: a VTT can carry things that have nowhere to go in an SRT.

Positioning settings after the timestamp, NOTE and STYLE blocks, cue names, voice tags. Drop them in as-is and you get subtitles that read «line:90% align:start» on screen. Here each one is dealt with on its own terms — the voice tags, for instance, become «Marta:» in front of the line, which is what an SRT can actually show.

What we handle that others don't

  • NOTE, STYLE and REGION blocks removed. They're not subtitles and they must not end up inside the text.
  • Positioning settings (line, align, position) dropped: an SRT has nowhere to put them.
  • Voice tags <v Marta> turned into «Marta:», so you don't lose who's speaking.
  • Timestamps without hours (01:23.400) — legal in VTT, illegal in SRT — expanded properly.

How it works

  1. 1

    Drop the .vtt

    Or paste it. Headers, notes and styles are stripped as it's read.

  2. 2

    Check the result

    Numbered from one, with commas in the milliseconds and nothing that an SRT can't hold.

  3. 3

    Download the .srt

    Ready for your editor, your player or an upload form.

In detail

What an SRT cannot carry

A WebVTT can bring along things an SRT has no place for, and what matters is what happens to them rather than letting them through. The positioning settings after the timestamp — line, align, position — can't be translated into anything, so they're dropped. NOTE and STYLE blocks aren't subtitles and mustn't end up inside the text either, so they go.

Voice tags are the interesting case. In a VTT the speaker is marked with a tag around the line; in an SRT that doesn't exist. Rather than throw it away — which would lose who says what — it becomes the name in front of the line, followed by a colon, which is how dialogue has always been written in a subtitle.

The programs that only take SRT

Premiere, DaVinci Resolve, Final Cut, VLC, and the upload form on almost any platform that isn't your own website. None of them bothered adding WebVTT, because SRT has worked since the nineties and covers what they need.

The symptom is always the same: you drag the file in, the program says something vague about an unrecognised format, and there are no further clues. Your VTT isn't broken; that program just doesn't read the format. The conversion takes a second and the problem goes away.

Questions

And if what you have is the video?

Upload it and you'll get the transcript with timestamps, the speakers separated by name and a summary with the key points. You can start without an account.