SUBTITLE TOOL
Shift WebVTT subtitle timings in seconds
Fix subtitles that are early/late by nudging every cue forward or backward. Upload a .vtt file, enter a shift value like +3600 or -5, and download the corrected file instantly.
Subtitle Timecode Shifter
Works with common WebVTT timing lines like 00:00:10.000 --> 00:00::12.000
(including cue settings). Negative times are clipped to 00:00:00.000.
How this tool works
WebVTT subtitles are made of “cue” blocks, each with a start and end time. This tool adds (or subtracts) your shift value from every cue timing line.
- Shift forward if subtitles appear too early (example:
+2.5). - Shift backward if subtitles appear too late (example:
-1). - Safe clipping: cues that would become negative are clipped to
00:00:00.000.
Your file is processed and returned immediately. Nothing is intentionally stored long-term on the server.
Tip: If your subtitles are off by a constant amount (like exactly 1 hour due to timecode mismatch), this is the fastest fix.
Practical guide
How to figure out the right shift
- Pick a clear moment (first spoken line, door slam, a name callout).
- Pause and compare: note the video timestamp vs when the subtitle appears.
- Compute the offset: if the subtitle appears 2.3s early, use
+2.3. If it appears 1.0s late, use-1.
Common real-world fixes
- +3600 seconds – frequent when a file was authored with a 1-hour timecode base.
- ±0.2 to ±1.5 seconds – typical “small drift” between different encodes/releases.
- Negative shift – useful when subtitles lag behind speech.
Sample WebVTT (copy + try)
WEBVTT 00:00:01.000 --> 00:00:03.000 Hello — this is a sample cue. 00:00:04.500 --> 00:00:07.000 Try shifting me by +2.0 seconds. 00:00:08.000 --> 00:00:10.500 Or shift backward by -1.0 seconds.
Tip: If you want to test quickly, save the sample as sample.vtt, then upload it here.
Troubleshooting & FAQ
My subtitles are still off after shifting. Why?
My file uses MM:SS.mmm instead of HH:MM:SS.mmm — is that okay?
HH:MM:SS.mmm style.
I used a negative shift and some cues disappeared. Did the tool break?
00:00:00.000.
If many cues were near the beginning, several may get clipped heavily. Try a smaller negative shift.
Do you support SRT or SCC here?
.vtt) shifting only. If you have another subtitle format,
convert it to VTT first, then apply a shift if needed.
Will cue settings (like position/align) be preserved?
Is my subtitle file stored anywhere?
Tip: If you’re fixing a known offset (e.g., “subtitles are exactly 2 seconds early”), test on a short clip first.
Quick glossary
- Cue – one subtitle block with a start and end time.
- Offset – the constant difference between subtitle timing and video timing (what this tool fixes).
- Drift – subtitles gradually go out of sync over time (needs re-time, not a simple shift).
- Timecode – the timestamp format used for syncing subtitles to media.