Formula and units
a = λs / 3600; ρ = a / c < 1
B₀ = 1; Bⱼ = aBⱼ₋₁ / (j + aBⱼ₋₁), j = 1, …, c
C = cB꜀ / (c − a + aB꜀)
Wq = Cs / (c − a) seconds; Lq = λWq / 3600 people
P(W > t) = C exp(−(c − a)t/s), t ≥ 0 seconds
W90 = 0 if C ≤ 0.1; otherwise s ln(C/0.1) / (c − a) seconds
λ is arrivals per hour, s the mean service time in seconds per person, and c a positive whole number of counters. a is the offered load in erlangs; ρ is utilisation and C is a probability, both dimensionless. Bⱼ is the Erlang B recurrence used to calculate C without factorial overflow. Wq is the mean wait before service, Lq the mean number waiting, and W90 the 90th-percentile wait. W denotes an individual wait, including zero.
Worked example
For λ = 120 people/hour, s = 60 seconds and c = 3 counters, a = 2 and ρ = 2/3 = 66.67%. B₁ = 2/3, B₂ = 2/5 and B₃ = 4/19, giving C = 4/9 = 44.44%. Wq = (4/9) × 60 / (3 − 2) = 26.67 seconds; Lq = 120 × (80/3) / 3600 = 0.89 people. W90 = 60 ln((4/9)/0.1) = 89.50 seconds. A mean-wait target under 30 seconds needs 3 counters; 2 counters are unstable.
Assumptions and limits
- The arrival rate and counter count stay fixed, service times are independent, and all counters have the same mean speed. There is one shared line, unlimited waiting room, no abandonment and enough operating time to reach steady state. At ρ ≥ 1 no finite steady-state mean wait exists.
- Waits include people served immediately. Lq excludes people being served and is not a physical queue length in metres. If at least 90% are served immediately, W90 is zero. A target mean wait is not a maximum-wait guarantee.
- Film endings, school bells, separate lines, travel through a layout, breaks and finite opening periods need different assumptions or a simulation. The tool searches 1–1,000 counters for a mean wait strictly below the target.