Subtitle file formats: SRT, VTT, ASS, SBV, TTML and SCC compared.

Most subtitle files are one of six formats. SRT and WebVTT are plain text, timing plus words, and are what nearly every platform takes. ASS/SSA adds fonts, colours and placement. SBV is YouTube's own simple format. TTML (and its DFXP profile) is XML for broadcast and streaming delivery. SCC carries US broadcast CEA-608 captions as hex codes. Pick by where the file is going: when in doubt, SRT.

WhipScribe exports SRT and WebVTT from a recording; below, SRT, VTT, ASS, SBV, TTML and SCC compared. Packs: $4 for 500 minutes, $12 for 2,000, $24 for 5,000; Workspace $19 a month. Up to 10 hours or 5 GB per file. Measured turnaround: about 2 minutes per audio hour. 99 languages. Checked 25 Oct 2026.

Six formats, one tableA real example of eachWhere each is acceptedSRT and VTT made below

At a glance

Six formats, one table.

FormatExtensionInsideStyling and positionUsed for
SubRip (SRT).srtPlain text: number, time, textA few tags some players honourAlmost everything: YouTube, Vimeo, LinkedIn, Facebook, every editor
WebVTT.vttPlain text with a WEBVTT headerCue settings for position; CSS stylingHTML5 video, Vimeo (recommended), course players
Advanced SubStation Alpha (ASS, SSA).ass, .ssaPlain text in sections: script info, styles, eventsFull: fonts, colours, outlines, placement, karaoke effectsFansubs, anime, styled burn-ins; MKV files
SubViewer (SBV).sbvPlain text: start and end on one line, then textNoneYouTube (its download format for years)
TTML, DFXP.ttml, .dfxp, .xmlXMLFull, in XML attributesBroadcast and streaming delivery, some OTT specs
Scenarist (SCC).sccTimecodes and hex byte pairs (CEA-608)Limited by the TV caption standardUS broadcast television, Final Cut Pro, YouTube

Source: YouTube Help, supported subtitle files, checked 26 Oct 2026.

What they look like

The same first cue in each text format.

SRT

1
00:00:34,680 --> 00:00:40,703
fourscore and seven years ago our fathers
brought forth upon this continent

WebVTT

WEBVTT

00:00:34.680 --> 00:00:40.703
fourscore and seven years ago our fathers
brought forth upon this continent

SBV

0:00:34.680,0:00:40.703
fourscore and seven years ago our fathers
brought forth upon this continent

Hours take one digit and start and end share a line, separated by a comma.

ASS

[Script Info]
ScriptType: v4.00+
PlayResX: 1920
PlayResY: 1080

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,64,&H00FFFFFF,&H000000FF,&H00000000,&H64000000,0,0,0,0,100,100,0,0,1,3,1,2,40,40,60,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:34.68,0:00:40.70,Default,,0,0,0,,fourscore and seven years ago our fathers\Nbrought forth upon this continent

Times are in hundredths of a second, \N is the line break, and every cue names a style defined above it.

TTML

<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xml:lang="en">
  <body>
    <div>
      <p begin="00:00:34.680" end="00:00:40.703">fourscore and seven years ago our fathers<br/>brought forth upon this continent</p>
    </div>
  </body>
</tt>

SCC is not shown: its cue text is hexadecimal byte pairs for the TV caption decoder, made by caption software, not typed.

Source: W3C WebVTT, checked 26 Oct 2026.

Source: W3C TTML2, checked 26 Oct 2026.

Which to pick

Decide by where the file is going.

Every format holds the same thing underneath: a start time, an end time and words. Converting between them keeps the timing; only styling may be lost on the way down to SRT.

Where each is accepted

Checked against each platform's and editor's own help page.

WhereTakesMenu path
YouTube StudioSRT, VTT, SBV, TTML, DFXP, SCC and nine moreStudio › Subtitles › the video › Add language › Add › Upload file › With timing
VimeoVTT (recommended), SRTthe video › Languages › + › choose Subtitle or Caption › Upload › toggle on
LinkedInSRTshare box › Video › Edit › Select Caption (desktop)
FacebookSRT named name.en_US.srtthe video › Edit › Captions › upload the SRT
TeachableSRT, VTTlesson video › Settings (gear) › subtitles › upload .srt or .vtt
Adobe Premiere ProSRTFile › Import, then drag onto the sequence
DaVinci ResolveSRTMedia Pool › right-click › Import Subtitle
Final Cut ProSRT, iTT, SCCFile › Import › Captions
CapCutSRT (desktop also TXT); not the phone appDesktop: Captions › Add Captions › Import file; Web: Captions › Upload caption file

