How Wait Times Are Calculated

Simple math, intentionally.

5 min read
May 7, 2026
NOWAITN

The Formula

When someone joins, the platform calculates their estimated wait as:

estimated_wait_minutes = (position - 1) × estimated_service_time_minutes

Position 1 → 0 minutes (they're next). Position 5 with a 10-minute service time → 40 minutes. Position 12 with a 5-minute service time → 55 minutes.

That's it. No moving averages, no weather adjustments, no machine learning. The formula is the formula because it's predictable: a customer at position 5 with a 10-minute service time always sees "about 40 minutes," regardless of which day or time.

Why Not Fancier?

We deliberately don't use historical actuals to compute the wait estimate, even though the data exists. Reasons:

  • Predictability. A customer who joins twice in two weeks should see consistent estimates for the same position. Historical actuals make the number bounce around in ways that erode trust.
  • Debuggability. When the wait shown doesn't match reality, the operator should know exactly which input to change. With a simple formula, it's always service time. With a model, it could be one of dozens of things.
  • Honesty. A 'machine learning' wait estimate that's wrong is worse than a simple estimate that's wrong, because customers feel deceived. A simple estimate that's slightly wrong feels like math.
  • Multi-industry safety. Across 22 industries we serve, the variance in service-time distribution is enormous. A model trained on restaurants would misestimate clinics. A simple formula is robust across all of them.

Tuning Service Time

The single number to get right is your estimated_service_time_minutes, set in queue settings → Capacity & Timing.

Good starting points by industry:

  • Restaurant (table seating): 8-12 minutes from sit to leaving (note: this is the table turn time, not the meal time, since the queue is about the next-table transition).
  • Walk-in clinic: 15-20 minutes.
  • Bank teller: 4-7 minutes.
  • Salon (single service): 30-60 minutes.
  • Auto bay (oil change): 20-30 minutes.
  • Auto bay (general service): 60-90 minutes.
  • Coffee counter: 90 seconds to 2 minutes.

Start with a number, run for a week, look at your dashboard's average wait, and adjust if reality is consistently 30%+ off your estimate.

Be Slightly Pessimistic

Disney has been clear about this for decades: they overestimate the wait time. Customers told 60 minutes who wait 45 are pleasantly surprised. Customers told 45 minutes who wait 60 are angry, even if the wait was identical.

Apply the same principle. If your real average is 8 minutes, set 10. If your real average is 22, set 25. The gap between expected and actual feels like good service. The reverse feels like a broken promise.

Per-Resource Service Times (Future)

Today, every entry in a queue uses the same service time. Different resources (a 2-top vs. a 6-top) actually take different lengths of time to turn, but the platform doesn't currently model that.

For most operations, the simple formula is fine — the difference averages out across many entries. For very high-volume restaurants or operations where party-size variance is wide, this is on the roadmap. Until then, set service time based on your typical mid-range entry, not your fastest or slowest.

What Customers See

The estimate is shown in three places:

  • The join confirmation SMS: 'Estimated wait: about 25 minutes.'
  • The public status page: 'Estimated wait: ~25 min' (updates live as the position changes).
  • The kiosk after they join: same number.

It's always rounded to a friendly number — 'about 25' not '25.7'. The customer is meant to take it as guidance, not a contractual promise.

Sources & References

Authoritative resources that informed this article