Moonlight overview: the client half of a private game streaming setup
What Moonlight does
Moonlight is a free, open source client for the streaming protocol that NVIDIA introduced with GameStream. It runs on Windows, macOS, Linux, Android, iOS and several TV and single-board platforms, connects to a host that speaks the same protocol, and turns the incoming video into a full-screen, low-latency session with keyboard, mouse and gamepad input sent back to the host. The client itself does no encoding; its job is hardware-accelerated decoding, frame pacing, audio output and input capture. Because NVIDIA retired GameStream, the practical host today is Sunshine, though any compatible host works. Moonlight is distributed under the GNU General Public License version 3, which allows the installer to be redistributed unchanged.
How a typical session works
On first launch the client scans the local network for hosts and lists what it finds; a host on another subnet can be added by address instead. Selecting a host shows a PIN, which the host administrator enters once to pair the machines. After pairing, the client displays the applications the host publishes, and choosing one opens a full-screen stream. During play a small overlay, usually reached with a keyboard shortcut, exposes bitrate, resolution, frame rate, V-Sync, HDR and the audio device, so quality can be adjusted while the session is live. Ending the stream returns to the host list, and the client can also be told to wake a sleeping host on the network.
Settings, limits and practical notes
The settings that matter most are bitrate and resolution: too high a bitrate on a weak Wi-Fi link produces stutter and audio dropouts, while too low a bitrate turns gradients and text into blocks. A wired connection or a modern 5 GHz network is the difference between a usable and an unusable session, because latency is dominated by the network rather than by decoding. Hardware decoding support varies by platform and GPU, and older integrated graphics may struggle with high frame rates or HDR. Gamepads are recognised through the operating system, and some titles need the gamepad to be connected before the stream starts. The client does not provide a file transfer or administration channel, and it cannot reach a host that is not directly addressable.
When to choose something else
If you need to administer a machine, copy files, or work on a desktop where every window must stay pixel perfect, a remote desktop or remote control tool is a better fit, because this protocol is tuned for motion and interactivity. If the host is a cloud provider, the provider's own client is usually the path of least resistance. If you want to broadcast to an audience rather than play privately, use a streaming suite with scenes, overlays and chat. And if you only ever sit at the machine that runs the games, the client adds nothing at all. Moonlight is the piece that turns a spare laptop, phone or TV into a screen for the desktop in the other room.
- Best for
- People who already run a streaming host and want a free client on a laptop, phone, tablet or TV.
- Good to know
- Stream quality is limited by the network first; a wired or 5 GHz link is strongly recommended, and the host must be reachable directly.
How to get started
- Download the setup executable from the official release page and install it.
- Make sure a compatible host such as Sunshine is running on the machine that will send the stream.
- Open Moonlight, let it scan the network for hosts, or add one by IP address or hostname.
- Select the host, note the PIN it displays, and enter that PIN in the host console to pair the two devices.
- Choose a published application, then adjust bitrate, resolution and frame rate from the in-stream overlay as needed.
Questions & answers
Does Moonlight need NVIDIA hardware?
No. The client only decodes video, so it runs on most GPUs, and NVIDIA GameStream is no longer required because Sunshine implements the same protocol.
Why is the stream stuttering?
Bitrate is usually too high for the link. Lower it in the overlay, and prefer a wired or 5 GHz connection over a crowded 2.4 GHz network.
Can I use a gamepad?
Yes. Controllers that the operating system recognises are forwarded to the host, and many titles expect the pad to be connected before the stream starts.