SRT vs VTT vs SBV vs ASS: Subtitle Formats Explained
SRT (SubRip)
The most widely accepted subtitle format. Almost every player, editor and upload form takes it.
1
00:00:01,000 --> 00:00:04,500
Hello, welcome to our channel.
2
00:00:05,000 --> 00:00:08,200
Today we're talking about subtitles.
Each cue has a number, a start and end time with a comma before the milliseconds, and one or more lines of text, separated from the next cue by a blank line.
- Supports: text and timing. Many players also honor simple
<i>,<b>and<font>tags, but there is no standard for fonts, colors or position. - Missing: styling, positioning, speaker metadata.
- Strengths: universal support, easy to edit in any text editor, tiny files.
VTT (WebVTT)
The web's caption format, and the one browsers load through the HTML5 <track> element.
WEBVTT
00:00:01.000 --> 00:00:04.500
Hello, welcome to our channel.
00:00:05.000 --> 00:00:08.200 position:10% align:start
Today we're talking about subtitles.
- Differences from SRT: a required
WEBVTTheader line, a period before the milliseconds, and optional cue numbers. - Extras: cue settings for position and alignment, voice tags (
<v Speaker>) for speaker names,NOTEcomments, and CSS styling through::cuein web players. - Weaknesses: desktop editors and older players support it less consistently than SRT.
SBV (SubViewer, YouTube)
One of the formats YouTube Studio offers when you download captions, alongside SRT and VTT. It is a stripped-down cousin of SRT: no cue numbers, and the start and end times sit together on one comma-separated line.
0:00:01.000,0:00:04.000
Hello, welcome to our channel.
0:00:05.000,0:00:08.200
Today we're talking about subtitles.
- Supports: text and timing only.
- Weaknesses: little support outside YouTube. Tools that look for SRT's
-->arrow can't read the comma-separated timing.
ASS (Advanced SubStation Alpha) and SSA
The format for styled subtitles: fonts, colors, outlines, shadows, exact positioning and animation, defined per style and overridable per line. Anime fansubs use it for on-screen sign translations, karaoke lyrics and per-character styling. VLC and mpv render it through libass.
[Script Info]
ScriptType: v4.00+
[V4+ Styles]
Format: Name, Fontname, Fontsize, ...
Style: Default,Arial,20,&H00FFFFFF,...
[Events]
Format: Layer, Start, End, Style, ...
Dialogue: 0,0:00:01.00,0:00:04.50,Default,,0,0,0,,Hello, welcome to our channel.
- Supports: full styling, pixel positioning, karaoke and animation effects, multiple named styles and layers in one file. Timing is in centiseconds.
- Weaknesses: complex syntax; YouTube and most social platforms don't accept it; it needs a renderer such as libass (or JASSUB in the browser).
SSA is the older version of the format; ASS (v4+) is what tools such as Aegisub produce today.
Side by Side
| Feature | SRT | VTT | SBV | ASS |
|---|---|---|---|---|
| Where it's accepted | Almost everywhere | Web players, many platforms | YouTube | Desktop players, burn-in tools |
| Styling | Basic tags, player-dependent | Basic, CSS in browsers | None | Full |
| Positioning | No | Yes | No | Yes (pixel-level) |
| Animation | No | No | No | Yes |
| Timing precision | Milliseconds | Milliseconds | Milliseconds | Centiseconds |
| Cue numbers | Yes | Optional | No | No |
| Hand editing | Very easy | Easy | Very easy | Hard |
| YouTube upload | Yes | Yes | Yes | No |
Which One to Use
SRT vs ASS
SRT when the file has to be accepted somewhere, ASS when the subtitles are burned into the video and should look designed. A common workflow keeps an ASS master for the burn-in and exports a plain SRT for any platform that wants an uploadable caption file. Picute works on the same split: caption styling stays in the editor and is burned into the MP4, and the subtitles export as SRT or VTT for upload.
SRT vs VTT
VTT for HTML5 <video> and web players that ask for it, SRT for everything else (YouTube, social platforms, editors). The files are nearly identical, so converting between them takes seconds.
SBV vs SRT
Keep SBV only for moving captions in and out of YouTube. To edit them anywhere else, convert to SRT first.
Converting Between Formats
- Down to SRT (from ASS, SBV or VTT): text and timing survive; styling and positioning are dropped.
- SRT to VTT: lossless. Add the header, swap the comma for a period.
- SRT to ASS: works, but every line gets the same default style until you restyle it.
These free converters run entirely in your browser; the file is not uploaded:
- SRT to VTT and VTT to SRT
- SBV to SRT, for YouTube caption downloads
- ASS/SSA to SRT, which strips the styling tags and converts the centisecond timing
- SRT to ASS, which writes a complete .ass file with a default style
- SRT to plain text, which removes cue numbers and timecodes
Related Reading
- Adding subtitles to long videos
- Adding multilingual subtitles: encoding and font issues per language
- YouTube subtitles and SEO
Generate subtitles from a video in PicuteExports SRT, VTT and MP4 with subtitles burned in
Frequently asked questions
I converted ASS to SRT and the styling is gone. Can I get it back?
No. SRT has nowhere to store fonts, colors or positions, so the conversion throws them away and nothing can restore them from the SRT. If you no longer have the original .ass file, you have to style the subtitles again. Keep the ASS file as the master and treat any SRT or VTT made from it as a copy you can regenerate.