Why Are My Subtitles Out of Sync? 6 Causes and How to Fix Each One
Subtitle drift has a handful of common root causes. Here's how to diagnose which one you're dealing with and fix it without re-timing every line by hand.
Subtitle sync problems fall into two categories: a constant offset (every line is early or late by roughly the same amount) and drift (the gap grows or shrinks as the video plays). They have different causes and different fixes.
1. Constant offset: wrong frame rate assumption
This is the most common cause of a fixed, unchanging delay. SRT files store timestamps in real time (hours:minutes:seconds), but the subtitles were often originally timed against a specific frame rate (23.976fps, 25fps, 29.97fps). If the file was created for a 25fps cut of a video and you’re watching the 23.976fps version, every timestamp will be off by a small, constant percentage that looks constant over a short clip but can drift over a long one.
Fix: Most video players let you nudge subtitle timing by a fixed offset (often +/- keys or a sync menu). If the offset is consistent throughout, a flat adjustment of a few hundred milliseconds usually solves it.
2. Drift: frame rate mismatch (the real culprit)
If the delay gets worse as the video goes on, it’s very likely a genuine frame rate mismatch rather than a simple offset. For example, subtitles timed for a 25fps PAL version of a film running against a 23.976fps version. A 25-to-23.976 mismatch is about a 4% stretch, which is barely noticeable in the first minute but can be several seconds off by the end.
Fix: This needs a resync tool that stretches the entire timeline proportionally, not a flat shift. Flat offsets will fix the start but make the end worse.
3. Extra or missing intro content
If the subtitle file was made for a version of the video with a different intro (a studio logo, a “previously on” recap, extra ads), everything after that point will be shifted by exactly the length of the missing/extra segment. This looks like a constant offset but is really a structural mismatch.
Fix: Apply a flat offset equal to the length of the extra/missing segment.
4. Malformed or out-of-order timestamps
Occasionally a cue’s timestamps are simply wrong: swapped start/end times, a typo in the hour field, or cues listed out of chronological order. Most players handle one bad cue gracefully, but a corrupted one can sometimes throw off everything that follows it, depending on the player.
Fix: Open the file in a plain text editor and scan for anything that looks obviously wrong (an hour value that jumps unexpectedly, an end time earlier than its start time).
5. Variable frame rate (VFR) source video
Some screen recordings and phone videos are encoded at a variable frame rate. Subtitles timed against a constant-frame-rate assumption will drift unpredictably throughout a VFR video, since the real-world time per frame isn’t constant.
Fix: Re-encode the video to a constant frame rate before syncing, or use a resync tool that works from real timestamps (SRT/VTT already do this) rather than frame counts.
6. Format conversion that dropped precision
Converting between subtitle formats shouldn’t change timing, but a lossy or poorly written converter can round timestamps and introduce small, cumulative errors across a long file. This shows up as a very gradual drift that’s easy to mistake for a frame rate issue.
Fix: Use a converter that preserves exact timestamps rather than reformatting them. Our subtitle converter keeps original timing intact across SRT, VTT, SBV, and other formats. Nothing is recalculated, so you can convert formats without reintroducing sync problems.