Skip to content
TENVO AI · LIVE · v0.16.4 · TLS · Per-device certs · AGPL-3.0 · FREE TIER · 30 DEVICES · SELF-HOSTABLE INFRA · BYO API KEY · MCP FOR CLAUDE & CURSOR
Back to BlogGuide

remote desktop bandwidth: math and reduction tips

Tenvo Editorial Team8 min read
remote desktop bandwidth: math and reduction tips

You need to know how much data a remote session really uses — not marketing numbers, but a repeatable calculation you can apply to staffing, billing, or hosting decisions.

You need to know how much data a remote session really uses — not marketing numbers, but a repeatable calculation you can apply to staffing, billing, or hosting decisions. This guide lays out the bandwidth math, shows examples (1080p, 4K, video playback), and gives concrete knobs you can turn to shrink traffic without destroying usability.

The raw math: pixels → bytes → bits

Start with the obvious: one frame is width × height pixels. A common color depth is 24 bits per pixel (8 bits × RGB). That gives bytes per frame = width × height × 3. Multiply by frames per second (fps) and by 8 to get bits per second (bps) for an uncompressed stream.

Example: 1920×1080 @ 30 fps, 24 bpp (raw, uncompressed)
bytes/frame = 1920 * 1080 * 3 = 6,220,800 bytes
bytes/sec = 6,220,800 * 30 = 186,624,000 bytes/s
bits/sec = 186,624,000 * 8 ≈ 1,492,992,000 bits/s ≈ 1,493 Mbps (raw)

Raw numbers are astronomical because remote display systems compress or send deltas. Compression ratio is the critical variable. For screen-sharing where most of the screen is static text, practical compressed bitrates often sit under 1–2 Mbps for 1080p at 15–30 fps. For full-motion video inside the session (playback of a movie or a game), realistic targets are 5–25 Mbps depending on encoder quality and scene complexity.

How to estimate expected session and monthly usage

Make a simple model with three inputs: average session bitrate (bps), session length (seconds), and sessions per month. The math is trivial but lets you translate “Mbps” into GB per month.

bits_per_session = avg_bitrate_bps * session_seconds
bytes_per_session = bits_per_session / 8
GB_per_session = bytes_per_session / (1024^3)
GB_per_month = GB_per_session * sessions_per_month

Practical examples:

  • Light admin work: 1 Mbps average, 30 minutes per session → ~0.225 GB per session → 45 sessions/month ≈ 10.1 GB/month.
  • Developer with occasional video: 5 Mbps average, 1 hour/day × 20 days → ~2.25 GB/day → ~45 GB/month.
  • Remote video editing or streaming: 15 Mbps average, 2 hours/session × 10 sessions → ~12.9 GB/session → ~129 GB/month.

These are estimates — real traffic fluctuates with screen content. Use packet captures or built-in client statistics to measure an actual session before budgeting or sizing a relay.

Where the bytes go: screen updates, video, audio, and control

Knowing where data is spent helps pick the right lever.

  • Screen updates: Most protocols send either full frames or deltas. If only a small rectangle changes, delta-based protocols save a lot. Full-screen video or constantly changing content forces higher bitrates.
  • Video inside the session: Playing a movie inside the remote desktop is the worst case. It behaves like streaming video and should be treated as such.
  • Audio: Stereo 44.1–48 kHz PCM is ~1.4–1.5 Mbps uncompressed; most remoting systems compress audio to tens-to-hundreds of kbps.
  • Input/control: Mouse and keyboard are negligible.
  • Encryption & protocol overhead: TLS, retransmits, and packet headers add ~5–15% overhead depending on MTU and congestion.

Concrete knobs to cut bandwidth — tested tactics

These are the most effective, practical changes you can make, ordered roughly by impact vs user cost.

  • Drop resolution first: halving each axis reduces pixels by 4×. 1080p → 720p cuts pixel count 2.25×; 2560×1440 → 1920×1080 cuts ~1.78×. If you can live with 1366×768 for administrative tasks, do it.
  • Reduce frame rate: for office work, 10–15 fps is often acceptable. Moving 30→10 fps cuts bandwidth by 3× with minimal perceived loss unless you’re watching video.
  • Lower color depth: 24-bit → 16-bit reduces visual fidelity for gradients but saves bandwidth; useful on low-contrast UIs.
  • Use encoder-friendly settings: enable hardware encoders (NVENC, QuickSync) on the host when available — they’re faster and often more efficient than CPU software encoders for sustained streams.
  • Prefer intra-frame compression profiles meant for screen content: codecs or modes that prioritize moving blocks and repeated patterns (screen codecs) beat general-purpose encoders for text-heavy screens.
  • Disable wallpaper and animations: turn off desktop background, window shadows, and smooth animations on the remote machine so fewer pixels change each frame.
  • Pause or limit screen updates when idle: some clients detect inactivity and throttle updates to <0.2 fps. If your workflow has long idle periods, ensure idle throttling is enabled.
  • Restrict video playback: if users need to watch video, instruct them to watch locally or use a dedicated streaming solution. If unavoidable, lower playback resolution inside the session.
  • Stream audio at mono/low bitrate when high fidelity isn’t needed — a 32–64 kbps compressed audio stream is fine for voice.
  • Use regionally close relays: latency affects retransmits and codec adaptation. A relay in the same cloud region as both endpoints reduces packet loss and can lower bitrate wasted on retransmits.
  • Limit simultaneous sessions per device: multiple concurrent viewers multiply bandwidth from that host.
  • Enable adaptive bitrate and rate caps: put a sensible cap (e.g., 8–10 Mbps for general use) so a single session can’t saturate uplinks unexpectedly.

