SubShift
Shift, sync and fix SRT and VTT subtitles in any language. Everything runs in your browser; your file is never uploaded.
Letters look wrong (like “ç” or “?”)? Pick another text encoding above; the file is re-read.
Shift timing
Convert frame rate
If subtitles were made for one frame rate and your video uses another (for example 23.976 → 25), timing slowly drifts. This fixes it.
Two-point sync
Enter when one early line and one late line should actually appear. Everything in between is stretched to match, fixing both offset and drift.
Find and replace
Cleanup and fixes
Tags are formatting codes such as <i>, <b>, <font> and {\an8}. Fixing an overlap pulls the earlier line's end back to just before the next line starts. Wide characters (Chinese, Japanese, Korean) count as 2.5 letters for line length and reading speed.
Lines
No lines to show.
Export
How to fix subtitle timing
SubShift is a free online subtitle editor for SRT and WebVTT files. Open a file, fix its timing, check it for common problems and download the result. Everything happens inside your browser, so the subtitle never leaves your device.
How do I shift subtitles that are too early or too late?
Open the file, go to Shift timing, enter the number of seconds (use a negative number to make subtitles appear earlier) and press Apply. You can shift the whole file or only the lines from a given line number onward. Use this when every line is off by the same amount.
How do I fix subtitles that drift out of sync over time?
When the subtitles start in sync but are a few seconds off by the end, the offset is not constant. Use Two-point sync: pick an early line and a late line, type the times they should really appear, and SubShift stretches everything in between. If the cause is a frame rate mismatch, Convert frame rate (for example 23.976 to 25 fps) does the same in one step.
How do I fix garbled characters in subtitles?
Older subtitle files are often saved in a legacy encoding such as Windows-1250 (Central European), Windows-1251 (Cyrillic), Windows-1253 (Greek), Windows-1254 (Turkish), Windows-1255 (Hebrew), Windows-1256 (Arabic), Shift_JIS (Japanese), EUC-KR (Korean), GBK or Big5 (Chinese). If you see odd characters, choose the right Text encoding above the tools and the file is re-read instantly. When you export you can save as UTF-8, which every modern player understands, or in a legacy encoding for older TVs and players.
Can I convert between SRT and VTT?
Yes. Open a file in either format, choose SRT or VTT under Export and download it. Timestamps are rewritten with the correct separator (comma for SRT, dot for VTT) and the WebVTT header is added or removed for you.
What problems does it detect?
Lines that overlap the next one, appear out of order, are empty, are too short to read, show text faster than 20 characters per second, run longer than 42 characters per line or span more than two lines are highlighted so you can fix them. One click re-wraps long lines, fixes overlaps, strips formatting tags and removes empty cues.
Frequently asked questions
Is it free? Do I need to sign up? It is free and needs no account.
Is my subtitle file uploaded anywhere? No. The file is processed locally by your browser and is never sent to a server.
Which languages work? Any language. Text is handled as Unicode, right-to-left scripts such as Arabic and Hebrew display correctly, and Chinese, Japanese and Korean lines use adjusted length and speed limits.
Which formats are supported? SRT (SubRip) and WebVTT, up to 5 MB per file.