SRT to VTT Subtitle Converter

Convert subtitles between SubRip (.srt) and WebVTT (.vtt) — both directions, auto-detected. Runs entirely in your browser; nothing is uploaded.

Converted subtitles

What this tool does

Converts subtitle files between the two most common plain-text formats — SubRip (.srt) and WebVTT (.vtt) — in either direction. Paste your subtitles, and the converter detects the format and produces the other one: SubRip for media players and re-encoding, WebVTT for the HTML5 <track> element and the web. Nothing is uploaded — it runs entirely in your browser, works offline, and needs no sign-up.

How to use it

  1. Paste the full contents of your .srt or .vtt file into the box.
  2. Leave Direction on auto to detect the input format and convert to the other, or force SRT → VTT / VTT → SRT.
  3. Copy the converted subtitles from the output and save them with the matching extension (.vtt or .srt).

SRT vs WebVTT — what actually changes

The two formats are almost identical line-oriented cue lists. The converter rewrites only what differs:

SubRip (.srt)WebVTT (.vtt)
Timestamp separatorcomma — 00:00:01,000period — 00:00:01.000
File headernonea leading WEBVTT line
Hours fieldalways HH:MM:SSHH:MM:SS or short MM:SS
Cue settingsnot supportedoptional, e.g. line:90% align:center

Going SRT → VTT adds the WEBVTT signature and switches commas to periods. Going VTT → SRT strips the WEBVTT header block, switches periods to commas, expands any short MM:SS.mmm timestamps to full HH:MM:SS,mmm, and drops WebVTT cue settings (SubRip has no equivalent). Cue numbers and the dialogue text are always kept verbatim, and Windows (\r\n) or Unix (\n) line endings are preserved.

Examples

SRT → VTT

1
00:00:01,000 --> 00:00:04,000
First line.

becomes

WEBVTT

1
00:00:01.000 --> 00:00:04.000
First line.

FAQ

Which format do I need?

Use WebVTT (.vtt) for subtitles shown in a web browser via the HTML5 <track> tag. Use SubRip (.srt) for desktop media players (VLC, MPV), uploading to most video platforms, and muxing into a video file.

Does it change the timing?

No. Only the timestamp format changes (comma vs period); the actual times stay the same, so the subtitles stay in sync.

What about WebVTT styling and positioning?

Cue settings after the timestamp (like line:90% or align:center) are dropped when converting to SRT, because SubRip doesn't support them. WebVTT styling blocks (STYLE, NOTE) in the header are removed too. Going the other way, SRT has no cue settings to add.

Is my file uploaded anywhere?

No. The conversion happens locally in your browser, so your subtitles never leave your device, and it keeps working offline once the page has loaded.

What format does it expect?

Standard SubRip or WebVTT: a cue number (optional in VTT), a --> timing line, then one or more lines of text, with a blank line between cues.

Developer & Automation Access

Run it from the terminal

Same engine as this page, headless — via the gizza CLI:

gizza tool srt-to-vtt "1
00:00:01,000 --> 00:00:04,000
First line of dialogue."

New to the CLI? Get gizza →

Open it by URL

Pre-fill and auto-run this tool with query parameters — the names match the API/CLI:

https://gizza.ai/tools/srt-to-vtt/?subtitles=1%0A00%3A00%3A01%2C000%20--%3E%2000%3A00%3A04%2C000%0AFirst%20line%20of%20dialogue.&direction=auto

Machine-readable descriptor: tool.json — title + parameters JSON Schema for agents.