AnyFormat

00 ASS → VTT

ASS to VTT

Typesetting out, browser-ready captions in.

01ASS in
02VTT out
03Options 4

Negative moves subtitles earlier. Use this when they run consistently ahead of or behind the audio.

For subtitles that drift progressively. 25 fps material played at 23.976 needs 1.0427.

Ends each cue just before the next begins, so no two are ever on screen at once.

  • No upload The conversion runs in this tab. Your file never travels — not to us, and not to the advertising.
  • No sign-up, no email, no daily cap There is no account system to sign up to.
  • No size limit we invented Only your device's memory — about ~2 GB on a desktop browser, ~400 MB on a phone.
  • Turn your Wi-Fi off and convert anyway The conversion needs nothing but this page. Ads will not load without a connection; your file will still convert. That is the whole claim, and it takes five seconds to check.

Converts ASS to WebVTT so the subtitles work in a browser. Browsers do not support ASS at all — not partially, not with a polyfill in the general case — so this conversion is the only route from a typeset script to a working <track>.

The gap is wider than it looks

WebVTT does have some positioning: line, position, align and size settings, plus CSS styling of cues. What it does not have is anything close to ASS's model — no absolute pixel placement, no rotation, no per-character animation, no karaoke timing, no vector drawing.

Mapping the subset that does correspond would produce something that looks half-right, which is worse than something that looks plainly plain. So the styling is removed entirely and you get clean, readable captions.

Signs and on-screen text

Typeset releases often place translated signs over the original on-screen text using absolute positioning. Those become ordinary captions at the bottom of the screen, which is confusing if the sign and the dialogue appear at once. If the release has a separate dialogue-only track, that is the one to convert.

What gets checked while converting

Real subtitle files are rarely clean, and a converter that passes the mess straight through is not doing its job. Four things are checked and reported every time.

Cues out of order — some editors append late additions at the end of the file. They are sorted, and you are told it happened.

Zero-length or reversed cues — an end time at or before the start. Players skip these silently, so they are given a one-second duration instead.

Overlaps — two cues on screen at once. Left alone by default because some formats use it deliberately for speaker labels; there is an option to trim them.

Malformed blocks — anything without a readable timestamp is skipped and counted, rather than corrupting the cue numbering.

Other names for this

Also searched as “ass to webvtt”.

Questions

Can browsers play .ass files directly?
No. There are JavaScript renderers such as JASSUB that draw ASS onto a canvas, but no browser supports the format natively.
Can I keep at least the positioning?
Not meaningfully. ASS positions in absolute pixels against a declared resolution; WebVTT positions in percentages against the video box. A mapping would be wrong more often than right.
Is my subtitle file uploaded?
No. The parsing and rewriting happen in this tab. Subtitle files often contain an unreleased script or a client’s content, which is a good reason not to send them to a stranger’s server. Turn your Wi-Fi off and the tool keeps working.
Can I convert several files at once?
Yes — drop as many as you like, or a whole folder. Each keeps its original name with the new extension, and you can download them individually or as a ZIP.