SRT to VTT Converter
Convert SRT subtitles to WebVTT for the HTML5 <track> element, YouTube, Vimeo and web video players. Files are converted in your browser and never uploaded.
- Instant
- Batch to ZIP
- No upload
- Free
Drop SRT files here
or
SRT · VTT · ASS / SSA · SBV · SUB · TTML · LRC · TXT
Your subtitles are processed on your device and are never uploaded.
How to convert SRT to VTT
Three steps, and the result updates while you change options.
- 1
Add your SRT files
Drop one or up to 100 files, use the file picker, paste the subtitle text or try the sample file. The character set of older files is detected automatically.
- 2
Set the options
Decide whether to add cue numbers, keep top positions, remove all formatting or write short timestamps. The "Output file" view shows the exact WebVTT text.
- 3
Download the VTT
Download the .vtt file or copy it to the clipboard. Several files are delivered together as one ZIP archive.
A real conversion, not just a renamed file
Everything WebVTT requires is handled for you.
Valid WebVTT
Adds the WEBVTT header and writes timecodes with a dot, as the format requires.
Safe characters
Escapes &, < and > in the text so that browsers do not misread them as markup.
Formatting kept
Keeps <i>, <b> and <u>; removes <font> tags, which WebVTT does not know.
Top positions
Turns {\an8} top-of-screen subtitles into the cue setting line:5%.
Cue numbers
Optionally adds a number to every cue as an identifier.
Short timestamps
Optionally writes short mm:ss.ttt timestamps without the hours.
Batch conversion
Convert up to 100 files at once and download them together as a ZIP.
Private
The conversion runs in your browser; your subtitles are never uploaded.
SRT vs. WebVTT: what changes when you convert SRT to VTT?
SRT (SubRip) is the format most subtitle downloads and video editors use, but browsers do not read it. The HTML5 <track> element expects WebVTT, and so do web players such as video.js and JW Player and many learning platforms; YouTube and Vimeo accept it as an upload format too. The two formats look alike, which makes renaming .srt to .vtt tempting, but a renamed file is not valid WebVTT and a browser will usually show no captions at all.
A real conversion makes several changes. The file has to start with the line WEBVTT. Timecodes use a dot before the milliseconds, so 00:01:02,500 becomes 00:01:02.500. The characters &, < and > are escaped. Italic, bold and underline tags are valid in WebVTT and stay; <font> colour tags are not and are removed. WebVTT must be encoded as UTF-8, so keep UTF-8 as the output encoding even if the SRT came in Windows-1252.
Positioning is the one area where the formats really differ. SRT has no official way to place text, but many files use {\an8} to move a line to the top of the screen, for example when a subtitle would cover an on-screen title. WebVTT expresses this with cue settings written after the timecode. With Keep positions switched on, such subtitles receive line:5%, while all other cues stay at the default position at the bottom of the picture.
SRT and WebVTT compared
| Feature | SRT | WebVTT |
|---|---|---|
| File header | None | WEBVTT in the first line |
| Timecode | 00:01:02,500 (comma) | 00:01:02.500 (dot), hours optional |
| Numbering | A number before every subtitle | Optional cue identifier |
| Encoding | Not defined, often Windows-1252 or UTF-8 | UTF-8 only |
| Formatting | <i>, <b>, <u>, <font> | <i>, <b>, <u>, classes and voices |
| Position | Unofficial {\an8} tag | Cue settings such as line:5% |
Tips
- Check the source first: the SRT Validator finds overlaps and broken timecodes that would otherwise be carried over into the VTT file.
- On a web page, add the file with
<track kind="subtitles" src="film.en.vtt" srclang="en" label="English">inside the<video>element. - Remove ads and credit lines with the SRT Formatter before you publish captions on your own site.
- Need the opposite direction for a media player or video editor? Use VTT to SRT; for Aegisub files there is ASS to SRT.
Frequently asked questions
Can’t find your answer? Contact us — we reply quickly.
Can I just rename .srt to .vtt?
No. A WebVTT file needs the WEBVTT header and a dot instead of a comma in every timecode, and special characters must be escaped. A renamed SRT file is rejected by browsers.
Is VTT the same as WebVTT?
Yes. WebVTT stands for Web Video Text Tracks, and .vtt is its file extension. It is the caption format of the HTML5 <track> element.
Are italics and colours kept?
Italic, bold and underline are kept. <font> colour tags are removed because WebVTT does not support them. If you want plain text only, switch on Remove all formatting.
What happens to subtitles placed at the top of the screen?
Subtitles marked with {\an8} are converted to the cue setting line:5% when Keep positions is on. Otherwise the tag is dropped and the cue appears at the bottom.
Can I convert several SRT files at once?
Yes, up to 100 files in one go. They are converted in your browser, without any upload, and downloaded together as a ZIP archive.
Can I convert other subtitle formats to VTT?
Yes. Besides SRT the converter opens ASS/SSA, SBV from YouTube, MicroDVD .sub, TTML/DFXP and LRC files and writes all of them as WebVTT.
More free subtitle tools
View, edit, convert, sync and check subtitles — fast, free and private, right in your browser.