Back to all tools

Transcription Tools

SRT Time Shifter

Fix subtitle sync without a desktop app. Paste SRT content or upload .srt files, set a time offset or scale, then copy or download shifted captions. Your subtitles stay on your device. Free to use with no account or card needed.

Timing adjustment

Add or subtract seconds from every cue, or apply a light time scale when captions slowly drift.

Paste SRT content

Paste subtitles exported from Premiere, Descript, YouTube, or any editor that saves .srt files.

Upload SRT files

Shift one or more .srt files with the timing options above.

Drop .srt files here

or click to browse

  • Free to use
  • No account required
  • Files stay in your browser
  • Offset + time scale
  • Batch export + ZIP

Need more than a free tool?

Vidsembly helps creators turn ideas into finished video content, from draft to publish, in one place.

Frequently asked questions

How do I shift SRT subtitle timing?
Paste SRT content or upload one or more .srt files. Enter an offset in seconds (positive delays subtitles, negative moves them earlier). Optionally set a time scale slightly above or below 1 to correct slow drift. Copy the shifted SRT or download a .srt file. Batches can be exported individually or as a ZIP archive.
Is this SRT time shifter free?
Yes. This tool is completely free with no account, card, watermark, or desktop software install required.
Are my subtitle files uploaded to a server?
No. Parsing and timestamp math run locally in your browser. Your SRT files and exported subtitles are not sent to Vidsembly or any third-party server.
When should I use a fixed offset vs. a time scale?
Use a fixed offset when every cue is early or late by the same amount, such as after you add a five-second logo bumper or trim the head of a clip. Use a time scale when captions slowly drift over a long video because the frame rate or playback speed changed. Start with a small scale change (for example 1.01 or 0.99) and preview in your player.
Will negative offsets create invalid timestamps?
By default, clamp to zero keeps cue times at or after 00:00:00,000. Turn that option off only when you intentionally need sub-zero times for a specific workflow. Most players expect non-negative timestamps.
Does this tool change subtitle text?
No. Cue dialogue and line breaks are preserved. Only index numbers are renumbered sequentially and start/end timestamps are recalculated from your offset and scale settings.
Can I shift multiple SRT files at once?
Yes. Upload several .srt files in one session. Each file uses the same offset and scale, and you can download shifted files individually or together in a ZIP.

About this tool

Fix sync after you trim or re-export video

Editors often remove a cold open, tighten silence, or replace a bumper after captions were already timed. Every cue stays wrong by the same number of seconds. Shifting the whole SRT by that offset is faster than dragging hundreds of cues by hand in a subtitle app.

Offset vs. drift on long recordings

A constant offset fixes a single edit decision. Gradual drift appears when audio was resampled, a clip was slowed for clarity, or an export used a slightly different frame rate. Multiplying cue times by a scale factor near 1.0 nudges late cues without rewriting text.

Pair with SRT to TXT and TXT to SRT

When you change the script, extract plain text with the SRT to TXT converter, edit the copy, then rebuild captions with TXT to SRT. When the words are right but the clock is wrong, return here to shift timestamps before you upload to YouTube, Vimeo, or your LMS.

Preview in your player before publish

Browser shifting is precise to the millisecond, but your delivery platform may round frames. Import the shifted SRT on your caption track, spot-check the first minute and the last minute, then export the version your viewers will see.

Private browser-based subtitle timing

Draft lessons, client reviews, and unreleased campaigns often live in SRT files long before publish. This shifter runs in your browser so you can fix timing without routing subtitles through an unknown upload queue.