Convert SRT to VTT
Convert SRT to VTT free in your browser. No upload, no signup, no watermark. Files stay on your device.
drop a .srt file
or click to browse
related
more subtitle converters
see all subtitle converters →guide
how to convert srt to vtt
Drop your SRT file
Drag your SRT file into the drop zone above, or click the box to pick a file from your computer or phone. The browser reads the file directly — nothing uploads.
Click Convert
The page runs srt-webvtt on your device to decode the SubRip Subtitles and encode it as WebVTT. Most conversions finish in a few seconds; large or codec-heavy files (RAW, video) can take longer.
Download the VTT file
When the conversion finishes, the VTT file is ready to download. Save it anywhere on your device.
FAQ
common questions
Why won't my SRT subtitles display on my HTML5 video or website?
The HTML5 <track> element only accepts WebVTT files — it silently ignores SRT even if you rename the extension. Converting SRT to VTT (adding the WEBVTT header and changing the timestamp commas to periods) is required for browser playback, HLS streams, and most JavaScript video players.
Is converting SRT to VTT lossless?
Effectively yes for content. Every cue, line break, and timing value is preserved exactly, and basic <b>, <i>, <u> tags carry over unchanged. The only structural changes are the mandatory WEBVTT header at the top of the file and replacing the comma decimal separator in timestamps with a period (00:00:01,500 → 00:00:01.500).
Can I just rename my .srt file to .vtt?
No — renaming the extension does not fix the format, and most browsers will reject the file or display nothing. A real conversion must rewrite the timestamps from comma to period and prepend the WEBVTT line; without those changes the file fails the WebVTT parser.
Do I need to re-time my subtitles when converting?
No — all cue start and end times are preserved one-to-one; only the decimal separator character changes. Your sync stays identical, so if the SRT was in sync with the video, the VTT will be too.
Why are accented or non-Latin characters garbled after conversion?
WebVTT requires UTF-8, and many older SRT files are saved in Windows-1252 or another regional codepage, which produces mojibake (e.g. 'café' → 'café') when read as UTF-8. The converter re-encodes to UTF-8 automatically; for browsers it's safest to save without a BOM, since a BOM before WEBVTT is a spec violation some parsers reject.