Moonlight picture looks blurry or blocky: what to change
Updated · By Couch Lag
Short answer: A picture that is soft all the time is usually a resolution mismatch: the stream, the host display or the TV is scaling. A picture that breaks into blocks when things move is usually too little bitrate for the resolution and frame rate, or a network that drops data. Match the stream resolution to the screen you watch, let Sunshine switch the host to it, then raise the bitrate toward Moonlight’s default only if your network carries it cleanly.
Checked October 31, 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. Soft all the time: match the resolutions
- Stream resolution. Set Moonlight to the resolution of the screen you’re watching. Moonlight PC lists your screen as Native in its resolution menu. A 1080p stream on a 4K TV is upscaled by the client or the TV and looks softer.
- Host display resolution. If the host desktop runs at a different resolution from the stream, the picture is scaled twice. With Sunshine on Windows,
dd_resolution_option(default auto) changes the host to the resolution the client asks for, but Sunshine’s docs say “Optimize game settings” must be on in Moonlight for that to work. - Game resolution. A game running below the desktop resolution, or with render scaling or upscaling on, looks soft in the stream too. Check the game’s own settings.
- The TV. Turn on Game Mode for that input and switch off extra sharpening or motion smoothing. See the input lag guide for why Game Mode matters.
2. Blocky in motion: bitrate and network
- Moonlight’s own settings text says: lower the bitrate on slower connections, raise it to increase image quality. Its default already scales with resolution and frame rate (see the bitrate guide for the numbers).
- Before raising it, open the stats overlay (Ctrl+Alt+Shift+S on Moonlight PC). If frames dropped by network connection rises when the picture breaks up, the network is the limit and more bitrate will make it worse.
- Check Sunshine’s
max_bitrate. It defaults to 0, meaning Sunshine uses what Moonlight asks for. Any other value caps the stream no matter what the slider says. - Moonlight’s FAQ explains the 150 Mbps slider limit: client decoders and host encoders can’t usefully handle much more. Moonlight PC’s experimental “Unlock bitrate limit” is meant only for Sunshine hosts on wired Ethernet.
3. Codec and colour
- Video codec: leave it on Automatic, which Moonlight recommends. HEVC and AV1 usually give a cleaner picture than H.264 at the same bitrate when both ends support them.
- YUV 4:4:4 (Moonlight PC, Sunshine host): sharper coloured text and thin lines. Moonlight describes it as good for streaming the desktop and text-heavy games, but not recommended for fast-paced games. It also roughly doubles Moonlight’s default bitrate.
- HDR: Moonlight’s setup guide notes that HDR streams can show scaling artifacts when the stream resolution doesn’t match the host display.
4. Encoder settings (only if the network has headroom)
- NVIDIA:
nvenc_spatial_aq(off by default) compresses flat areas of the picture harder, and Sunshine recommends turning it on when streaming at lower bitrates. Its docs warn it may reduce performance. nvenc_presettrades latency for compression. Sunshine suggests a higher preset only when you’re limited by the network or decoder, and says raising the bitrate does the same job otherwise.- Leave
nvenc_twopassat its default. Sunshine warns that turning it off can cause bitrate overshoot and packet loss.
Change one thing at a time and compare on the same scene. A foggy or grassy level shows compression much sooner than a menu.
FAQ
Why does Moonlight look blurry on my 4K TV?
Usually the stream or the host desktop is lower than 4K and the TV upscales it. Set Moonlight to the TV’s resolution, turn on “Optimize game settings” so Sunshine can switch the host to match, and use a bitrate your network can carry at 4K.
Will a higher bitrate always look better?
Only if the network carries it. If the stats overlay shows frames dropped by the network rising, a higher bitrate causes more breakup. Lower it until drops stay near 0%.
Should I turn on YUV 4:4:4?
For the desktop, strategy games or anything with lots of small text, it can help. Moonlight doesn’t recommend it for fast-paced games, and it needs more bitrate.
Sources
- Moonlight PC source: settings screen (SettingsView.qml) (Moonlight source, master branch)
- Moonlight PC source: default bitrate calculation (streamingpreferences.cpp) (Moonlight source, master branch)
- Moonlight wiki: Frequently Asked Questions (official Moonlight docs)
- Moonlight wiki: Additional requirements for HDR streaming (official Moonlight docs)
- Sunshine docs: Configuration (official Sunshine docs)