Real-time occupancy monitoring means knowing how many people are in your space right now — entries minus exits, updated live — and the useful version of it isn't a dashboard at all: it's an alert that finds you when a number crosses a line you chose. A queue building while the second register sits closed, occupancy approaching your comfort limit during an event, a dead morning that says today isn't a normal day — each is worth something in the moment and almost nothing on Monday. That's the difference between foot-traffic analytics and foot-traffic operations, and it's where people counting stops being a reporting tool and starts being a colleague.
This post covers how live occupancy actually works, why the alert beats the dashboard, and the handful of alert recipes that earn their place on a store owner's phone without becoming noise.
Occupancy is a live number pretending to be a report
Every metric we've written about — capture rate, conversion, bounce, power hours — is retrospective by nature. You review it, learn something, and change next week. Occupancy is different in kind: it's the one number whose value decays in minutes. Knowing the shop held forty people at 2:15pm last Saturday is trivia; knowing it holds forty people right now, with one person on the floor, is a staffing decision you can still make.
The mechanics are simple. A sensor above the door counts entries and exits with direction (here's how); the running difference is live occupancy. Accuracy compounds, though — a counter that's 90% accurate on each crossing drifts further from truth every hour as the errors accumulate, which is why counting accuracy and staff filtering matter more for occupancy than for daily totals, not less. All of it works the privacy-first way: frames processed on-device and discarded, anonymous counts only, no footage, no identification.
The dashboard problem
Here's the uncomfortable truth about live dashboards: nobody watches them. You're serving customers, taking deliveries, running the floor — exactly the moments when the live number matters are the moments you can't be looking at a screen. A live dashboard on a busy day is a smoke detector you have to remember to glance at.
So invert it. Decide in advance what states deserve interruption, encode each one as a rule, and let the system watch the numbers so you don't have to:
- "Tell me when…" occupancy exceeds a threshold, a queue-like spike of entries lands without matching exits, traffic runs far above or below the usual curve for this hour and day.
- "…and tell me where I am" — on your phone, to the store's channel, wherever the roster actually looks.
One detail separates alerts you keep from alerts you mute: compare to the pattern, not to a fixed number. Forty people is a rush on Tuesday morning and a normal Saturday. Good alerting learns each hour's baseline and fires on deviation from what this hour usually looks like — that single design choice removes most false alarms before they happen.
Five alert recipes that earn their keep
Start with a few high-signal rules rather than instrumenting everything:
- The queue alert. Entry rate spikes above the hour's norm while the floor is thinly staffed. It fires minutes before the queue becomes visible frustration — enough time to open a register or step out from the back. Queues are where bounce rate is born; this is the alert that prevents it.
- The capacity alert. Occupancy approaching a limit you set — a licensed capacity, a comfort ceiling for a small room, a workshop or event cap. Useful precisely because it's rare.
- The dead-day alert. Traffic running well below the usual curve by mid-morning. Today isn't a normal day — roadworks, weather, a broken sign — and knowing at 10am instead of at close means the roster and the day's plan can still react. (The staffing playbook is built on exactly this curve.)
- The record alert. Busiest hour ever, best capture-rate day this month. Not operational — motivational. Stores run on morale too, and the team deserves to know at 4pm, not in a report nobody reads.
- The after-hours alert. Entries detected when the store should be empty. Not a security system — but a useful tap on the shoulder that something's moving when nothing should be.
Each rule should answer three questions before it earns a place: what will I do when it fires? how often will it plausibly fire? where should it reach me? A rule with no action attached is a notification, not an alert — delete it.
Alert fatigue is the failure mode
The graveyard of operational tooling is full of channels people muted. The discipline that keeps alerts alive:
- Fewer rules, higher stakes. Three alerts you always act on beat twelve you triage.
- Baselines over thresholds wherever the pattern varies by hour or day — fixed numbers are wrong twice a day by definition.
- Cooldowns. One rush should be one alert, not fifteen pings as the number oscillates around the line.
- Review monthly. An alert that fired ten times and changed your behaviour zero times has told you its value.
Done right, the system fades into the background exactly the way good infrastructure should: weeks of silence, then the one ping that saves a Saturday.
Frequently asked questions
How does real-time store occupancy monitoring work?
A sensor above each entrance counts entries and exits with direction of travel; live occupancy is the running difference, updated continuously. Modern edge-AI sensors do this anonymously — every video frame is processed on the device and discarded in milliseconds, so the live count exists without any footage existing. Counting accuracy matters more for occupancy than for daily totals, because per-crossing errors accumulate in a running balance.
What occupancy alerts should a small store set up first?
Start with three: a queue alert (entry rate spiking above the usual pattern for that hour), a capacity alert (occupancy approaching a limit you choose), and a dead-day alert (traffic running well below the normal curve by mid-morning). Add more only when each existing alert has proven it changes what you do.
How do I avoid alert fatigue with retail alerts?
Compare against learned hourly baselines instead of fixed thresholds, add cooldowns so one event produces one notification, and keep the rule count low — every alert should have a known action attached. Review monthly and delete any rule that fires without changing your behaviour.
Do I need to watch a dashboard all day to use live occupancy?
No — that's the point of alerting. The dashboard is for the moments you choose to look; alerts cover the moments you can't. Rules watch the live numbers continuously and interrupt you only when a state you defined in advance actually occurs.
BitOculus pairs live occupancy with configurable real-time alerts — queue spikes, capacity limits, unusual days — delivered where your team already looks, all counted on-device with no footage ever stored. See it live in the demo dashboard or join the founding cohort.