Combine multiple knobs: a 720p@15fps session with a screen-optimized encoder and disabled desktop effects can be 5–10× cheaper in bytes than a naive 1080p@30fps stream.

Measure, validate, and tune: practical testing steps

Don’t guess. Follow this lightweight testing loop:

  1. Capture baseline: run a 10–15 minute typical session and record average bitrate from the client or via a packet capture.
  2. Change one variable: resolution, fps, color depth, or codec setting — measure again.
  3. Test content extremes: a static text document, a slideshow with frequent changes, and a 30-second full-motion video. Use the worst-case for budgeting.
  4. Run long sessions to detect encoder drift or periodic spikes (e.g., auto-updates, background sync).

If you’re designing a support policy or billing per-GB, set headroom: plan for 1.5–2× the measured average to cover spikes.

Relays and hosting: Tenvo’s managed relay vs self-hosting

Where sessions traverse a third-party relay, remember the technical trade-off: a direct peer-to-peer connection keeps TLS between end-points; when a relay is used, TLS terminates at the relay and the relay is in a position to access session traffic. That matters for compliance and threat models.

For most teams, Tenvo’s managed relay is the right default. Tenvo offers native clients for macOS, Windows and Linux, a browser client (public beta), and a multi-region managed relay so sessions route near users. Pricing is straightforward: Free $0, Lite $2.99/mo, Pro $7.99/mo. Using a managed relay saves you on-call time, patching, key custody and certificate renewal compared with self-hosting — especially important once you add multi-region failover and monitoring.

Self-hosting is the correct choice only when a written requirement forces it — for example a compliance rule that forbids third-party infrastructure, an isolated network without internet egress, or a strict data-residency mandate. If you’re considering self-hosting, read the trade-offs carefully: you inherit uptime, TLS certificate management, software updates, and the complexity of scaling relays. For more detail see Self-Hosted Remote Desktop: Why, How, and What Breaks and the security implications covered in Remote desktop encryption: what actually protects a session.

When competitors genuinely win (honest comparison pointers)

Some tools are optimized for specific workflows: AnyDesk and Parsec have decades of engineering focused on ultra-low-latency video and can outperform generic clients for gaming and real-time multimedia. If your primary need is remote video playback or live performance, benchmark those tools. See our comparator pieces for context: RustDesk vs AnyDesk 2026: and the third option and AnyDesk Pricing Explained: A Plain-English Decode for 2026.

That said, when you factor operational cost — running relays, certificate lifecycle, on-call, and regional failover — a managed relay like Tenvo’s is often cheaper and less risky than a self-hosted fleet unless you have an explicit requirement to host everything yourself.

Sample tuning recipes

Apply the following recipes depending on workload:

  • Light IT support (text & forms): 720p, 10–15 fps, 16-bit color, enable idle throttling. Expect ~0.3–1 Mbps.
  • Developer sessions with IDEs: 1080p, 15 fps, hardware encoder, disabled wallpaper. Expect ~1–3 Mbps.
  • Video watching inside the session: 1080p, 30 fps, 6–10 Mbps if acceptable, otherwise get user to stream locally.
  • Remote editing (color-sensitive): 1440p, 30 fps, higher bitrate 8–20 Mbps and use a high-quality codec; plan for larger monthly transfer.

Operational checklist before rollout

  • Measure: baseline per-user and per-workflow bitrates.
  • Policy: set default resolution/fps and provide overrides for power users.
  • Monitoring: collect session-average bitrate and alert on sustained high usage.
  • Network: ensure uplink capacity — plan for simultaneous sessions (e.g., 50 concurrent 5 Mbps sessions → 250 Mbps uplink).
  • Billing: if you bill customers by usage, round up and include a buffer (1.5× measured).

Example capacity planning: 200 remote-support techs, average 10 Mbps peak each, but only 10% concurrent: provision 200 * 10% * 10 Mbps = 200 Mbps plus 20% headroom → ~240 Mbps. If you planned without concurrency, you’d over-provision dramatically.

Final notes and where to go next

Bandwidth is predictable if you measure the right things: resolution, frame rate, and the fraction of screen that changes regularly. Use the math above to convert those into GB/month and cost estimates. Start with sensible defaults (lowered resolution and fps for normal tasks), measure extremes (video playback), and use adaptive bitrate and relays placed close to users.

If you want an operational, managed option that handles multi-region relays, native clients, and a public-beta browser client — and which avoids the maintenance tax of self-hosting in most cases — try Tenvo. For hands-on setup and a download, go to Download.

Get Tenvo

Ready to try it yourself?

Free for 30 devices, no credit card. Up and connected in two minutes.