Moonlight bitrate by resolution and frame rate
Short answer: Moonlight PC defaults to 20 Mbps at 1080p60, 40 Mbps at 1440p60 and 80 Mbps at 4K60. Above 60 fps the bitrate grows more slowly than the frame rate. These defaults are a good starting point on a wired network. On Wi-Fi, or if the stats overlay shows dropped frames, go lower. The slider stops at 150 Mbps unless you unlock it.
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.
Moonlight’s default bitrates
Moonlight PC sets the bitrate for you from the resolution and frame rate you pick. We reproduced its getDefaultBitrate() calculation exactly, and these are the results:
| Resolution | 30 fps | 60 fps | 90 fps | 120 fps |
|---|---|---|---|---|
| 720p (1280×720) | 5 | 10 | 12 | 14 |
| Steam Deck screen (1280×800) | 5 | 11 | 13 | 15 |
| 1080p (1920×1080) | 10 | 20 | 24 | 28 |
| 1440p (2560×1440) | 20 | 40 | 49 | 57 |
| 4K (3840×2160) | 40 | 80 | 98 | 113 |
How it works: each standard resolution has a factor (720p = 5, 1080p = 10, 1440p = 20, 4K = 40, with in-between resolutions interpolated by pixel count). That factor is multiplied by the frame rate divided by 30. Above 60 fps, Moonlight uses the square root of fps/60 instead of a straight line, because, as its source code puts it, it’s definitely not a linear bitrate increase at high frame rates. Turning on YUV 4:4:4 doubles the factor.
- Moonlight PC keeps recalculating the default when you change resolution or frame rate, until you move the bitrate slider yourself.
- The slider stops at 150 Mbps. “Unlock bitrate limit (Experimental)” raises it to 500 Mbps. Moonlight’s FAQ explains that client decoders and host encoders are the real limits, not your network speed.
- Moonlight for Apple TV has fixed bitrate choices (0.5, 1, 2, 5, 10, 20, 25, 50, 70, 80, 100 and 150 Mbps) and defaults to 20 Mbps whatever the resolution. Choose the value yourself; see the Apple TV settings guide.
When to go lower than the default
- Wi-Fi anywhere in the path. If “frames dropped by network connection” in the stats overlay climbs noticeably above 0%, lower the bitrate until it stays near zero. A higher bitrate on a link that can’t carry it also raises network latency.
- Streaming over the internet: Moonlight recommends a bitrate at least 1 Mbps below your home upload speed.
- Test before you raise it. Sunshine’s docs suggest a 60-second UDP iPerf3 test at your target bitrate, such as
iperf3 -c {HostIpAddress} -t 60 -u -R -b 80Mfor 4K60, and ideally less than 5% packet loss and under 1 ms of jitter.
Resolution: match the screen you’re watching
Streaming above the client display’s resolution costs bandwidth and decoding time without any visible gain. A Steam Deck’s screen is 1280×800, so its default is about 11 Mbps at 60 fps. A 4K TV over Wi-Fi often does better at 1080p or 1440p with a stable bitrate than at 4K with dropped frames.
FAQ
What bitrate should I use for 4K 60 fps in Moonlight?
Moonlight PC defaults to 80 Mbps for 4K at 60 fps. That works on a solid wired network. On Wi-Fi, start lower and raise it only while dropped frames stay near 0% in the stats overlay.
Is a higher bitrate always better?
No. Above what your network and decoder can handle, it causes dropped frames and extra latency. Moonlight’s own troubleshooting starts by lowering the bitrate.
Why does the bitrate slider stop at 150 Mbps?
Moonlight’s FAQ says client hardware decoders and host encoders are the limit. Moonlight PC has an experimental option to unlock up to 500 Mbps.
Sources
- Moonlight PC source: default bitrate calculation (streamingpreferences.cpp) (Moonlight source, master branch)
- Moonlight PC source: settings screen (SettingsView.qml) (Moonlight source, master branch)
- Moonlight for Apple TV source: settings list (Root.plist) (Moonlight source, master branch)
- Moonlight wiki: Frequently Asked Questions (official Moonlight docs)
- Moonlight wiki: Video is choppy or laggy (official Moonlight docs)
- Sunshine docs: Troubleshooting (official Sunshine docs)