Menu paths from each platform's or editor's help page, checked 26 Oct 2026; the page for each is linked on the page about that platform.

Length and pace

The rules every format shares.

Characters a lineLinesReading speedTime on screen
Netflix (English timed text style guide)422up to 20 characters a second (adult), 17 (children)not stated
WhipScribe downloadabout 422aims for 20 characters a second1 to 7 seconds
The sample on this page, measuredlongest 416 of 10 cues use 2fastest 16.6 characters a second2.87 to 6.38 seconds
YouTube, Instagram, TikTok, LinkedInno published limit; the 42-character, two-line shape reads well on all of them

Source: Netflix partner help, checked 26 Oct 2026; our figures are the cue builder's settings and the sample below.

Burned in, not a file

When the subtitles are part of the picture.

Open, or burned-in, subtitles are not a file format at all: the text is drawn into the video frames on export, so nothing can be switched off or extracted. Instagram and TikTok need them that way. Make an SRT first, then burn it in with an editor; captions vs subtitles compares the two side by side.

How it works

How to get an SRT or VTT from a recording.

1

Upload the recording

Drop the video or audio in the box, or paste a public link.

2

Check the text

Fix misheard names on the transcript; the cues follow the correction.

3

Download SRT or VTT

Both come from the same job. Convert to another format with a subtitle editor if a delivery spec asks for one.

Before you rely on it

What the subtitle file is, and what it is not.

Cues sized for reading

Each cue holds at most two lines of about 42 characters and stays on screen for one to seven seconds, breaking at the end of a sentence or clause where it can. The words are exactly the transcript's; only the breaks are chosen for the screen.

Timing comes from the audio

Cue times are taken from the recording itself, so the file lines up with the video or audio you uploaded. If you trim the start of the video afterwards, shift the cues by the same amount in your editor.

Fix a line before you download

Open the transcript, correct a misheard name or number on its line, and the SRT and VTT you download carry the correction with the timing unchanged.

A plain file, not a styled video

You get the subtitle file. Fonts, colours, position and captions drawn into the picture are done in your video editor or player, which reads this file.

Accuracy we measured

On public test recordings, about 7 words in 100 differed from the reference for clean English read speech, between 4 and 9 in 100 for Spanish, Portuguese, Russian, French and German, and about 21 in 100 for Hindi. Noisy rooms, music and crosstalk do worse. Method and every number: the benchmark.

Limits

Up to 10 hours or 5 GB per recording. The box on this page takes files up to 500 MB; larger ones continue on the upload page. 99+ languages, detected automatically.

Pricing

What an SRT or VTT from a recording costs

The preview is free. When the full transcript needs a pack, one-time packs are $4 for 500 minutes, $12 for 2,000 minutes, $24 for 5,000 minutes. Credits never expire, which comes to about $0.29 to $0.48 per hour of audio.

Recording$4 pack$12 pack$24 pack
5-minute video$0.04$0.03$0.02
30-minute video$0.24$0.18$0.14
2-hour recording$0.96$0.72$0.58

Figures are the share of a pack each recording uses. A button opens secure checkout for that pack. Every export format is included; full details on the pricing page.

FAQ

Subtitle formats, answered.

What are the main subtitle file formats?

SRT (SubRip), WebVTT, ASS/SSA, SBV, TTML/DFXP and SCC. SRT and WebVTT are plain text and the most widely accepted; ASS adds styling; TTML and SCC are for broadcast and streaming delivery.

Which subtitle format is best?

SRT for platforms and editors, because nearly all of them accept it. WebVTT for your own website. ASS when you need styled subtitles. A delivery spec that names a format always wins.

What subtitle formats does YouTube accept?

SRT, SBV, WebVTT, TTML, DFXP, SCC, SAMI and several broadcast formats. SRT and SBV must be basic UTF-8 files without style markup.

What is the difference between SRT and ASS?

SRT holds only timing and text. ASS also defines styles, fonts, colours, outlines and exact placement for every line, which is why fansubs and styled burn-ins use it.

What format are TV closed captions?

In the US, broadcast captions follow CEA-608 and CEA-708; SCC is the common file for 608. Online, the same captions usually travel as SRT, VTT or TTML.

Which formats does WhipScribe export?

SRT and VTT for subtitles, plus TXT, DOCX and JSON transcripts from the same job. For ASS, TTML or SCC, convert the SRT in a subtitle editor.

Subtitles and captions

Every page in this set uses the same upload box and the same export. All subtitle pages

Closest to this page

Formats and rules

Make subtitles

From a link or a file

WebVTT

For a platform or an editor

Convert a subtitle file

By language

To English subtitles

Make an SRT or VTT from a recording.

Free preview. Drop a file, download both formats; packs from $4.