How We Built It
How We Cracked The Code:
Accurately Measuring Queue Wait Times
Before Nola became a mission critical tool for parks to manage ride operations, we had to get it very wrong first. Measuring queue wait times at high density attractions is harder than it sounds. The environment breaks assumptions. The crowd breaks models. And our original approach broke under both. This is how we rebuilt it, and what we learned in the process.
Vic Zorin, Founder | 8min read
The Problem
Why the standard approach failed us
Our journey started where most do: standard maths. Measure ride throughput, look at queue length via CCTV. It sounded perfect on paper. It wasn't.

The environment
Not every park has sufficient CCTV coverage. Many queues snake through tunnels, behind obstacles, or indoors, making visual measurement impossible.

The variability
The same physical queue length can represent very different wait times depending on live conditions. Dispatch rates, vehicle availability, staffing levels, and seat fill all fluctuate continuously throughout the day.
Our initial approach only worked under sterile conditions. In the messy reality of a theme park, it failed. We went back to the drawing board.
Privacy by design
No PII. Ever
As we redesigned our computer vision software, we set a non-negotiable ground rule: Nola is anonymous by design. Personally Identifiable Information (PII) is any data that could be linked back to a specific individual, such as a face, a name, or a biometric. It is never produced, stored, or transmitted at any point in our system.
All video processing happens on-premises. Footage never leaves the park's local network. Only lightweight, anonymous counts are transmitted to the cloud. No facial recognition, no individual identification. We only need to understand how crowds move.
Instead of tracking individuals, we capture abstracted visual signatures of groups of visitors at exactly two points in the guest journey:
Point A: queue entry
Anonymous mathematical token generated
Not every park has sufficient CCTV coverage. Many queues snake through tunnels, behind obstacles, or indoors, making visual measurement impossible.
In between
Time spent between A and B calculated
The system tracks the time spent between Point A and Point B, which is the actual dwell time experienced by this group of visitors.
Point B: Ride Boarding
Token matched, then deleted
Once matched, the mathematical token is permanently wiped from the edge device. No storage, no tracking, no residual data.
Permanently deleted on match

All video processing is handled on local edge hardware. Only anonymous timestamped counts ever leave the premises.
All on-premises. Video inference runs on local edge hardware. Raw footage never leaves the network.
All on-premises. Video inference runs on local edge hardware. Raw footage never leaves the network.
Counts only to cloud. Only anonymous timestamps and mathematical tokens are transmitted. No images, no video.
Zero PII produced, stored, or transmitted. By architecture, not policy.
Validation
Accuracy you can verify after the fact
98%+
Minimum accuracy threshold
100%
Audit log coverage
Because Nola records the exact timestamps of when anonymous mathematical tokens enter and exit a queue, the system automatically builds a continuous, complete historical audit log.
Parks can verify our accuracy threshold after the fact by comparing short entry and exit video snippets against observed reality. If an operator ever needs to validate performance, the evidence is already there. No trust required. Just data.
The toolkit
No single algorithm works for an entire park
Our early failures taught us one hard truth: every ride is different. Today, Nola dynamically applies the right methodology for each attraction, tailored to how it is built and observed.

Ride-dependent logic
A hypercoaster tracks dispatches and rider production. A log flume tracks vehicle spacing, seat fill, and raft availability. The right method is applied per ride type.

Dynamic merging
Nola calculates actual merge ratios in real time by observing entry and boarding behaviour, rather than assuming a fixed split. Metrics stay accurate as staff adjust.

Multi-queue separation
Standard and Express lines are monitored independently and simultaneously, with strict SLA tracking for premium fast-pass queues.

SLA management
Expected wait for the standard queue and actual wait for Express are shown side by side on operator panels, keeping premium experience standards enforceable.
Real-time response
Moving beyond guesswork
The engine recalculates the moment anything changes in the queue. Three scenarios that would break a static model:

Sudden surges
A post-parade rush or nearby ride closure triggers an immediate wait time recalculation across affected queues.

Extended downtime
Operator-defined rules cap the displayed wait and automatically switch to an alternate visitor message, with no absurd numbers on the board.

Line abandonment
When groups of visitors exit en masse, the algorithm adapts in near real time, preventing artificial inflation of the displayed wait time.
