Convert between SRT, VTT and SBV, fix out-of-sync timings with one offset, and edit captions inline. Your files never leave your device.
Drop a subtitle file here
SRT, VTT or SBV - or paste the text below
Enter a positive value to delay the subtitles or a negative value to make them appear earlier. The offset is in seconds and accepts decimals (e.g. -1.5).
Correct the text or fine-tune individual timings. Every change is reflected in the output instantly.
Parsing, converting and shifting all happen in your browser. Your subtitles are never uploaded to a server.
One offset value shifts every cue, or start from a chosen cue when only part of the file drifted.
Correct typos and tweak individual start and end times in a table without opening a separate editor.
No signup, no watermark and no file-size limit. Convert as many subtitle files as you need.
Subtitle files store nothing but timings and text, yet the format matters enormously. SRT is the universal format that media players, Plex and video editors expect. WebVTT is the only caption format the HTML5 element accepts, so anything played in a browser needs it. SBV is what YouTube's own caption editor exports. Because the three describe exactly the same information in slightly different syntax, converting between them is lossless - and something you should never have to upload a file for.
Captions drift out of sync for predictable reasons: the release you downloaded has a different intro length, the video was re-encoded at another frame rate, or an advert break was cut. If every line is late or early by the same amount, a single offset fixes the whole file. If only the second half drifted, apply the shift from the cue where the problem starts and leave everything before it untouched. Negative values pull the subtitles forward, positive values push them back.
The tool parses your file into a list of cues, each with a start time, an end time and its text. Timestamps are normalised to milliseconds, which is what makes shifting and re-serialising exact. Writing the file back out simply applies the target format's syntax: SRT uses a comma before the milliseconds and numbers every cue, WebVTT uses a dot and a WEBVTT header, SBV separates the two timestamps with a comma on one line. Exporting to plain text drops the timings entirely and gives you a clean transcript.