Your phone constantly receives signals from every device in range — WiFi probes, Bluetooth
advertisements, and RF noise. The density of these signals correlates with the number of
people nearby. Each person carries 1–4 wireless devices that are continuously broadcasting.
We combine everything the browser lets us see to estimate crowd density.
Retailers pay companies to count shoppers by tracking their phones' WiFi probes.
Every phone constantly sends "probe requests" — broadcast signals looking for known WiFi networks.
Companies like Euclid Analytics and RetailNext place sensors in shops that count and track
unique devices moving through the store, measuring dwell time and path through each section.
This happens without any app, without your knowledge, and without any consent mechanism — it
is simply how WiFi works.
—
estimated people nearby
waiting
crowd density estimate
alonesmall groupbusycrowded
bluetooth devices—
network type—
connection RTT—
ambient noise—
motion state—
density confidence—
▶ how can a phone estimate crowd density?
Professional crowd density estimation uses several RF signals:
WiFi probe requests: each phone sends these continuously while the screen is on — typically ~1 per second. A commercial WiFi scanner sees dozens per second in a crowd.
Bluetooth LE advertisements: AirDrop, wearables, and headphones broadcast every 100–300ms. More devices = more people.
Network congestion: RTT increases in crowded spaces as many devices share the same cell tower or access point.
Acoustic ambience: crowd noise has a characteristic frequency spectrum — elevated midrange, increased variance.
Browser limitations: we can't enumerate WiFi probes or scan all BLE devices without user interaction.
The BLE count here uses the Web Bluetooth API's scan (where available). The estimate is honest
about its uncertainty.