Convert SRT to VTT or back, and shift the timing of subtitles that run early or late
Processed in your browser. Nothing is uploaded. Updated on 24 Oct 2026.SRT and VTT are nearly the same file with 3 differences that break players, chiefly the comma before the milliseconds. Convert either way; for an SRT time shift, type the seconds the subtitles are off, such as 2 or -1.5, and every cue moves 2,000 or -1,500 milliseconds. The file never leaves your device.
Press Choose a subtitle file and pick an .srt or .vtt file, or paste the subtitles into the box below. The file is read in your browser and not uploaded.
Under Save as, pick SRT or VTT for the format you need.
If the subtitles run early or late, type the seconds in Shift the timing; a minus number pulls them earlier.
Check the count of subtitles read, then press Download to save the new file, or Copy to put the text on your clipboard.
Subtitle Converter reads an SRT or WebVTT file, shows you what is in it, and writes it back in either format. It also moves the timing of every cue by an amount you type, which is the fix for subtitles that run early or late against the video.
The two formats are nearly the same file. Both are a list of cues, each with a start time, an end time and one or two lines of text. SRT separates the seconds from the milliseconds with a comma and numbers its cues; WebVTT uses a dot, begins with a WEBVTT line, and may name a cue or give it positioning such as line:90% align:center. Those small differences are enough to stop a player loading the wrong one, which is why converting is usually all that is needed. A browser playing video with a track tag requires WebVTT; VLC, Premiere and most television players expect SRT.
Timing is the other half. A subtitle file cut for a different release of the same film is often correct in pace but wrong by a fixed number of seconds. Play one line, see how late or early it is, and shift the whole file by that much. Every cue keeps its own length, so the rhythm of the dialogue is unchanged, and nothing is pushed before the start of the video.
A file that is damaged in the middle is still worth most of its cues, so a line that cannot be read is listed with its line number and the rest are kept. If the file turns out not to be a subtitle at all, the page says so rather than producing an empty result.
Everything happens on your device. The file is read in your browser, converted there and downloaded from there, so a script that has not been released yet never leaves your computer.
Open the SRT file, type 2 in "Shift the timing" and download the result. Every cue moves 2 seconds later and keeps its length, so a cue at 00:00:05,000 --> 00:00:07,500 becomes 00:00:07,000 --> 00:00:09,500. Type -2 to pull the subtitles 2 seconds earlier instead. The file is read and rewritten in your browser, and "Save as" picks SRT or VTT.
Not on this page: the shift moves every cue by the same amount, so it fixes a file that is early or late all the way through. A cue pushed before the start of the video is held at 00:00:00,000 with its length kept, so 00:00:05,000 --> 00:00:07,500 pulled 6 seconds earlier becomes 00:00:00,000 --> 00:00:02,500. Shifting back by the same number undoes it.
Drop the SRT on this page and choose VTT. The cue list is read, the WEBVTT header is added, and the comma before the milliseconds becomes a dot, which is the difference browsers care about. Download the result and point your video's track tag at it. Nothing is uploaded.
Both list cues with a start time, an end time and the text. SRT numbers each cue and writes 00:00:01,500; WebVTT starts with a WEBVTT line, writes 00:00:01.500, and can name a cue or position it on screen. Web players read VTT; desktop players usually read SRT.
Play a line and note how many seconds late or early it appears. Type that number here, with a minus sign to pull the subtitles earlier, and every cue moves by the same amount while keeping its own length. Shift back by the same number to undo it.
No. The file is read, converted and saved entirely in your browser on your own device, so an unreleased script or an unpublished episode never leaves your computer. There is no account, no upload and nothing on our side to delete afterwards.
SRT has nowhere to store it, so settings such as line:90% align:center are dropped rather than written into the file where a player would show them as text. The words, the line breaks and the timings are kept exactly as they were.
Subtitle ka time theek karna ho to pehle dekhiye ki subtitle kitne second aage ya peeche chal raha hai. Wahi number yahan daaliye, minus ke saath agar subtitle late hai. Har cue utna hi khisak jaata hai aur uski lambai wahi rehti hai, so the dialogue keeps its rhythm.
Still stuck? Ask about Subtitle Converter and anybody who knows can answer. No account needed.
On the related tools: URL Extractor – Find every link in pasted text or HTML and get them as a clean, deduplicated list · Unicode to Kruti Dev Converter – Turn Unicode Hindi into Kruti Dev 010 keys for Word, PageMaker and typing practice · Dummy Text Generator – Fill a layout with neutral dummy text of the length you need.
Also works as: Shift Subtitle Timing.
In the collection Video Tools.