Free · SRT & VTT · Nothing uploaded

Subtitle editor & converter

Subtitles out of sync? Shift all timings by milliseconds, edit any cue, find & replace across the file, and convert between SRT and VTT — all in your browser.

📄 Drop an .srt or .vtt file here — or click to browse

🔒 Parsing and editing run entirely in your browser — subtitle files are never uploaded.

How to fix out-of-sync subtitles

📄

1. Load the file

Drop an .srt or .vtt file (or paste its contents). Every cue appears in an editable list.

⏱️

2. Shift the timing

Subtitles late by 2 seconds? Shift -2000 ms. All start and end times move together.

💾

3. Download

Export as SRT or VTT — the other format is one click away.

The most common subtitle problem is a constant offset: the file was made for a different cut of the video, so every line is early or late by the same amount. A single shift fixes it. If subtitles drift progressively, the frame rates differ — use the linear scale option to stretch timings (for example 23.976 → 25 fps). SRT is the universal format for players like VLC, while VTT is what HTML5 video and YouTube need. Need the audio too? Grab it with Video to MP3.

Subtitle editor FAQ

My subtitles are consistently 2 seconds late — how do I fix them?

Enter -2000 in the shift box and apply. Every cue moves 2 seconds earlier. If they are early instead, shift by a positive amount. Preview a few lines against the video and fine-tune by ±100 ms.

The subtitles drift further out of sync over time — why?

That is a frame-rate mismatch: the subtitle file was timed for a 23.976 fps release and your video is 25 fps (or vice versa). Use the scale feature with those two rates and the drift disappears.

What is the difference between SRT and VTT?

SRT is the classic format most desktop players expect; VTT (WebVTT) is the web standard used by HTML5 video, YouTube and most streaming platforms. The content is nearly identical — this tool converts both directions losslessly.

Can I edit the text of individual subtitles?

Yes — every cue is editable inline: text, start time and end time. Find & replace works across all cues at once.