Free tool

Convert SRT to WebVTT (.vtt)

Turn a plain .srt file into WebVTT for HTML5 video, YouTube uploads or any platform that expects .vtt captions.

Nothing stored afterward No account needed SRT (SubRip) → WebVTT

Your file is processed and sent straight back — never saved on our servers.

Prefer not to upload your file?

The AI Subtitle Studio desktop app has this same Tools section built in — plus AI transcription, translation and batch processing for a whole season at once, all running locally on your Mac or PC.

Get the desktop app
How it works

Upload SRT (SubRip), get WebVTT back

Upload one file

SRT (SubRip) — .srt.

Converted instantly

Parsed and rewritten as WebVTT in memory, no queue and no waiting.

Download the result

The converted file downloads straight to your device.

About this conversion

Converting SRT (SubRip) to WebVTT

WebVTT is the caption format built into the HTML5 <track> element, and the format most web-based video players, learning platforms and upload forms (including YouTube's) expect by default. SRT is close in spirit but not valid WebVTT on its own — a proper .vtt file needs a WEBVTT header line as the very first thing in the file, and its timestamps use a period before the milliseconds instead of SRT's comma.

Converting from SRT adds the required header, rewrites every timestamp in WebVTT's period-decimal style, and keeps the cue text and its exact timing untouched. The result is a standards-correct .vtt file any HTML5 player, learning management system or upload form that specifically wants WebVTT will accept.

FAQ

Questions about this converter

Why won't a website accept my .srt file directly?
Some platforms and HTML5-based players are built specifically around the WebVTT spec and reject anything that isn't a properly headered .vtt file, even though the underlying content is nearly identical to SRT.
Does this add any styling or positioning to the captions?
No — the output is a plain WebVTT file with no cue settings, positioning or styling added. It carries over exactly what the SRT had: text and timing.
Will cue numbers be kept?
WebVTT cue identifiers are optional and rarely needed by players, so the output doesn't include them — this matches how most .vtt files found in the wild are written.
Is there an API for this?
Yes — see the API reference for the srt-to-vtt endpoint and curl examples.