Why are my subtitles out of sync after trimming a video?
An SRT file records captions against the full-length source: 00:03:45 means three minutes and 45 seconds into the original video. When you trim a clip, the new video starts at 00:00, but the captions are still positioned on the old timeline — so they appear minutes early or late inside the clip.
Original video:
03:42 ───────────── 04:18
subtitle
03:45 ─── 03:48
Trimmed clip:
00:00 ───────────── 00:36
subtitle
00:03 ─── 00:06The subtitle text is unchanged; only the time base moved. That is why the fix is a re-timing operation, not a re-transcription.
Constant offset or a different cut?
Before changing anything, tell the two cases apart:
- Constant offset — every caption appears early or late by the same amount. This is the trim case: re-time by subtracting the clip start.
- Different cut — captions are scattered or the text makes no sense at its position. The SRT was made for another version of the edit (different frame rate or a different sequence); re-export the master SRT from the matching cut.
How to fix the timestamps
- Note the clip's original start time. Read the source in/out point of the clip from the editing timeline.
- Subtract that start from every timestamp in integer milliseconds, for both the start and end of each caption.
- Clamp negatives to zero and renumber from 1, then save the file.
- Or skip the hand editing: the split SRT by timestamp tool resets one range, and the batch SRT splitter does every clip in the CSV in one run.
The reset SRT timestamps guide covers the subtraction maths in detail with a worked example.
Stop re-fixing the same clips
The repeated version of this problem is fixing subtitles clip by clip, every time the edit changes. Keep the master SRT untouched, describe the clips once in a CSV, and regenerate all files together — the master SRT workflow shows the whole loop.
Out-of-sync subtitles FAQ
Fix every clip's timing at once
Put the clip ranges in a CSV once and generate re-timed, clip-relative SRT and TXT files for all of them in one ZIP.
Batch split my SRT