Sitemap
Beyond Localhost

Engineering that ships. War stories first: incidents, migrations, benchmarks and the on-call reality behind the slides. System design, infra, Kubernetes, backend. No hype, no product pitches. Want to write for us? Open the Write for Us tab.

Member-only story

What Discord Figured Out About Presence at 200 Million Users

5 min readJul 24, 2026

--

Press enter or click to view image in full size
Image by AI

My phone dropped to one bar in a lift this morning, and somewhere a machine had to decide whether to tell a few hundred people I had gone offline.

Multiply that by 200 million users and you have Discord’s quietest hard problem. Here is how Discord handles presence at that scale in 2026, and why the answer has almost nothing to do with showing a dot and everything to do with surviving the writes.

Why the Obvious Design Drowns

The obvious design treats presence like data. A status field per user, a heartbeat from every connected client, and a pub/sub broadcast to everyone who can see you whenever the field changes.

At small scale this is fine. At Discord’s scale, do the arithmetic on an ordinary evening. Say ten million people are online at once, a deliberately modest number against 200 million monthly users. A heartbeat every thirty seconds is 333,333 writes per second before a single human does anything at all.

Now let those writes speak. If the average user is visible to a few hundred others through friends lists and open member sidebars, then broadcasting every heartbeat…

--

--

The Speedcraft Lab
The Speedcraft Lab

Written by The Speedcraft Lab

Senior engineer sharing FAANG interview post-mortems, big-tech system teardowns, backend deep-dives, and honest AI-agent experiments.

Beyond Localhost
Beyond Localhost

Published in Beyond Localhost

Engineering that ships. War stories first: incidents, migrations, benchmarks and the on-call reality behind the slides. System design, infra, Kubernetes, backend. No hype, no product pitches. Want to write for us? Open the Write for Us tab.