Slow on purpose: private audio analytics without real-time
Analytics and privacy are usually treated as a trade. They need not be. The trick is to never capture anything identifying, and instead fuse several deliberately-degraded, time-aligned signals — none of which means much alone — into the few numbers a venue actually needs.
We build analytics, and we care about privacy, and we do not accept that the two are opposed. A café has a legitimate need to know how full it is, what sells, and how long the queue runs. The usual ways of measuring that — cameras, phone and Wi-Fi tracking, loyalty identity — all collect personal data, and increasingly meet the law where it stands. The GDPR requires data minimisation and privacy by design and by default, and treats biometric data used to recognise a person as a special category needing separate grounds; California’s CCPA/CPRA gives comparable rights; Illinois’ BIPA singles out faceprints and voiceprints and lets individuals sue over them directly. The surest way to satisfy all of it is not to collect less after the fact but to capture nothing identifying in the first place. Data that was never recorded cannot leak, cannot be subpoenaed, and cannot name anyone.
The idea: fuse several fuzzy sources
The approach is to take several synchronised sources, each deliberately poor, and work from them together. A counter microphone is reduced, at the moment of capture, to coarse counts, and any speech in it is garbled past recognition. A second source is a point-of-sale integration — the till, read directly — which contributes only anonymous order timestamps: what was ordered, and when, with no card and no name attached. On its own each stream is close to garbage. One blurred audio fragment says little, and by design names no one; a list of orders has no idea how full the room is.
Aligned on a common clock, they reinforce. Where two weak signals agree, the aggregate is trustworthy; where one is noise, another covers the gap. Reliability comes not from a better sensor but from redundancy across degraded, time-aligned streams — which is exactly what lets every source stay imprecise, and impersonal. The design is in the fusion, not in any one signal.
Music as a clock
Fusing streams needs a shared reference, and the room already provides one: its music. The same playlist runs underneath every audio fragment, so the music itself can act as a common clock — a signal every source hears at the same instant — to line the sound up against the till without relying on precise device timestamps. A feature of the room that identifies no one becomes the synchronisation the whole method depends on.
What sound alone can carry
Given coarse, de-identified sound and an anonymous till, the figures a café wants fall out without anyone being watched:
- Occupancy — how full the room feels — tracks its overall sound energy; a busy room is a loud one.
- Footfall — from the count of distinct voices in a window, tallied and immediately discarded, together with movement and door sounds.
- Queue and wait — from the cadence of activity at the counter and the spacing of till events.
- Dwell and table turns — from how long a local pocket of sound persists before it changes.
- Order mix and revenue — from the till alone, anonymous.
None of these requires knowing who anyone is — only how the room sounds and what it bought. And the de-identified signal is not a weaker substitute for a camera: a privacy-preserving hospital-waiting-room study found audio-only occupancy correlated 0.74 with the truth against 0.11 for a thermal camera at the same site. Refusing to see produced the better estimate, because the acoustic energy of a room tracks how many people are in it more faithfully than a heat silhouette does.
Slow on purpose
The last piece is the deadline, and the point is that there is none. A daily dashboard does not need an answer in ten seconds, and that freedom is what makes the rest affordable: the streams can be aligned after the fact, re-checked, and averaged across several passes rather than committed to as the sound arrives. Forcing a model to answer in real time is known to cost accuracy — a streaming transcriber degrades against the same model run offline purely from the causal constraint. Continuous listeners that have shipped make the same choice: BirdNET-Pi tolerates a processing backlog by design, and NYU’s SONYC noise network batches and stores rather than streams. Relaxing the deadline is what pays for cheap hardware and a fuzzy, private signal.
The models are the easy part
The models are the least interesting part, and none of them is exotic. Voice activity — is anyone speaking — is a solved edge problem: Silero VAD is 1.8 MB and clears a 30 ms chunk in about a millisecond on a CPU. Telling music from speech from the espresso machine is audio tagging, handled by small pretrained networks like PANNs and YAMNet. Counting how many people are present without identifying any of them is its own task with its own model — CountNet estimates the number of concurrent speakers from a single channel — and footfall can be read from footstep sounds directly, the same acoustic cue the person-identification literature uses (Algermissen & Hörnlein), stopped deliberately at counting rather than recognising. When speech does slip through, stripping identity from it while keeping the words is a settled, CPU-only technique: the McAdams-coefficient baseline from the VoicePrivacy Challenge. All of it runs on hardware cheaper than the espresso machine, and all of it is swappable — because the design is the fusion of fuzzy, synchronised sources, and the models are only how each source is made fuzzy.
Privacy here was not a cost paid against quality. Refusing to capture identity forced a design — several degraded signals, aligned and fused — that produced a better occupancy estimate than a camera and a cleaner legal footing at once. The constraint and the capability were the same decision.
References
- Al Hossain et al. Crowdotic: Privacy-Preserving Ambient Sound Sensing for Occupancy Estimation. 2023.
- Silero Team. Silero VAD: pre-trained enterprise-grade Voice Activity Detector.
- Kong et al. PANNs: Large-Scale Pretrained Audio Neural Networks for Audio Pattern Recognition. IEEE/ACM TASLP 2020.
- Stöter et al. CountNet: Estimating the Number of Concurrent Speakers Using Supervised Learning. IEEE/ACM TASLP 2019.
- Algermissen & Hörnlein. Person Identification by Footstep Sound Using Convolutional Neural Networks. Applied Mechanics, 2021.
- Grau-Haro et al. Comprehensive Evaluation of CNN-Based Audio Tagging Models on Resource-Constrained Devices. 2025.
- Tomashenko et al. The VoicePrivacy 2024 Challenge Evaluation Plan. 2024.
- Wang et al. Simul-Whisper: Attention-Guided Streaming Whisper with Truncation Detection. INTERSPEECH 2024.
- BirdNET-Pi. Post-recording analysis and processing backlogs. GitHub Discussions.
- Bello et al. SONYC: A System for the Monitoring, Analysis and Mitigation of Urban Noise Pollution. Communications of the ACM, 2019.