Convert SRT / SCC / ITT to WebVTT (.VTT)
Subtitle → WebVTT Converter
Supported inputs: .srt, .scc, .itt/.xml (iTT/TTML). Output: .vtt.
How this converter works
Subtitle formats store timing in different ways. This tool converts your source captions into standard WebVTT cue blocks — so you can use them in browsers, HTML5 players, and modern streaming workflows.
- SRT → VTT: Converts cue timings and keeps plain text lines clean.
- SCC → VTT: Converts Scenarist captions to readable WebVTT cues.
- ITT/TTML → VTT: Converts XML-based subtitles to WebVTT (some formats use frames).
Tip: WebVTT is the most compatible format for web playback (HLS players, embedded players, and HTML video tags).
Practical guide
Pick the right file type
Great for simple captions. Usually easiest to convert and edit.
Common for broadcast workflows. Often includes styling/positioning signals.
Used in platform deliveries. Sometimes uses frame-based timestamps (needs correct FPS).
When the FPS box matters
HH:MM:SS:FF.
If you’re seeing timings that look “almost right” but slightly off, check the correct FPS (common values: 23.976, 24, 25, 29.97, 30).
After converting
- Open the
.vttin a text editor and spot-check the first 2–3 cues. - Test in your player (browser/website) to ensure cues render and line breaks look right.
- If cues are consistently early/late, use the VTT Timecode Shifter tool to apply a constant offset.
Tip: If you’re synced at the start but drift later, that’s usually a framerate/timebase mismatch — not a constant offset.
Troubleshooting & FAQ
My converted VTT downloads but doesn’t show captions in the player.
WEBVTT and cue lines look like 00:00:01.000 --> 00:00:03.000.
My ITT file uses HH:MM:SS:FF. What FPS should I use?
23.976, 24, 25, 29.97, 30.
A wrong FPS can cause cues to drift over time.
The tool says conversion failed. What causes that?
Will styling/positioning be preserved?
Do you store my subtitle files?
My VTT is slightly early/late after converting. How do I fix it?
+2.5 or -1 seconds).
If it drifts more and more, it’s likely an FPS/timebase mismatch.
Tip: If you’re delivering captions to multiple platforms, keep your original subtitle files and treat converted VTTs as platform-specific outputs.
Quick glossary
- Cue – one subtitle block with a start time, end time, and text.
- Timebase / FPS – how time is measured (frames vs milliseconds). Wrong FPS can cause drift.
- Offset – a constant shift (captions are always early/late by the same amount).
- Drift – captions start in sync but become more out-of-sync over time.