Fix subtitle timing: a constant delay or gradual drift?

Measure the mismatch at two points before choosing a correction. The wrong kind of adjustment can fix the opening and leave the ending further out of sync.

If every subtitle is early or late by the same amount, shift all cue times by that amount. If the error grows during playback, a fixed shift is insufficient. If timing changes after a cut, inspect separate ranges against the final edit.

Compare the beginning and the end

  1. Pick a clear spoken line near the start

    Note when the words are heard and when their subtitle appears. Use the same player and final video file throughout the check.

  2. Repeat near the end

    A similar difference suggests a constant offset. A larger difference suggests drift; an abrupt difference after an edit suggests a timeline discontinuity.

  3. Choose the correction

    Use a fixed shift for a consistent delay. For drift, use an editor with time scaling or two synchronization points. For cuts, check whether each remaining range still belongs to the final video.

Illustrative measurements — not a device benchmark
Near the startNear the endLikely next step
2.5 seconds early2.5 seconds earlyMove captions later by 2.5 seconds.
1 second early6 seconds earlyCheck timeline speed or frame-rate conversion; one offset will not fix both.
Correct before a cut12 seconds late after the cutReview the affected range against the final edit.

Apply the sign in the right direction

When captions appear before the spoken words, move them later. When they appear after the words, move them earlier. The shift tool uses these labels so you do not have to remember a sign convention.

The same offset is added to both the start and end of each selected cue, keeping its duration. For the synthetic example below, a 2.5-second later shift changes the first cue from 2.000–4.500 seconds to 4.500–7.000 seconds.

Expected results for the downloadable example
CueOriginal start → end2.5 seconds later
100:00:02,000 → 00:00:04,50000:00:04,500 → 00:00:07,000
200:00:05,000 → 00:00:07,25000:00:07,500 → 00:00:09,750
300:00:08,000 → 00:00:10,00000:00:10,500 → 00:00:12,500

Use a range when only part of the timeline changed

The range controls count cues in file order, starting at 1; they do not use custom identifiers written inside a VTT file. Select the first and last affected cue, preview, then compare both range boundaries with adjacent captions.

An adjustment can create overlaps or put a cue before an earlier cue. Whisper Web warns about overlaps and blocks out-of-order starts. These checks catch file-level problems; they cannot tell whether the captions match speech without your review.

Know when to stop shifting

  • A cue would start before zero

    The tool stops and reports the maximum earlier shift for that range. For the example starting at 2 seconds, moving all cues 2.5 seconds earlier is invalid; 2 seconds is the boundary.

  • The error grows over time

    A mismatch in playback speed or frame-rate conversion may change the relationship between the whole subtitle timeline and the video. Adding one constant cannot correct a changing error.

  • The file contains inline karaoke times

    WebVTT can include timestamps inside a cue. This tool refuses to shift those files because moving only the outer times would leave the inner timing wrong.

Verify with the final video

Save the adjusted copy under a new name. Load it into the final player, check the start and end again, then inspect every edited boundary. Keep the original until you have completed this review.

Each preview in Whisper Web is calculated from the source currently in the input box. Changing 2.5 to 3 seconds produces a 3-second shift, not a cumulative 5.5-second shift. To do a separate second operation, explicitly load the first exported result.

Common questions

Can a fixed offset fix a frame-rate mismatch?

Not when that mismatch changes timing progressively across the video. A fixed offset can align one point, but a changing error needs scaling or more detailed editing.

Will this tool listen to the audio and align subtitles automatically?

No. You measure the timing difference and choose the adjustment. The tool applies it to the existing subtitle timestamps.

Does the preview alter my original file?

No. The input stays in the workspace and the adjusted copy is downloaded as a new file. Keep the source file for comparison.

Correct a constant timing error

Your privacy choices

Allow Google Analytics and Plausible to measure visits and tool usage? Optional analytics stays off until you agree. Your files and transcripts are not included in product events. The tools work either way. Privacy Policy

Send feedback

Submitting sends your message, optional email, this page’s path and interface language to Whisper Web, stored with Cloudflare. Please leave out recordings, transcripts and sensitive information. Privacy Policy