Subtitle formats explained

What SRT, WebVTT, ASS, TTML, and SCC files are for, which platforms ask for each one, and what you lose when you convert.

Facts checked on 2026.10.13. Sources

The five formats side by side

Every subtitle file stores the same three things: the text, when it starts, and when it ends. The formats differ in what else they can store: styles, positions on screen, and data for TV equipment.

FormatFileWritten asPositionMain use
SRT.srtPlain textNoUploads to video platforms
WebVTT.vttPlain textYesVideo players on websites
ASS / SSA.ass .ssaPlain textYes, to the pixelStyled subtitles, burned into the video
TTML / DFXP.ttml .dfxp .xmlXMLYesDelivery to Netflix and other buyers with a TTML profile
SCC.sccHex codesYes, on a fixed gridUS TV closed captions

SRT (SubRip)

SRT comes from SubRip, a program that read subtitles from DVDs. Today it is the format that almost every platform and player opens. Each subtitle is a number, a start and end time, and one or more lines of text. A blank line ends the subtitle.

interview.srt
100:00:01,000 --> 00:00:04,200Who has the Spanish file?200:00:04,600 --> 00:00:07,000<i>Mina has it. She sent it back.</i>
  • A comma comes before the milliseconds: 00:00:01,000.
  • SRT has no official specification. Players agree on the numbers and times, but not on tags such as <i> and <font>.
  • The file does not say which text encoding it uses. Save SRT files as UTF-8: YouTube and Vimeo both ask for it.
  • YouTube reads SRT as plain text, without its tags. To control position on YouTube, use WebVTT or TTML.

Who asks for SRT

YouTube, Vimeo, LinkedIn, and other video platforms. Most subtitle editors open it, so it is also the usual file to send to a translator or reviewer.

WebVTT

WebVTT (Web Video Text Tracks) is the W3C format for captions on the web. It grew out of SRT, so the two look almost the same. The <track> element in HTML video takes WebVTT files, so every browser can show them.

interview.vtt
WEBVTT00:00:01.000 --> 00:00:04.200Who has the Spanish file?00:00:04.600 --> 00:00:07.000 line:10% align:center<i>Mina has it. She sent it back.</i>
  • The file starts with the word WEBVTT.
  • A period comes before the milliseconds: 00:00:01.000. The hours are optional.
  • Subtitle numbers are optional.
  • Settings after the time move a subtitle: line, position, size, and align. The second subtitle above sits near the top of the picture.
  • A STYLE block in the file, or the website's CSS, sets fonts and colors.

Who asks for WebVTT

Video players on websites, through the HTML <track> element. Vimeo accepts SRT too, but recommends WebVTT. YouTube reads WebVTT positions, and bold, italic, and underline.

ASS and SSA (SubStation Alpha)

SubStation Alpha (SSA) and its later version, Advanced SubStation Alpha (ASS), are formats for styled subtitles. A file has named styles for font, size, color, border, and shadow. Tags in braces change one line: its position, color, rotation, or a karaoke highlight. Aegisub, a free editor, is made for this format.

opening.ass
[Events]Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, TextDialogue: 0,0:00:01.00,0:00:04.20,Default,,0,0,0,,Who has the Spanish file?Dialogue: 0,0:00:04.60,0:00:07.00,Sign,,0,0,0,,{\pos(960,120)}Mina has it.
The [Script Info] and [V4+ Styles] sections are left out.
  • Times have hundredths of a second, not milliseconds: 0:00:01.00.
  • {\pos(960,120)} puts a line at an exact position in the script's resolution.
  • YouTube and Vimeo do not accept ASS files. To show ASS styles on those platforms, burn the subtitles into the video.

Who uses ASS

Anime fansub groups, karaoke videos, and editors who burn styled subtitles into the picture. Netflix asks for TTML and US broadcasters ask for SCC, so ASS is not a delivery format for them.

TTML and DFXP

TTML (Timed Text Markup Language) is a W3C format in XML. Its first version was called DFXP (Distribution Format Exchange Profile). The .dfxp file extension still uses that name, and YouTube reads a DFXP file as TTML.

episode-01.ttml
<tt xmlns="http://www.w3.org/ns/ttml" xml:lang="en">  <body>    <div>      <p begin="00:00:01.000" end="00:00:04.200">Who has the Spanish file?</p>      <p begin="00:00:04.600" end="00:00:07.000">Mina has it.<br/>She sent it back.</p>    </div>  </body></tt>

TTML can do a lot, so buyers limit it with a profile. A profile says which parts of TTML a file may use:

  • IMSC: the W3C profile for subtitles and captions on the internet. Apple added IMSC captions to HLS streaming in 2017.
  • SMPTE-TT: the profile the US FCC accepted in 2012 for captions on TV programs shown online.
  • EBU-TT: the profile of the European Broadcasting Union, for exchange and archives.

