SRT to VTT converter
HTML5 video (the <track> element) only understands WebVTT. Drop .srt files here to get valid .vtt files with the WEBVTT header and full-stop timestamps, ready for your website or player.
- Instant, in your browser
- Batch files
- Nothing uploaded
Using the VTT on a web page
Add the file as a track inside your video element:
<video controls src="talk.mp4"> <track kind="subtitles" src="talk.en.vtt" srclang="en" label="English" default> </video>
Serve the file with the MIME type text/vtt and from the same origin as the page (or with CORS headers), otherwise browsers silently ignore it. Encoding must be UTF-8; the converter always writes UTF-8.
Where VTT is required
- HTML5
<video>and players built on it (Video.js, Plyr, JW Player, Mux, Cloudflare Stream). - HLS streaming (subtitle playlists use WebVTT segments).
- Brightcove, Wistia and many LMS platforms, which accept VTT first.
Questions people ask
How do I convert SRT to VTT?
Drop the .srt above or paste it. The WebVTT version appears instantly; press Download .vtt.
What is the difference between SRT and VTT?
VTT adds a WEBVTT header, uses a full stop instead of a comma in timestamps, and supports positioning and styling. SRT is simpler and more widely supported by desktop players and editors.
Why is my VTT not showing in the browser?
Usually the server sends the wrong MIME type, the file is on another domain without CORS, or the track lacks the default attribute. The file itself from this converter is valid WebVTT.