How to fix subtitle delay
TL;DR — Fix subtitle files that consistently appear too early or too late by measuring the offset and applying a global time shift.
Subtitle delay usually means one simple thing: every cue is offset by roughly the same amount.
Quick answer
If the whole file is late or early by a fixed amount, measure the offset and apply a global shift to every subtitle timestamp.
That is what the Subtitle Time Shifter is for.
Confirm that it is really delay
This guide is for the easy case:
- subtitles are late by about the same amount throughout the file
- or subtitles are early by about the same amount throughout the file
If the mismatch gets worse over time, that is drift rather than simple delay, and the file may need deeper retiming. How to fix subtitles that are too fast or too slow helps distinguish those two cases.
How to measure the offset
Pick one obvious line where speech starts clearly.
Compare:
- the moment the speech starts
- the moment the subtitle appears
Examples:
- subtitle appears
1.5 seconds late-> shift by-1500 ms - subtitle appears
0.7 seconds early-> shift by700 ms
Step-by-step workflow
- Open the video and subtitle file together.
- Measure whether captions are early or late.
- Open the Subtitle Time Shifter.
- Enter a positive value to delay subtitles more.
- Enter a negative value to move subtitles earlier.
- Export the adjusted file and test it again.
Common mistakes
Guessing instead of measuring
Even a rough measurement is better than repeated random shifts.
Using the wrong sign
If subtitles are late, you usually need a negative shift. If subtitles are early, you usually need a positive shift.
Trying to fix drift with one global change
If sync gets better in one scene and worse in another, the problem is not just delay.
For a broader troubleshooting pass, open How to fix out-of-sync subtitles next.
Related guides
Use the Subtitle Time Shifter
Move subtitle timestamps forward or backward for SRT, VTT, and ASS files. Free browser-based tool — no signup, no upload. No signup, no upload, and everything runs locally in the browser.
Open Time shifter