Developer tool

VTT to ASS Converter

Convert WebVTT (.vtt) captions into an Advanced SubStation Alpha (.ass) script for Aegisub, mpv and ffmpeg.

VTT ASS
PrivConvert
Privacy-first conversion
No files stored
In-memory processing
Deleted instantly
No sign-up needed

Complete the security check to begin

About Converting VTT to ASS

This conversion moves captions from the web to the video-production side of the fence. WebVTT is what an HTML5 player loads through a <track> element; Advanced SubStation Alpha is what Aegisub edits and what ffmpeg and libass read when subtitles are burned permanently into a picture. Both formats can style text, but they do it in completely unrelated ways: VTT leans on CSS and cue settings, while ASS uses named styles in a [V4+ Styles] section plus inline override tags. There is no mechanical translation between the two, so this converter takes the reliable path — it extracts your cues and timings and writes them into a clean, valid ASS script with one readable Default style.

In practice that means the WebVTT presentation layer is left behind: STYLE blocks, regions, cue positioning settings, and inline tags such as <c.yellow> or <v Speaker> are removed, and what you get is every cue’s text and timing on a bottom-centred Arial style you can restyle in one place. It is a deliberately clean starting point for typesetting rather than a guess at what your CSS was trying to do.

Common use cases

  • Bringing web captions into Aegisub to typeset, reposition or restyle them properly
  • Preparing a subtitle track for hardsubbing so captions survive re-encoding and platform uploads
  • Merging web captions into an existing ASS project that already has its own styles
  • Escaping a VTT file whose CSS styling no longer matches the video it belongs to
  • Producing a subtitle file for mpv or VLC playback with full control over font and placement

Tips for best results

  • ASS keeps time in centiseconds, so each timestamp is rounded to the nearest hundredth of a second. Both ends of a cue round identically, so no cue can come out inverted.
  • Multi-line cues are joined with ASS’s "\N" hard-break escape, which is how the format encodes a line break inside one Dialogue line.
  • If your VTT text contains a literal brace, it is replaced with a round bracket — a brace would otherwise open an ASS override block and hide the words inside it.
  • To restyle every line at once, edit the single Style entry in the [V4+ Styles] section rather than touching the Dialogue lines.

How to Convert VTT to ASS Online

Here is how a VTT → ASS conversion works on PrivConvert, from start to finish. What you gain with ASS: rich styling and effects.

1
Upload your VTT file

Drag and drop your file into the upload area, click to browse your device, or paste a URL to a file hosted online. You can upload files up to 250 MB and batch convert up to 20 files at once.

2
Automatic conversion

Once uploaded, the conversion from VTT to ASS starts automatically. The process runs entirely in an isolated environment - your data never leaves the secure pipeline.

3
Download your ASS file

Your converted file is ready instantly. Click the download button to save it to your device. The file is deleted from memory immediately after download.

Private by design, not as an afterthought

Most online converters upload your files to a server, keep them for days, and may mine them for AI training or resale. PrivConvert was built the opposite way — around your privacy.

No human ever sees it

Your files are handled entirely by automated code. No staff, partner or AI model ever reads, stores or trains on your data.

Zero data retention

Files are processed in volatile memory (RAM) and purged the instant your download is ready — nothing is ever written to disk, cached or backed up.

Encrypted transfers

Every upload and download is protected with TLS 1.3, so your file cannot be intercepted on the way to the server or back to you.

No account required

Convert instantly with no sign-up, no email and no profiling cookies. We never build a profile around you or the files you convert.

VTT vs ASS - Format Comparison

FeatureVTTASS
File extension.vtt.ass
Supported by PrivConvertYes (as input)Yes (as output)
Privacy-safe conversionIn-memory, zero storage
Max file size250 MB per file
Batch supportUp to 20 files simultaneously

Why people pick PrivConvert for ASS

Thousands of people trust PrivConvert with their files because privacy here is structural — enforced by how the service runs, not just promised.

250 MB Max file size
450+ Conversion tools
0 sec File retention
100% Free to use

Frequently Asked Questions

How do I convert VTT to ASS?
Upload your .vtt file above, complete the quick security check, and a complete ASS v4+ script is generated instantly, with every cue placed on one editable Default style. No install or sign-up required.
Why can't my WebVTT styling be translated directly?
WebVTT styles captions with CSS and cue settings, while ASS uses named styles and inline override tags. The two have no common vocabulary, so the converter keeps text and timing exact and gives you one clean style to build on instead of guessing at your design.
Why is my VTT styling not carried into the ASS file?
The two formats express styling through unrelated mechanisms — VTT through CSS and cue settings, ASS through named styles and override tags. Rather than guess at an approximation, the converter produces clean, correctly timed dialogue on one editable Default style.
Can I open the result in Aegisub?
Yes. The output is a complete ASS v4+ script with the script info, style and events sections that Aegisub, mpv, VLC and libass all expect.
Are speaker voice tags preserved?
The <v Name> wrapper is removed and the spoken text is kept. If you need speaker names on screen, add them to the cue text before converting.
How is my file handled?
Entirely in memory. Nothing is written to persistent storage, and the file and its text are gone the moment your download is ready.

Further Reading