Skip to content
← Back to all tools

Moonlight

Free

Stream your gaming PC to any screen in the house

Open Source No Ads No Tracking No Sign-up Cross-platform Self-hostable

An open-source game streaming client that sends video and audio from a powerful desktop to a laptop, tablet, phone or TV box in real time, with controller and mouse input travelling back. Latency on a local network is typically single-digit milliseconds, with 4K, HDR and high refresh rates supported.

Why we picked it

The scenario is specific: the graphics card is in the desktop in the study, and you want to play on the TV from the sofa. Moonlight does exactly that — streams the game in real time to another screen while sending controller input back. On a local network the latency is low enough to be imperceptible, which is the key difference from cloud gaming: the data never leaves your house.

One prerequisite has to be stated first: Moonlight is only the client; you also need a streaming host on the gaming PC. It used to pair with NVIDIA GameStream, but NVIDIA discontinued that in 2023. The standard setup now is the open-source Sunshine on the host side, which pairs with Moonlight and — unlike the old arrangement — is not limited to NVIDIA cards; AMD and Intel integrated graphics work too.

Client coverage is unusually broad: Windows, macOS, Linux, Android, iOS, Apple TV, Raspberry Pi, and ports for various TV boxes and handheld systems. Whatever screen is nearby, there is probably a build.

Two things to watch. First, use wired Ethernet or 5GHz Wi-Fi. Streaming is more sensitive to jitter than to raw bandwidth, and 2.4GHz noticeably degrades the experience. Second, desktop releases are infrequent — the current stable build, v6.1.0, dates from September 2024 — though development commits remain active and the platform ports keep updating. It is not unmaintained, just conservative about tagging releases.

It is not only for games, either: what gets streamed is the whole desktop, so occasional remote use of heavy software on the host works fine — it simply has no dedicated remote-work features (use RustDesk for that).