Shift SRT Subtitle Timing
Shift SRT subtitle timing with one constant offset. This srt time shift moves every cue by signed seconds, previews the before and after, and refuses a negative result instead of truncating it.
Positive offsets delay the subtitles; negative offsets make them appear earlier. One offset is applied to every cue, and the duration of each cue does not change.
Up to 2 MB and 10,000 cues. Millisecond precision, offsets up to ±24 hours.
Shifting runs in the browser and does not use transcription credits. Saving a signed-in task stores the original SRT, the shifted cues, and the offset on the account, so that save is not an offline-only promise. The workflow is not fully local if you save, but no media is uploaded.
How to shift SRT subtitle timing
Use the tool frame above. Apart from the caption file, the only input is one signed offset.
- 1
Add the SRT text
Choose a .srt file or paste the source. A file without a readable 00:00:00,000 --> 00:00:02,000 range is rejected before anything moves.
- 2
Enter a signed offset
Type seconds such as 1.25 to delay the captions or -0.5 to make them appear earlier. Quick buttons cover the common steps.
- 3
Check before and after
Every cue shows its original range beside the shifted range. The offset is exact, so you can verify the whole track at a glance and edit only the caption text if a word is wrong.
- 4
Download or save
Download works without an account. Sign in only to store the shifted cues, the original file, and the offset in My records.
Practice with late-captions.srt and compare it with the expected +1.25 s result.
Fix a constant subtitle delay
One offset repairs the most common sync problem: every caption is late or early by the same amount.
A constant delay usually comes from a mechanical cause, not a recognition error. An export wrote timestamps against a slightly different start point, a clip was trimmed after the captions were made, or the audio begins a fraction of a second after the picture. In all three cases the error is the same for cue one and cue four hundred.
Because the offset is constant, the internal rhythm of the captions survives. The gaps between cues, the length of each cue, overlapping dialogue, and the text itself are all untouched. That is the difference between shifting a track and re-timing it: shifting preserves the structure you already approved, while re-timing rebuilds it.
If you do not have an SRT file yet, create one from audio on the SRT Subtitle Generator, then return here to repair its offset. To read the words without timestamps, use the SRT to TXT Converter.
Choose a positive or negative offset
The sign is the whole instruction: positive adds time, negative removes it.
- Positive offset
- Adds time to every cue, so subtitles wait longer. +1.25 s turns 00:00:01,000 into 00:00:02,250.
- Negative offset
- Removes time from every cue, so subtitles appear earlier. -0.5 s turns 00:00:02,000 into 00:00:01,500.
- Zero offset
- Rebuilds the file without moving anything, which is useful for renumbering cues and normalizing timestamps.
- Precision
- Offsets are integer milliseconds. 0.001 s is the smallest step, and the download always prints HH:MM:SS,mmm.
Before and after: one offset, every cue
With +1.25 s entered, each range moves by exactly 1,250 ms. No cue changes length.
- Before 00:00:00,500 → 00:00:02,000 · Welcome back to the lecture.
- After 00:00:01,750 → 00:00:03,250 · Welcome back to the lecture.
- Before 00:00:02,400 → 00:00:04,100 · Today we cover time shifting.
- After 00:00:03,650 → 00:00:05,350 · Today we cover time shifting.
- Before 00:00:04,600 → 00:00:06,200 · Every cue moves by the same amount.
- After 00:00:05,850 → 00:00:07,450 · Every cue moves by the same amount.

