Fix subtitle timing

When the whole file runs a few seconds early or late, or the total length does not match the video, fix it in one pass by shifting or scaling the timing.

Accepts .srt and .vtt up to 5 MB. Everything is exported as SRT.

Enter a positive number if the subtitles appear before the picture, a negative one if they appear after

The file is never uploaded — everything runs locally in your browser

Still syncing subtitles line by line?

The full version generates the subtitles straight from the video’s speech, so the timing comes from the audio itself and there is nothing to line up.

Sign up free and get trial credits

FAQ

How do I work out how many seconds to shift?

Pick an obvious anchor: the moment the voice-over says its first word, or the instant a product name appears. See which cue is on screen at that moment and which one should be, and the gap between them is the number of seconds to shift. If the subtitles appear before the sound, enter a positive number to push them later.

When should I scale instead of shift?

When the start of the file lines up but the drift grows towards the end, the frame rate or duration assumption is off (for example the subtitles were timed for 25 fps but the video is 23.976 fps). That is when you scale. The formula is “real video length ÷ the end time of the last subtitle”.

Will shifting push some subtitles below 0?

They are clamped to 0 rather than going negative. A negative timestamp makes most players drop that cue entirely without any error, which is far more dangerous than clamping to 0. If many cues are clamped, the shift is too large — reduce it and try again.

Can I change just one stretch in the middle?

No. This tool only shifts or scales the file as a whole. Changing one section means re-timing it, so it is better to run the full version and re-transcribe the video — that is more accurate than patching it by hand.