SRT vs ASS vs VTT: Which Subtitle Format Should You Use?
Formats & timing · 5 min read · Updated 21 October 2026
How SRT, ASS/SSA and WebVTT differ in timing, styling, positioning and player support - and which subtitle format to pick for TV, fansubs or the web.
Open a folder of subtitles and you'll find files ending in .srt, .ass, .ssa and .vtt. They all do the same basic job - show text on screen at the right time - but they were designed for different things, and choosing the wrong one can cost you styling, compatibility or both. Here's how they compare and when to use each.
SRT (SubRip): the universal plain-text format
SRT is the most widely supported subtitle format in the world. A file is just numbered blocks of text:
12
00:01:04,250 --> 00:01:06,900
I told you not to come back here.
Each block has a sequence number, a start and end time, and one or more lines of text, separated from the next block by a blank line. Times use hours, minutes, seconds and milliseconds, separated by a comma - 00:01:04,250.
Styling: very limited. Many players understand simple tags like <i>, <b> and <u>, and some honour <font color="...">. There's no official way to position text, although some players accept the ASS-style {\an8} tag to move a line to the top.
Strengths: it works almost everywhere - TVs, phones, media servers, video editors and upload sites. It's easy to read and edit in any text editor.
Weaknesses: no real styling, no positioning, no fonts, no effects. Anything visual about the original subtitles is lost.
Use SRT when compatibility matters more than looks: uploading to platforms, playing on smart TVs, sharing with people who use whatever player came with their device.
ASS and SSA (Advanced SubStation Alpha): the styling powerhouse
ASS is the format of fansubs and typesetting. An ASS file is structured in sections:
[Script Info]- the script's resolution (PlayResX,PlayResY) and metadata.[V4+ Styles]- named styles with font, size, colours, outline, shadow, alignment and margins.[Events]- the subtitles themselves, asDialogue:lines (andComment:lines that aren't shown).
A dialogue line looks like this:
Dialogue: 0,0:01:04.25,0:01:06.90,Default,Kaito,0,0,0,,{\i1}I told you{\i0} not to come back here.
Times use hours, minutes, seconds and centiseconds (hundredths of a second), separated by a period. The text can contain override tags in curly braces: {\an8} for top-centre alignment, {\pos(640,80)} for an exact position, {\fad(200,200)} for a fade, {\k} for karaoke syllable timing, and \N for a hard line break.
SSA is the older SubStation Alpha v4 format that ASS replaced. It works the same way with fewer features; most tools that read ASS read SSA too.
Strengths: full control over fonts, colours, borders and placement; animated signs and karaoke; multiple styles in one file (dialogue, thoughts, flashbacks, signs, song lyrics).
Weaknesses: support outside dedicated players is patchy. Desktop players built on libass - mpv, VLC, MPC-HC and others - render it well. Smart TVs, some phones and many web players either ignore the styling or don't load ASS at all, and media servers may have to burn the subtitles into the video to show them.
Use ASS when the look matters: anime fansubs, karaoke, typeset signs, or any release where viewers use a proper desktop player.
WebVTT: the web standard
WebVTT (.vtt) is the subtitle format of the web, built for the HTML5 <track> element. It looks a lot like SRT:
WEBVTT
00:01:04.250 --> 00:01:06.900 line:10%
I told you not to come back here.
The file must start with WEBVTT. Times use a period before the milliseconds, and the hours are optional. After the timing, a cue can carry settings like line, position, align and size to place it on screen. Styling is done with CSS through the ::cue selector, and the format supports comments (NOTE blocks), styles and regions.
Strengths: native in every modern browser; supported by web video players and many platforms, including YouTube uploads; more positioning control than SRT.
Weaknesses: styling depends on the player's CSS support; desktop players and TVs support it less consistently than SRT; it can't match ASS for typesetting.
Use VTT when the subtitles will play in a browser: your own website, an online course, a web app, or a player built on HTML5 video.
Side-by-side comparison
| SRT | ASS / SSA | WebVTT | |
|---|---|---|---|
| Timing precision | Milliseconds (,) |
Centiseconds (.) |
Milliseconds (.) |
| Styling | Basic tags | Full styles and override tags | CSS via ::cue |
| Positioning | Unofficial | Precise (\pos, \an) |
Cue settings |
| Effects and karaoke | No | Yes | Limited |
| Browser support | Via conversion | Via libraries | Native |
| TV and phone support | Excellent | Patchy | Good |
| Best for | Compatibility | Fansubs and typesetting | Web video |
Converting between formats
Converting up (SRT to ASS) is safe: you gain the ability to style, and nothing is lost. Converting down (ASS to SRT or VTT) throws away styles, positions and effects; signs and karaoke may turn into plain lines at the bottom of the screen, or disappear.
Two practical rules:
- Translate in the format you'll publish in. If the original release is ASS, translate the ASS file and export ASS. Don't convert to SRT just to translate it.
- Watch the timing format when converting by hand. The comma in SRT and the period in VTT and ASS trip up hand-made converters more often than anything else.
Which format should you translate?
For translation, the format decides what has to be protected:
- SRT: the timestamps, the line count and any
<i>tags. - ASS: all of the above, plus the override tags on each line, the style each line uses, and the lines that are signs, karaoke or drawings rather than dialogue. Our guide to translating ASS subtitles without breaking styles covers this in depth.
- VTT: timestamps, cue settings and any inline tags.
SubFly reads and writes all four formats - SRT, ASS, SSA and VTT - and sends only the dialogue text for translation, so the structure of the file comes back exactly as it went in.
Quick answer
- Publishing to TVs, phones or upload sites? SRT.
- Fansubbing anime, or need signs, karaoke and fonts? ASS.
- Playing in a browser or on your own site? VTT.
Whichever you choose, check the result in the player your audience will actually use - and keep the original file, so you can always export again in a different format.