Captions & Subtitles·Updated
A subtitle file is a plain-text file that pairs timestamps with caption text so a player knows what to show and when. The four common formats are SRT (universal), VTT (web-native), and SSA/ASS (advanced styling). PlainScribe exports SRT and VTT in minutes for $0.067/min ($4 per audio hour), the two formats that work on virtually every platform.
A subtitle file is just timed text. Each entry has a start time, an end time, and a line or two of caption. The player reads the timecodes and overlays the text on the right frames. Because it is separate from the video, one file can be swapped, edited, or translated without re-rendering the footage.
The default. Numbered blocks, a 00:00:10,500 --> 00:00:13,000 timecode, and the caption text. No styling, but supported by VLC, Premiere, Final Cut, YouTube, Vimeo, and nearly every player and platform. Use SRT unless you have a reason not to.
1
00:00:10,500 --> 00:00:13,000
This is the first subtitle.
The HTML5 web standard. Uses a period in timecodes (00:00:10.500), starts with a WEBVTT header, and supports light cue styling and positioning. Some streaming players require it. The SRT vs VTT section below compares the two in detail.
An older advanced format supporting fonts, colors, and positioning. Common in fansubbing, but many players need a plugin to read it cleanly. The SSA subtitles section below shows how the file is structured.
The evolution of SSA: complex styling, custom fonts, and animation, used for DVD/Blu-ray and high-effort fansubs. Powerful but not universally supported, so it often needs conversion for general distribution.
| Format | Styling | Compatibility | Best for | |---|---|---|---| | SRT | None | Universal | YouTube, Vimeo, editors, anything | | VTT | Light | Web/HTML5 players | Websites, some streaming platforms | | SSA | Moderate | Player-dependent | Legacy fansubs | | ASS | Advanced | Player-dependent | DVD/Blu-ray, styled fansubs |
Verdict: ship SRT for maximum reach and VTT for web embeds. Reach for SSA/ASS only when you genuinely need typeset styling. PlainScribe covers the two that matter for most creators.
SSA stands for SubStation Alpha, the subtitle format created by the SubStation Alpha editor in the 1990s. An .ssa file is plain text split into three sections: [Script Info] (title, resolution), [V4 Styles] (named styles with font, size, color, and alignment), and [Events] (the dialogue lines). Each dialogue line points to a style by name, so you change one style and every line using it updates.
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: Marked=0,0:00:10.50,0:00:13.00,Default,,0,0,0,,This is the first subtitle.
Timecodes use h:mm:ss.cc (hundredths of a second) rather than SRT's milliseconds. SSA subtitles play in VLC, MPC-HC, mpv, and Kodi, and editors like Aegisub and Subtitle Edit open them. YouTube, Vimeo, and most web players do not accept .ssa, so convert to SRT or VTT before uploading.
| | SRT | VTT |
|---|---|---|
| Timecodes | Comma: 00:00:10,500 | Period: 00:00:10.500 |
| Header | None | Must start with WEBVTT |
| Styling | None | Light cue styling, positioning and metadata |
| Compatibility | Every player and platform | HTML5 web players; YouTube accepts both |
Verdict: use SRT for uploads to YouTube, Vimeo and video editors, and VTT for captions on your own website's HTML5 player. Converting between them is mechanical: add or remove the WEBVTT header and swap commas and periods in the timecodes. VTT styling is lost when you go to SRT. The free Subtitle Converter does it in one step.
Common pitfalls: mixing comma and period timecodes, forgetting the WEBVTT header, and missing the blank line between cues. Any one of these makes the file fail to load or drift out of sync.
| | SRT | SSA | |---|---|---| | Styling | None (plain text) | Fonts, colors, positioning via named styles | | Compatibility | Every player and platform | Desktop players; not YouTube or Vimeo | | Editing | Any text editor | Easier in Aegisub or Subtitle Edit |
Verdict: use SRT unless the subtitles must carry their own styling. SSA converts to SRT cleanly: timing and text survive, styling is dropped.
| | SRT | ASS | |---|---|---| | Styling | None | Full typesetting: fonts, outlines, rotation, movement, karaoke | | Compatibility | Universal | VLC, mpv, MPC-HC, Kodi, and MKV files; not streaming platforms | | File size and complexity | Tiny, human-readable | Larger, with style and override-tag syntax |
Verdict: SRT for anything you upload to a platform or hand to an editor; ASS when on-screen signs, karaoke, or precise placement matter, typically inside an MKV. To publish an ASS-styled video online, burn the subtitles into the picture or convert to SRT.
| | SSA (v4) | ASS (v4+) |
|---|---|---|
| Styles section | [V4 Styles] | [V4+ Styles], with extra fields such as underline, strikeout, scaling, and rotation |
| Effects | Basic styling and karaoke | Adds layers, fades, movement, clipping, and animated transforms |
| Support today | Read by most players for legacy files | The format modern tools (Aegisub, libass) actually write |
Verdict: ASS is the successor to SSA and a superset of it. If you are creating styled subtitles now, use ASS; keep SSA only for old files, and re-save them as ASS if you need to edit.
You do not need to hand-write timecodes. Upload your video to PlainScribe, let it transcribe the audio with high accuracy on clear audio across 47 languages, and export an SRT or VTT directly. Files up to 1GB are supported on the web app.
What is the most compatible subtitle file format? SRT. It is supported by VLC, Premiere, Final Cut, YouTube, Vimeo, and nearly every player and platform. Choose SRT unless a specific platform requires VTT.
What is the difference between SRT and VTT?
SRT uses a comma in timecodes and carries no styling; VTT is the HTML5 web standard, uses a period, starts with a WEBVTT header, and supports light styling. Use SRT for platform uploads and VTT for your own web player.
How do I create a subtitle file from a video? Upload the video to PlainScribe, which transcribes the audio and exports an SRT or VTT file with correct timecodes. See how to create subtitles from a video.
What is the difference between SSA and ASS subtitles? ASS (Advanced SubStation Alpha) is the newer version of SSA. Both store named styles and dialogue lines in a plain-text script, but ASS adds layers, fades, movement, and animated effects. Most players that read one read the other; new styled subtitles are almost always ASS.
Is SRT or ASS better? SRT is better for compatibility: every player, editor, and platform accepts it. ASS is better for appearance: it controls fonts, position, and effects. For YouTube, Vimeo, and social video, use SRT (or VTT).
Can I convert one subtitle format to another? Yes. SRT and VTT convert cleanly into each other since both are plain timed text. Converting SSA/ASS to SRT drops the advanced styling but keeps timing and text.
Which formats does PlainScribe export? SRT, VTT, TXT, and CSV. SRT and VTT are the two subtitle formats you attach to a video.
Need a subtitle file fast? Get your first transcript free, no credit card. See also how to download a transcription.
Your first transcript is free (up to 2 hours). No credit card required.