Subtitle Timing Shifter

Captions early or late? Shift every timestamp by an offset, fix drift by syncing two lines, or convert between frame rates. Works on SRT and VTT, entirely in your browser.

Your captions

or drop it here

Opens on your device. Your file never leaves it.

Shift or stretch

Method
sec

Negative = earlier.

1 = the whole file.

Save as

Applied: +1.5 s from caption 1

  • 0:00.000 → 0:01.500 I tried every serum on my shelf
  • 0:02.400 → 0:03.900 and this is the only one
  • 0:05.300 → 0:06.800 Here's why it works.

Two-point sync fixes drift: pick an early and a late caption, type when each line is actually spoken, and every time in between is stretched to match.

Free, no sign-up. Runs in your browser; nothing you type is sent anywhere.

Now film it. Mimic edits it.

Raw clip in, finished UGC video out: cuts, captions, hook and zooms done for you.

Get started

Pick the fix that matches the problem

ProblemMethodWhat it does
Every caption is late by the same amountOffsetAdds or subtracts the same seconds from every time
You trimmed the intro off the videoOffset from caption #Shifts only from that caption on
In sync at the start, late by the endTwo-point syncStretches and shifts so two known lines land exactly
Timed for 23.976 fps, video plays at 25Frame rateScales every time by old ÷ new

How two-point sync works

Pick an early caption and a late one, and type when each line is actually spoken in your video. The tool draws a straight line through those two points: every time is multiplied by the same factor and moved by the same offset, so the drift is gone from the first caption to the last.

Pick lines far apart, near the start and near the end, for the most accurate stretch.

  1. 1

    Find two lines

    Play your video and note the second each of two lines starts, one early and one late.

  2. 2

    Enter their numbers and times

    The tool shows each caption's current time and first words, so you pick the right ones.

  3. 3

    Check the preview

    The first captions are listed old → new before you download.

Worked example

Caption 1 should start at 1.0 s but says 0.0 s; caption 3 should start at 6.0 s but says 5.3 s.

Stretch = (6.0 − 1.0) ÷ (5.3 − 0.0) = 0.943. Offset = 1.0 − 0.0 × 0.943 = 1.0 s.

Caption 2 at 2.4 s moves to 1.0 + 2.4 × 0.943 = 3.26 s.

Sources

Questions

How do I delay subtitles by a few seconds?

Choose Offset and enter a positive number of seconds. A negative number makes captions appear earlier.

My subtitles drift further out of sync over time. What do I do?

Use two-point sync. Drift means the timing is scaled wrong, usually because the captions were made for a different cut or frame rate, and a single offset can't fix it.

What happens to captions that move before 0:00?

They're clamped to 0:00 and the tool tells you how many. Delete them in the SRT editor if they belong to footage you cut.

Does it change the caption text?

No. Only start and end times change. You can also save the result in the other format (SRT ↔ VTT).

Is my file uploaded?

No. The file is read and rewritten in your browser.