Convert ASS to VTT
Get a styled subtitle file into the one caption format browsers actually accept.
- Free
- No upload, no signup
- Timings preserved
How to convert ASS to VTT
Choose your .ass file
Press the box at the top of this page and pick your ASS file, or drop it on. It is read in your browser, so nothing is uploaded and there is no account to make.
Check the VTT preview
The first cues are shown as they will be written in VTT, so you can see the timings and the text before you save anything.
Download the .vtt file
Save the VTT file to your device. Your ASS file is left as it was, so you can convert it again to another format.
Browsers do not read ASS, at all
No browser has native support for Advanced SubStation Alpha. If a caption file is going onto a web page through the <track> element, it has to become WebVTT, and there is no configuration that changes that.
The conversion keeps the dialogue and the timings. The styling does not survive in any meaningful way: ASS style blocks, override tags, karaoke timing and precise positioning have no WebVTT equivalent that a browser will render consistently.
If the appearance matters more than the captions being toggleable, burn the ASS file into the video instead and upload a plain MP4. That is usually the right call for anything that was typeset deliberately.
ASS and VTT, side by side
The text and the timings carry over exactly. The look does not: Advanced SubStation Alpha styling and positioning are dropped rather than translated, so the VTT file holds plain cues.
Both samples below hold the same two cues, so the difference you can see is the whole difference between the formats.
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:03.50,Default,,0,0,0,,This is the first line.
Dialogue: 0,0:00:03.50,0:00:06.00,Default,,0,0,0,,And this is the second.
WEBVTT
1
00:00:01.000 --> 00:00:03.500
This is the first line.
2
00:00:03.500 --> 00:00:06.000
And this is the second.
ASS to VTT: questions
Can a browser play ASS subtitles?
No. The HTML5 track element supports WebVTT only, so an ASS file has to be converted or burned into the video.
What happens to the ASS styling?
It is dropped. Fonts, colours, positioning and effects have no reliable WebVTT equivalent, so the output is plain captions with the original text and timings.
Can WebVTT keep any of the ASS styling?
Some of it, in principle: WebVTT supports positioning and CSS-based styling of cues. It is not a translation of ASS though, so cues come across as plain text at the default position rather than with the look reconstructed.
Why not just use the ASS file on my site?
Because the HTML5 track element takes WebVTT and nothing else. An ASS file linked from a track element is fetched and ignored, usually with no error worth reading, which is the silent failure this conversion exists to fix.
Will the timings shift?
No. ASS writes times as hours:minutes:seconds.centiseconds and WebVTT uses milliseconds, so the numbers are rewritten at higher precision, but no cue moves.
Other caption conversions
Everything else you can do here.
Convert the video too
Convert ASS to VTT now
Free, in your browser. The file is converted on your device and is not uploaded.