Fix subtitle delay in VLC
VLC can push subtitles earlier or later while the video plays. Find the right delay in the player, then shift the file once so it stays in sync everywhere.
Move subtitles by a fixed amount when every line is off by the same delay.
Seconds (2.5), milliseconds (1500ms) or a time (00:00:02,500). Subtitles appear too early → Later.
For subtitles that drift. Pick two cues far apart and enter when each should appear.
Rescale times when the subtitle was made for a video with a different frame rate.
The file open now is part 1 / language 1.
Cues
Save options
Output preview
How to fix subtitle delay in VLC
- Watch the first clear line of dialogue. Pause on a moment where one person starts speaking after a silence, so it is easy to see whether the subtitle is early or late.
- Press H or G. On Windows and Linux press H if the subtitle appears too early (it moves 50 ms later per press) and G if it appears too late. On a Mac use J and H. VLC shows the new delay in the corner of the video.
- Set an exact value if you know it. Open Tools → Track Synchronization (Playback → Track Synchronization on a Mac) and type the delay in seconds in “Subtitle track synchronization”.
- Make it permanent. Note the final delay, open the subtitle file below, enter the same value with the same sign and download the corrected file.
VLC subtitle delay shortcuts
VLC’s default hotkeys change the subtitle delay in steps of 50 milliseconds, so 20 presses move the subtitles by one second. The keys differ between Windows/Linux and macOS:
| Key | What it does | Step / where |
|---|---|---|
| H | Subtitle delay +50 ms (subtitles later) | Windows, Linux |
| G | Subtitle delay −50 ms (subtitles earlier) | Windows, Linux |
| J | Subtitle delay +50 ms (subtitles later) | macOS |
| H | Subtitle delay −50 ms (subtitles earlier) | macOS |
| Shift+H, Shift+J, Shift+K | Mark the spoken line, mark its subtitle, apply the difference | All desktops |
| Ctrl+Shift+K (⌘+Shift+K on Mac) | Reset the synchronisation set with Shift+K | All desktops |
The on-screen message after each press, such as Subtitle delay 350 ms, is the total delay. A positive delay means VLC shows the subtitles later; a negative one shows them earlier. In the Track Synchronization dialog the same value is labelled “(Delayed)” when it is positive and “(Hastened)” when it is negative. You can rebind any of these keys in Tools → Preferences → Hotkeys (search for “subtitle delay”).
Sync by ear with Shift+H, Shift+J and Shift+K
For large offsets, pressing H forty times is tedious. VLC has a quicker method: press Shift+H the moment you hear a distinctive line, press Shift+J when that line’s subtitle appears, then press Shift+K. VLC sets the delay to the gap between the two marks in one step. Ctrl+Shift+K resets it.
Set an exact delay in Track Synchronization
When you already know the offset, for example because the subtitles are exactly 2.5 seconds late in every scene, open Tools → Track Synchronization on Windows or Linux, or Playback → Track Synchronization on macOS. In the Synchronization tab, type the value in seconds into “Subtitle track synchronization”: -2.500 for subtitles that are 2.5 seconds late, 2.500 for subtitles that are 2.5 seconds early. The box accepts up to three decimals and up to ±600 seconds.
The same dialog has “Subtitle speed” and “Subtitle duration factor” fields. Speed is for subtitles that drift, which a fixed delay cannot fix; leave it at 1 unless you know the frame-rate ratio, and see two-point sync for a file-based fix.
VLC on Android, iPhone and iPad
The mobile apps have no keyboard shortcuts, but both have a subtitle delay control. On Android, tap the video to show the controls, tap the subtitles/audio track icon (the speech bubble), open the menu next to “Subtitles” and choose Subtitle delay. Use the − and + buttons to move the subtitles in small steps and watch the value change. On iPhone and iPad, open the playback options (the “…” button) during playback and choose the subtitle delay control. Menu layouts change between app versions, so look for “delay” if the button has moved.
On mobile the delay usually resets when you close the video, which is a good reason to fix the file itself once you have found the right value.
Why the delay resets — and how to keep it
VLC’s delay is a playback setting, not an edit. It applies to the current video only and is gone when you open the next file, restart VLC or play the same subtitles on a TV or phone. To keep the fix, change the timestamps in the subtitle file itself:
- Note the delay VLC shows when the subtitles look right, for example
1250 ms. - Enter it in the box below. A positive VLC delay becomes a shift later, a negative one a shift earlier, by the same amount.
- Click the button to copy it into the shift tool above, open your SRT, VTT or ASS file, click Apply shift and download.
Reset the delay in VLC to 0 before checking the new file, or the correction will be applied twice. If the subtitles are right at the start but wrong later, the problem is drift, not delay: use two-point sync or the frame-rate converter.
Other players
- Fix subtitle delay in MPC-HC
- Fix subtitle delay in KMPlayer
- Fix subtitle delay in PotPlayer
- Shortcut table for all players, including mpv
FAQ
Which key delays subtitles in VLC?
On Windows and Linux, H adds 50 ms of delay so the subtitles appear later, and G removes 50 ms so they appear earlier. On a Mac the keys are J (later) and H (earlier).
Why do the G and H keys do nothing in VLC?
The video window needs keyboard focus, so click on the picture first. The keys also do nothing when no subtitle track is active, and they may have been rebound in Tools → Preferences → Hotkeys.
Does VLC save the subtitle delay?
No. The delay applies only while the current video plays. To keep it, apply the same delay as a shift to the subtitle file and save a new copy.
Can VLC fix subtitles that drift over time?
Partly: Track Synchronization has a Subtitle speed setting. It is easier to fix the file once with two-point sync or a frame-rate conversion, because that works in every player.