Who asks for TTML

Netflix, for subtitle and SDH files. Other buyers name a TTML profile in their delivery specification. On 2026.10.13, Netflix accepted IMSC 1.1 only for Japanese.

Our free tools do not read or write TTML. Use your subtitle editor's TTML export, and check the buyer's profile before you deliver.

SCC (Scenarist Closed Caption)

SCC files carry US TV closed captions, the CEA-608 standard (also called Line 21). The file does not store words. It stores the codes that a TV caption decoder reads.

episode-01.scc
Scenarist_SCC V1.000:00:01;00	9420 9420 94ae 94ae 9470 9470 5768 ef20 6861 7320 f468 e520 d370 616e e973 6820 e6e9 ece5 bf80 942f 942f
9420 starts a caption, 9470 puts it on the bottom row, and 942f shows it. The codes between them spell “Who has the Spanish file?”.
  • The first line must be Scenarist_SCC V1.0.
  • Times count frames at 29.97 frames per second. A semicolon before the frames, as in 00:00:01;00, means drop-frame timecode.
  • A caption row holds 32 characters at most.
  • Control codes are sent twice, in case the TV signal loses one.

Who asks for SCC

US broadcasters. YouTube names SCC as its preferred format for CEA-608 captions.

Our free tools do not read or write SCC. To make one, use a caption editor with SCC export, and check the result on a CEA-608 decoder.

Other files you may get

  • SBV (.sbv): SubViewer, a plain text format with no tags and no subtitle numbers. YouTube accepts it.
  • EBU-STL (.stl): a binary format for European broadcast TV. You need a subtitle editor to open it.
  • TXT: a transcript with no times. It must get times before a player can show it.
  • Excel or CSV: not a subtitle format, but a common way to send subtitles to a client or reviewer who does not use a subtitle editor.

Which format to use

The place where the subtitles go decides the format. When you are not sure, ask for the buyer's delivery specification.

Where the subtitles goUseWhy
YouTubeSRT or WebVTTBoth upload directly. Use WebVTT when the position matters.
VimeoWebVTTVimeo accepts SRT, but recommends WebVTT.
Your own websiteWebVTTThe HTML <track> element takes WebVTT.
NetflixTTMLNetflix asks for TTML, and IMSC 1.1 for Japanese only.
US broadcast TVSCCIt carries CEA-608 captions to TV decoders.
Burned into the videoASSIt keeps fonts, colors, and exact positions.
A translator or reviewerSRTMost subtitle editors open it.

What you lose when you convert

Every format keeps the text and the times. A conversion loses only what the new format cannot store.

ConversionWhat staysWhat you lose
SRT to WebVTTEverythingNothing
WebVTT to SRTText, times, and basic tagsPositions, settings, and STYLE blocks
ASS to SRTText and timesStyles, positions, karaoke, and effects
SRT or WebVTT to TXTTextTimes

Keep the original file after you convert. You cannot get styles or positions back from the converted file.

Common questions

What is the most common subtitle format?

SRT. Almost every video platform, player, and subtitle editor opens it, which makes it the safe choice when nobody names a format.

What is the difference between SRT and VTT?

VTT starts with a WEBVTT line, uses a period instead of a comma before the milliseconds, and can position and style each subtitle. SRT has only text and times, plus basic tags that some players ignore.

Which subtitle format does Netflix use?

TTML. Netflix's timed text style guide sets the rules for TTML subtitle and SDH files. On 2026.10.13, its IMSC 1.1 profile was a valid delivery format only for Japanese.

Which subtitle formats can I upload to YouTube?

Many: SRT, SBV, WebVTT, TTML, DFXP, SCC, EBU-STL, and others. SRT and SBV upload as plain text. WebVTT and TTML keep positions, and SCC is YouTube's preferred file for CEA-608 captions.

Is DFXP the same as TTML?

Nearly. DFXP was the name of TTML's first version, and the .dfxp extension is still in use. YouTube reads a DFXP file as TTML. Check which TTML profile the buyer wants before you deliver.

Can I convert an ASS file to SRT?

Yes. The text and times move across. Fonts, colors, positions, and karaoke effects are lost, because SRT cannot store them.

Still sending SRT files by email?

Edit, review, and approve every language in one place. Then export SRT or VTT.

Free forever plan. No card required. No sales call.

  • Every language gets a translator and a reviewer
  • Feedback on the exact line, not in an email thread
  • Only the approved version ships
  • See who's holding up which language
  • AI drafts in 82 languages, or bring your SRT
  • Private, in the browser, nothing to install

Sources