| Performance |
| LAN glass-to-glass latency | 8 ms | ~25 ms (self-hosted), ~45 ms (public relay) |
| WAN typical latency (same region) | 22 ms | ~70 ms (default public relay) |
| Maximum resolution | 4K (3840 × 2160) | 1080p default, 4K on capable links |
| Frame rate ceiling | 60 fps | 30 fps default, 60 fps configurable |
| Video codecs | H.265 · AV1 · VP9 | VP9 · H.264 · H.265 (limited HW) |
| Hardware encode/decode | AMF · NVENC · VideoToolbox | Partial, codec- and OS-dependent |
| Client UI runtime | Native (SwiftUI, Compose, WinUI) | Flutter on a Rust core |
| Security |
| Transport encryption | DTLS 1.3 + SRTP | NaCl box · AES-256-GCM |
| Data-channel encryption | AES-256-GCM, end-to-end | AES-256-GCM, end-to-end |
| Key exchange | ECDHE over Curve25519 | Curve25519 (NaCl) |
| Source code auditable | Closed source | AGPL-3.0, full source on GitHub |
| Relay can see metadata | Cloudflare TURN, ephemeral creds | Yours, if self-hosted; otherwise public |
| Production-systems breach disclosed | None | None |
| Account & access |
| Account required | No | No |
| Pairing model | 4-digit PIN | 9-digit RustDesk ID + password |
| Address book / device list | Local, on device | Local; cloud on RustDesk Pro |
| Self-hosting required for reliability | No (managed TURN) | Recommended (public relay is best-effort) |
| Platform support |
| macOS · iOS · iPadOS | Native (SwiftUI) | Flutter app, Rust core |
| Windows · Android | Native (WinUI · Compose) | Flutter app, Rust core |
| Linux host and client | Host: yes (v1.0, X11); client planned | Yes, first-class |
| visionOS | Native | No |
| Self-hosted web client | Not planned | Yes (Pro tier) |
| Pricing (May 2026) |
| Personal use | $0 (managed relay included) | $0 (OSS, you bring the server) |
| Self-hosted server cost | Not applicable | ~$5–$20 / month VPS + ops time |
| Pro / paid tier | — | Custom (web client, branding, console) |