Moonlight input lag: find where the delay comes from
Short answer: Lag adds up from several places: the network, decoding, waiting for the screen to refresh, the TV’s own picture processing and the controller link. Moonlight’s stats overlay measures the first three. The TV and controller aren’t measured at all, so check TV Game Mode and Bluetooth even when the numbers look fine.
Checked October 30, 2026 against Moonlight PC v6.2.0 and Sunshine v2026.914.233613 (latest stable releases) and their documentation. Sources are listed at the end of the page.
1. Read the latency numbers
Turn on the stats overlay (Ctrl+Alt+Shift+S on Moonlight PC, or the overlay setting on other clients). What Moonlight’s FAQ says each number means:
| Number | What it is | If it’s high |
|---|---|---|
| Network latency | Round trip from client to host and back | Wired connections, a lower bitrate, or a closer host. Cellular networks tend to be higher. |
| Latency variance | Jitter between packets | Lower the bitrate or use a steadier connection. |
| Decode latency | Time for the client to decode a frame | Depends on client hardware, bitrate and resolution. 90 or 120 fps can lower it on some devices. |
| Frame queue latency | Time a decoded frame waits to be shown | Should stay under one frame (16 ms at 60 fps). |
| Render latency | Time to put the frame on screen | With V-Sync on it includes a V-Sync period (16 ms at 60 Hz). |
The FAQ also warns that apps can’t measure compositor, display or input-device latency. For exact results you need external test hardware, so treat the overlay as a guide, not the whole picture.
2. The TV: turn on Game Mode for that input
TV motion processing is a common source of unmeasured lag. Samsung, for example, says Game Mode gives “minimal input lag”, and that input lag is reduced with Game Motion Plus (frame interpolation) turned off. Samsung turns Game Mode on automatically for consoles it recognises, but says to turn it on yourself for a PC, so check it for a streaming box too. Set it for the HDMI input your Apple TV, SHIELD or PC is plugged into. Other brands use similar names, such as low-latency or PC mode.
3. Client settings that trade smoothness for latency
- Moonlight PC: “V-Sync” is on by default. Moonlight says turning it off allows sub-frame rendering latency but can cause visible tearing. “Frame pacing” (off by default) reduces micro-stutter by delaying frames that arrive too early.
- Android, Google TV and SHIELD: “Video frame pacing” defaults to Prefer lowest latency. Moonlight’s FAQ marks Balanced as recommended (it buffers up to one frame to smooth jitter). Prefer smoothest video never drops frames and can add a lot of latency. Avoid “Allow refresh rate reduction” and “Enable system equalizer support” if latency matters, since Moonlight says both can add latency.
- Apple TV: “Frame Pacing Preference” offers Lowest Latency (default) or Smoothest Video.
4. The network path
- Moonlight strongly recommends 5 GHz Wi-Fi 5 or Wi-Fi 6 on the client and Ethernet for the host. Its FAQ links high dropped-frame numbers to 2.4 GHz Wi-Fi and powerline adapters.
- A bitrate higher than your connection handles well raises network latency, according to the FAQ. Lower it and compare.
- If the PC is on both Ethernet and Wi-Fi, disconnect all but the fastest connection.
5. The controller link
Bluetooth can share the Wi-Fi antenna on some devices, and Moonlight notes PlayStation pads over Bluetooth on Android can lag. Test once with a wired controller. If that feels better, try pairing the controller to the PC instead. See the controller guide for more.
6. The host encoder
- NVIDIA: Sunshine’s
nvenc_presetdefaults to 1 (P1, fastest). Higher presets improve compression but add encoding latency. Sunshine recommends raising it only if you’re limited by network or decoder. - AMD on Linux: Sunshine’s docs say Mesa 24.2 or newer is needed for low-latency encoding.
Change one thing at a time and keep the same test: the same game, scene and input. Otherwise you can’t tell which change helped.
FAQ
Does turning off V-Sync reduce Moonlight input lag?
On Moonlight PC, yes: Moonlight says disabling V-Sync allows sub-frame rendering latency, but it can cause visible tearing. With V-Sync on, render latency includes a V-Sync period, about 16 ms on a 60 Hz display.
Does Moonlight’s stats overlay show all of my input lag?
No. Moonlight’s FAQ says compositor, display and input-device latency can’t be measured by apps. A slow TV picture mode or a Bluetooth controller can add lag the overlay never shows.
Which frame pacing option should I use on Android?
The app defaults to Prefer lowest latency, while Moonlight’s FAQ marks Balanced as recommended because it buffers up to one frame to smooth jitter. Prefer smoothest video can add a lot of latency.
Sources
- Moonlight FAQ: performance stats and Android frame pacing (official Moonlight docs)
- Moonlight wiki: Video is choppy or laggy (official Moonlight docs)
- Moonlight wiki: Setup Guide (official Moonlight docs)
- Moonlight wiki: Bluetooth-related streaming issues (official Moonlight docs)
- Moonlight PC source: settings screen (SettingsView.qml) (Moonlight source, master branch)
- Moonlight for Android source: setting defaults (PreferenceConfiguration.java) (Moonlight source, master branch)
- Moonlight for Android source: setting labels (strings.xml) (Moonlight source, master branch)
- Moonlight for Apple TV source: settings list (Root.plist) (Moonlight source, master branch)
- Sunshine docs: Configuration (official Sunshine docs)
- Samsung Support: How to use Game Mode on your Samsung Smart TV (official Samsung docs)