Turn WebVTT (.vtt) subtitles into SUB (.sub) format quickly with a simple online converter that runs in your browser.
.vtt file or click "Add Files" to pick it from disk. You can also paste the cue text directly. Batch is supported — queue multiple WebVTT tracks and convert them in one pass..sub (time-based, HH:MM:SS.cc start/end stamps), which is the modern, FPS-independent flavor — not the legacy MicroDVD frame-based variant.<v> voice tags, CSS styling, region blocks — are dropped because SubViewer doesn't carry them; plain text, line breaks ([br]), and basic <b>/<i>/<u> formatting survive..sub ready for VLC, MPC-HC, or legacy DVD authoring tools.WebVTT is the W3C specification for HTML5 <track> elements, built for the browser. SUB (SubViewer) is an older desktop-player format that predates HTML5 video by roughly a decade. If you authored captions in a modern web tool and now need them to load in a desktop player, set-top box, or video-editing pipeline that only reads .sub, conversion is the only path. Common reasons people make this switch:
.sub from the video folder. VLC supports both SubViewer and MicroDVD; MPC-HC and KMPlayer ship with strong SubViewer compatibility out of the box..sub as a soft-subtitle source for burning to disc, where WebVTT isn't recognized..srt or .sub next to the video file. WebVTT support is hit-or-miss on hardware that old..sub natively. Some translators and proofreaders prefer the cleaner SubViewer structure to WebVTT's positioning metadata.line:, position:, align:) and CSS references mean nothing outside a browser. Converting to SUB produces a stripped-down track that plays consistently everywhere.| Property | VTT (WebVTT) | SUB (SubViewer 2.0) |
|---|---|---|
| Standard / origin | W3C Candidate Recommendation Draft, WHATWG draft 2010 | SubViewer player format, late 1990s |
| Timing model | Time-based (HH:MM:SS.sss, milliseconds) |
Time-based (HH:MM:SS.cc, centiseconds) |
| FPS dependent? | No | No (this is SubViewer; MicroDVD .sub IS frame-based) |
| Header / metadata | WEBVTT line, optional NOTE / STYLE / REGION blocks |
[INFORMATION] block with [TITLE], [AUTHOR], [FONT] |
| Styling | CSS, voice tags <v>, classes, ruby |
Basic <b>, <i>, <u> only |
| Positioning | Yes (line:, position:, align:, size:) |
No |
| Browser playback | Native via HTML5 <track> |
None — desktop players only |
| Typical use | Web video, streaming captions, accessibility | Desktop players, DVD authoring, archives |
.sub — Know Which One You NeedThe .sub extension is shared by two unrelated formats. XConvert writes the SubViewer flavor by default because it survives frame-rate changes; here's how to tell them apart:
| Flavor | Timing | First-line marker | Behavior at 23.976 vs 25 fps |
|---|---|---|---|
| SubViewer 2.0 | 00:01:23.45,00:01:25.12 (centiseconds) |
[INFORMATION] header |
Identical — FPS-independent |
| MicroDVD | {1000}{1200}Text (frame numbers) |
{1}{1}23.976 or similar fps marker |
Drifts — must be re-converted for new fps |
If your downstream player only accepts MicroDVD-style frame stamps (rare in 2026 — mostly very old DivX-era players), convert to SRT first via VTT to SRT, then use a frame-stamp tool. For most modern use cases, SubViewer is the right .sub.
No. SubViewer doesn't carry positioning (line:, position:, align:), CSS classes, voice tags (<v Speaker>), or region blocks — those are WebVTT-only constructs. Plain caption text, line breaks (rendered as [br]), and inline <b>, <i>, <u> tags are preserved. If positioning matters (e.g., bottom-left vs top-right for speaker identification), convert to VTT to ASS instead — SSA/ASS keeps positioning and full styling.
.sub file?VLC reads both SubViewer and MicroDVD .sub, but it picks one parser based on the first line. If the file starts with [INFORMATION] it's parsed as SubViewer; if it starts with {1}{1}... it's parsed as MicroDVD. Output from XConvert opens with [INFORMATION], so VLC treats it as SubViewer. If VLC still ignores it, check that the filename matches the video (e.g., Movie.mkv and Movie.sub in the same folder) — that's how most players auto-load external subtitles.
No — that's a common mix-up because both use .sub. SubViewer uses real timestamps (HH:MM:SS.cc), so it plays at the right time regardless of whether the video is 23.976, 24, 25, or 29.97 fps. MicroDVD uses frame numbers {start}{end} and DOES drift if the video frame rate changes. XConvert writes the SubViewer flavor specifically to sidestep this whole class of sync bug.
Cue settings (align:start, line:90%, position:50%, size:80%) appear after the timestamp in WebVTT. They're stripped during conversion because SubViewer has no equivalent. The caption text itself transfers cleanly. If you need to keep cue placement, you have two options: keep the WebVTT and find a player that supports it (Chrome, Firefox, Safari 14.1+ with HTML5 <track>), or convert to ASS/SSA which has full positioning support.
Yes. Drop the entire folder of .vtt files into the queue and they all process in parallel in your browser. There's no per-file or quantity cap because nothing leaves your machine. Output filenames match input (e.g., S01E01.en.vtt → S01E01.en.sub) so they auto-pair with the matching video files in players that do filename-based subtitle loading.
Usually yes for SubViewer .sub, but smart TV subtitle support varies by year and model. As a rule of thumb: if your TV accepts .srt from a USB stick, it almost certainly accepts SubViewer .sub too. If you're seeing "subtitle format not supported," try VTT to SRT — SRT is the most universally supported sidecar subtitle format across consumer hardware.
<v Speaker> voice tags?WebVTT voice tags like <v Alice>Hello!</v> are stripped to plain text (Hello!) during conversion because SubViewer has no speaker concept. If you need the speaker name in the caption, pre-process the VTT to inline the label (Alice: Hello!) before converting — that text survives. For full speaker styling with colors per voice, convert to ASS instead via VTT to ASS.
UTF-8 by default, which handles every language including CJK, Arabic, Cyrillic, and emoji. Some very old players (early-2000s DivX boxes) expect ANSI / Windows-1252 and may show mojibake on UTF-8 files; in that case you'd need to transcode the file with a text editor afterwards. Modern players — VLC, MPC-HC, PotPlayer, Kodi — all handle UTF-8 SubViewer correctly.
Yes — the reverse direction is available at SUB to VTT. Round-tripping is mostly lossless for the text and timing, but any WebVTT-specific positioning or styling you lost on the first conversion is gone for good — it can't be reconstructed from a SubViewer file.