Scriptery
Back to blog

SRT vs VTT — Differences and When to Use Each Subtitle Format

2026-08-07

The short answer

SRT (SubRip) is the old, universal subtitle format — almost every video editor and player reads it. VTT (WebVTT) is the newer web standard, required for subtitles on HTML5 <video> and supporting styling and positioning that SRT can't. If you're publishing to the web, use VTT. For editing software, uploads, and general compatibility, use SRT.

What SRT looks like

1
00:00:01,000 --> 00:00:04,000
Hello and welcome to the show.

Numbered cues, a time range with a comma before the milliseconds, then the text. That's it — no header, no styling.

What VTT looks like

WEBVTT

00:00:01.000 --> 00:00:04.000
Hello and welcome to the show.

It opens with a mandatory WEBVTT header, uses a dot before the milliseconds, and cue numbers are optional. VTT also supports positioning, voice/speaker tags, and styling that SRT ignores.

Key differences at a glance

  • Header — VTT requires WEBVTT on the first line; SRT has none. This is why simply renaming .srt to .vtt doesn't work.
  • Milliseconds — SRT uses a comma (00:01,500), VTT uses a dot (00:01.500).
  • Cue numbers — required in SRT, optional in VTT.
  • Styling & positioning — VTT supports it, SRT doesn't.
  • Web playback — HTML5 video needs VTT; SRT won't load in the browser.

How to convert between them (free)

You don't need software. Paste your file into the browser-based converters and it happens locally on your machine — nothing is uploaded:

  • SRT to VTT — adds the header and dot milliseconds for web playback.
  • VTT to SRT — renumbers cues and rewrites timings for editors that won't read VTT.
  • Remove timestamps — strip both down to plain text.

Where do subtitles come from in the first place?

If you don't have a subtitle file yet, generate one from the video or audio itself: paste a link or upload a file into Scriptery and export directly to SRT or VTT.