Measured, not promised
Every number on this page comes from the project: measured by the author on his own computers, or, where it is a setting or follows from a format, marked as such. Next to each one is what exactly was measured, on what and when. Where something has not been measured, there is no number.
From hand to glass: 30–69 ms
How long it takes from moving the mouse to seeing the change on your own screen. The test sends the remote cursor to a known spot and stops the clock when the pixels at that very spot change in the picture that has arrived: the capture, the encoding, the network and the decoding; only the final repaint of the window and the monitor itself are left out.
| Codec | Median | Worst of 16 |
|---|---|---|
| JPEG | 30 ms | 59 ms |
| H.264 | 69 ms | 111 ms |
Conditions. 29 August 2026. The Windows program's window watching a Mac running the macOS version, both in the same home network; the default quality preset; 16 moves of the cursor between two spots for each codec; the window was 1966 pixels wide. So the capture and the encoding measured here are the Mac’s. Windows watching Windows has not been measured this way yet, and neither has the build you can download, which came later.
A still screen costs almost nothing
The program sends a picture only when something on the screen has changed, and while nobody is watching, it does not capture the screen at all. A line from the log of a live session: over 10 seconds of a still screen, the stream carried one frame, 4.4 KB/s.
Conditions. 5 October 2026, one of the author's test computers (Windows 10), H.264 on its NVIDIA graphics card, a 1920×1080 stream; watched from the Android app (coming soon). One 10-second interval of the program's own statistics.
Processor and memory
What the program took on the computer being watched. Processor time is a share of one core.
| What is happening | Processor | Traffic | Memory |
|---|---|---|---|
| Idle, nobody connected | 0 % (0 ms in 15 s) | — | 29 MB |
| Connected, the screen not watched | 0 % | about 0 | 29 MB |
| A still screen is watched | about 1 % | 0.1 Mbit/s | 90 MB |
| A video is watched, the phone app’s “Usual” (ceiling 30 %) | 20 % | 0.8 Mbit/s | 90 MB |
| A video is watched, the phone app’s “Thrifty” (ceiling 15 %) | 9 % | 0.6 Mbit/s | 90 MB |
Conditions. Measured on an early version, before 29 July 2026, watched from the phone app (coming soon) with its own presets. At that time the screen was read by the processor (GDI) and sent as JPEG only. The version you download today captures through the graphics card, which waits for the screen to change instead of reading it over and over, and can send H.264; this table has not been measured again for it.
A long road is not a narrow one
On a slow internet connection the picture used to lose quality even when the link had room to spare: the program took the delay of a long path for a narrow channel. With two unconfirmed frames allowed, the frame rate could not exceed two per round trip, which is 13 frames a second at 150 ms, however wide the link. Since September 2026 the program measures the round trip on the acknowledgements it receives anyway, without a single extra byte, and tells a long path from a narrow one.
| A slow viewer on a wide channel, 3 s | Frames sent | Quality (90 asked for) |
|---|---|---|
| Before the fix | 76 | 25 |
| After the fix | 150 | 90 |
A channel that really is narrow (about 2.5 Mbit/s on the same stand) is still recognised and the quality goes down, as it should.
Conditions. The project's test stand, 4 September 2026: one computer, a local socket, the channel not narrowed, small frames, and a viewer that confirms each frame 40 ms late. This is a test of the program's own logic, not a measurement over the real internet.
Sound: what each way costs
| Where | What travels | Rate |
|---|---|---|
| Local network | uncompressed: two channels, 16 bits, 48 kHz | 187 KB/s (1.5 Mbit/s) |
| Internet and the relay | IMA ADPCM: one channel, 4 bits a sample | 23 KB/s (0.19 Mbit/s) |
Conditions. The rates follow from the format itself rather than from a measurement, for a sound device running at 48 kHz (the program takes the device’s own rate). The quality of the compressed sound was measured on a 440 Hz tone in the project's test: signal to noise 32 dB, 7.9 times smaller than uncompressed.
You decide what the picture may cost
Four quality presets in the window of the Windows program. They are ceilings, not a schedule: on a calm screen there are simply no frames to send. These are settings, not measurements.
| Preset | Picture size, of the window | JPEG quality | Frames a second, at most | Processor, at most |
|---|---|---|---|---|
| Thrifty | 60 % | 55 | 20 | 40 % of a core |
| Usual (default) | 85 % | 70 | 45 | 80 % of a core |
| Sharp | 100 % | 82 | 60 | 90 % of a core |
| Maximum | 100 % | 92 | 60 | a whole core |
In a local network the picture is asked for at the full size of the window and with JPEG quality 90 or higher; the ceilings on frames and processor still apply, and while the viewer falls behind, the quality gives way for a while. Over the internet the presets apply as listed. The processor ceiling is the share of one core that the watched computer may spend on the picture.