Move the track, keep the rhythm
Delayed captions are a timeline problem, not a text problem. Shifting selects every cue and nudges the whole track, so the spacing the captioner already set is preserved. Download the result as a real SRT file and import it into the same editor you exported from.
Illustration of a shifted caption track, not a customer result.
When time shifting cannot help
A constant offset only fits constant errors. Three situations need a different tool.
- Timing drifts: if captions start on time but fall further behind, the error grows and no single offset can fix both ends.
- The frame rate changed: converting between 23.976 and 25 fps rescales time non-linearly, so use a frame-rate conversion, not a shift.
- The words came from another take: a perfect shift still leaves the wrong text, so the captions need to be transcribed again.
- You want automatic alignment: this page never listens to the audio, so it cannot detect the delay for you.
WhisperWeb vs manual editing vs automatic sync vs captioning APIs
Checked September 19, 2026. Names below label an approach; this page does not link out to those products.
| Decision | WhisperWeb | Manual per-cue editing | Automatic sync tools | Hosted captioning API |
|---|---|---|---|---|
| What actually runs | WhisperWebAvailable: One exact offset in your browserEvery cue moves by the same integer millisecond amount. | Manual per-cue editingLimited: You retype each cueWorkable for a handful of cues, painful for hundreds. | Automatic sync toolsLimited: A waveform is analysedDetected delay can be useful, but the result is an estimate you must still review. | Hosted captioning APINot available: Audio uploaded to a queueRev, AssemblyAI, Deepgram, Sonix, and Otter run speech recognition or alignment, not a shift-only call. |
| Negative time handling | WhisperWebAvailable: Rejected with the smallest usable offsetNothing is truncated, so later cues cannot silently drift. | Manual per-cue editingLimited: Depends on the editorSome editors clamp a cue to 00:00:00,000 without warning. | Automatic sync toolsNot available: Not the pointAligner tools focus on detection, not on the zero boundary. | Hosted captioning APINot available: Outside the request contractAn API that only transcribes or aligns has no defined result for a negative offset. |
| Cost, account, and file handling | WhisperWebAvailable: Guest download, no creditsSign in only to keep the shifted cues in My records. | Manual per-cue editingAvailable: You already own the editorNo upload, but the work is entirely manual. | Automatic sync toolsNot available: Often an account and a quotaCaption desks may bill for a transcription job rather than a shift. | Hosted captioning APINot available: Priced per audio minuteYou pay for a recognition or alignment run even when the fix was one constant offset. |
| Best suited to | WhisperWebAvailable: A uniform delay or advanceLate, early, or offset exports where the error is constant. | Manual per-cue editingLimited: A few individually wrong cuesFine when only one or two lines are mistimed. | Automatic sync toolsLimited: Drift and unknown offsetsHelpful when you genuinely do not know the delay. | Hosted captioning APILimited: Creating captions at scaleStrong when the job is speech to text or forced alignment, not a fixed correction. |
Approach and provider comparison, checked September 19, 2026. Rev, AssemblyAI, Deepgram, Sonix, and Otter are named as services in this category; this page does not link to them. WhisperWeb details match the tool on this page.
Limits, privacy, and credits for SRT time shift
This is a text operation on a caption file, not a transcription job.
The browser accepts up to 2 MiB of UTF-8 SRT and 10,000 cues, and offsets are bounded to ±24 hours so a typo cannot create an absurd timestamp. Those caps appear in the tool frame and are unrelated to the 1 GB media limit used for speech transcription.
Parsing, shifting, and download all run locally in this page. No media is uploaded and no transcription credits are spent. If you sign in and save, WhisperWeb stores the original SRT, the shifted cues, and the offset on your account so you can reopen the exact result later.
Frequently asked questions
Does this automatically detect delay?
No. This page applies the offset you enter and never analyses the audio, so it cannot measure the delay for you. If you do not know the value, compare a known line with the picture, then enter the difference and confirm it in the before-and-after preview.
What if timing drifts over a video?
A single offset cannot fix drift, because a growing error needs a different correction at each end. Drift and frame-rate mismatch need a stretch or a frame-rate conversion, which this tool deliberately does not perform.
What happens before zero seconds?
The shift is refused. WhisperWeb shows the smallest offset the file can accept instead of clamping cues to 00:00:00,000, so a cue is never silently dropped and the remaining captions stay evenly spaced.
Can I fix one cue after shifting?
You can edit the caption text, but not a single cue's times. One constant offset keeps every cue's duration and spacing, and editing one time would break that guarantee. If one line is still off, apply a different offset to the whole file so the structure stays intact.
Is the downloaded file a real SRT?
Yes. The download is UTF-8 text with cues numbered from 1 and timestamps written as HH:MM:SS,mmm, which editors, players, and publishing platforms accept as a standard SubRip subtitle file.
Does shifting use transcription credits?
No. Parsing and shifting happen in your browser and spend no credits, and a guest can download the result. Signing in only stores the shifted cues in My records under this tool.
Related Tools
Generate a new caption file from audio, or read the words from an existing SRT, on those pages. Return here when a constant delay needs fixing.