How to sync subtitles: fix out-of-sync timing

In this guide

  1. Why subtitles fall out of sync
  2. Diagnosing the problem
  3. Fix: constant offset
  4. Fix: progressive drift
  5. Fine-tuning to the millisecond
  6. Preventing sync issues

Few things are more frustrating than subtitles that appear a few seconds before or after the dialogue. It is fixable — but the fix depends on which kind of sync problem you have. This guide walks through both types and the correct approach for each.

Why subtitles fall out of sync

Subtitles are timed to a specific video file. If the video you are watching is not the same edit as the one the subtitles were made for, they will be off. Common causes:

Diagnosing the problem

The first thing to determine is whether the offset is constant or progressive.

Constant offset

Every subtitle is off by roughly the same amount. Cue 5 is 3 seconds early, cue 50 is 3 seconds early, cue 500 is 3 seconds early. This is the easiest case to fix — one shift fixes everything.

Progressive drift

The offset grows over time. Cue 5 is 1 second early, cue 50 is 3 seconds early, cue 500 is 12 seconds early. This means the subtitle timing was built for a different frame rate or speed. A single shift will not fix it — you need a scale or stretch operation.

Fix: constant offset

Load your subtitle file into the SRT Time Shifter. Enter the offset in seconds — positive to shift later, negative to shift earlier. Apply and download the result.

To find the right offset, note the timecode of a distinctive line in the subtitle file and the actual audio timecode of that same line. Subtract one from the other. For example:

Fix: progressive drift

Progressive drift requires a linear retime or stretch operation. Our current tools apply uniform offsets, not linear scaling. If you confirm progressive drift, the standard workflow is:

Note that many "drift" problems are actually a constant offset in disguise. Test with a constant shift first before assuming drift.

Fine-tuning to the millisecond

Once you are close (within a few hundred milliseconds), switch to the Millisecond Shifter. Offsets of ±80ms to ±120ms are common adjustments that feel "not quite right" until corrected. These fine adjustments are easy to apply and easy to undo.

Preventing sync issues

Summary

Constant offsets are easy: shift everything by the same amount. Progressive drift needs a linear retime feature not currently in this toolset. Millisecond-level fine-tuning refines an almost-correct result. Validate at the end and you will rarely have trouble.

Read next: Subtitle timing best practices.