No upload to server · Runs in browser
VTT time shift
Fix constant WebVTT delay: shift all cues together for HTML5 video, Reels exports, or player preview—then download a corrected .vtt file without uploading to a server.
Or paste content below. Processing stays on your device.
When to shift WebVTT instead of SRT
Use this tool when your workflow already outputs .vtt—for example
HTML5 <track> captions, some social export presets, or players that
expect dot-separated timestamps. If you only have .srt, use the
SRT time shift tool instead.
For vertical video line breaks after timing fixes, pair with the caption line length checker.
How to use
- Paste WebVTT text or choose a .vtt file (stays on your device).
- Enter offset in seconds or milliseconds (negative moves captions earlier).
- Click Apply shift, preview in your player, then Download .vtt.
Frequently asked questions
- How do I shift WebVTT timestamps online?
- Paste your .vtt file or open it from your device, enter an offset in seconds or milliseconds, and apply. All cues move together—ideal when captions are uniformly early or late on vertical or HTML5 video.
- Is my VTT file uploaded to your server?
- No. WebVTT is parsed and shifted in your browser with JavaScript. Subtitle Kit does not receive your caption content.
- Does this support the WEBVTT header?
- Yes. The tool reads standard WebVTT with a WEBVTT header and writes a valid file back with dot milliseconds (HH:MM:SS.mmm --> HH:MM:SS.mmm).
- VTT vs SRT—which should I use?
- WebVTT (.vtt) is common for HTML5 players, YouTube exports, and short-form pipelines. SubRip (.srt) uses commas in timestamps. Use our SRT time shift for .srt files.
- Can I use a negative offset?
- Yes. Negative values move captions earlier; positive values delay them. Timestamps clamp at zero so cues never go negative.