Laydyne

Queue formula or simulation: when is Erlang C enough?

For steady arrivals into one shared line served by identical counters, an Erlang C formula can be enough for an initial wait estimate, if its distribution and stability assumptions fit. Use a simulation to check arrival peaks, walking distances, separate lines, people leaving a queue or staff sharing several jobs.

For operators choosing how to estimate waits or compare service capacity. This guide chooses a method; the queue calculator returns estimates and the Erlang C method page explains the formula.

Published:

What you need and what you get

The formula takes arrivals per hour, mean service time and the number of counters. It assumes Poisson arrivals, independent exponential service times, identical counters, one first-come-first-served line, unlimited waiting room and no abandonment. Demand must remain below total service capacity, with enough operating time to reach steady state.

It returns mean waiting time before service, utilisation, the chance of waiting and mean queue size. These include people served immediately; an average wait is not a longest-wait guarantee, and a queue size in people is not its length in metres.

A simulation also needs arrival times or a time-varying pattern, service-time distributions, routes, queue rules, staff availability and any abandonment or shared work you want to represent. Keep those inputs, run several seeds and retain the results for each option. It can produce time histories and resource waits, but unmeasured assumptions do not become facts because they were simulated.

When the formula and simulation agree

The recorded check uses 120 Poisson arrivals/hour, independent exponential service with a mean of 60 seconds, and 3 identical counters sharing one line. Each run lasts 48 hours, discarding arrivals in the first 1 hour. It averages 8 runs, seeds 371–378, with no walking, priorities or abandonment.

These are full-run aggregates, not the first jobs in the playback recording. Finite runs have sampling error and can leave some waits unfinished at the end. This checks two implementations of the same steady model; it does not validate predictions for a real venue.

Same steady shared queue: formula and recorded simulation
MeasureErlang CMean of 8 runs
Mean wait (seconds)26.66666726.633947
Counter utilisation (fraction)0.6666670.669731
Mean people waiting0.8888890.890134

What an hourly average hides after a film ends

The cinema record has 321 audience members and 4 women's cubicles. Across 20 runs, 64.5 women use them on average; this is the simulated mean demand, not the whole audience or a fractional person in a run. The observation lasts 60 minutes from the first ending.

For the formula, spread those same 64.5 visits across the hour: λ = 64.5/hour. The assumed cubicle-use time is triangular, minimum / most likely / maximum = 60 / 90 / 240 seconds, whose mean is (60 + 90 + 240) / 3 = 130 seconds. Use that mean and the same 4 cubicles in Erlang C.

The simulation keeps the burst: people start walking within 0–120 seconds after their film ends. With the same hourly demand, service-time assumptions and cubicles, the recorded waits change when the film endings are separated. All audience members leave within the observation window in each of the 20 runs.

This is a comparison of the hourly simplification with the recorded scenario, not a controlled experiment isolating the effect of arrival peaks. Erlang C replaces the triangular use-time distribution with an exponential one and omits walking. In the simulation a cubicle is reserved during the walk to it, before use; the formula includes only the mean use time. The simulation starts with an empty queue over a finite period, whereas the formula is steady state. Those differences are also part of the mismatch.

Women’s cubicle mean wait, including visits with no wait; simulation averages per-run means
Gap between film endings (minutes)Hourly Erlang C mean wait (minutes)Recorded simulation mean wait (minutes; 20 runs)
00.3415.9
100.3411.7
200.347.9

Choose by the operating conditions

Use the simplest method that represents the decision
SituationStarting methodWhy / what to check
Steady arrivals, identical counters and one lineErlang C, if its assumptions fit.Use arrival and service measurements from the relevant operating period.
Film endings or another arrival peakSimulation with the arrival pattern.An hourly average loses the timing and overlap of the rush.
Walking or separate queuesSimulation with routes and queue rules.Distance, queue choice and switching can affect waits.
People give up or staff share several jobsSimulation with those behaviours explicitly configured.An omitted abandonment rule or staff task will not be included automatically.
Compare counter counts under steady assumptionsFormula first; simulate if other conditions matter.Keep the demand and service assumptions the same across options.

Keep the claim within the model

The cinema example models service queues and travel routes, not crowd pressure, avoidance, doorway congestion or evacuation safety. Neither its waits nor the formula establish fixture compliance or a safe capacity. Measure the inputs at the actual site and check requirements separately.

The calculator is free without an account. Opening a model lets you prepare a scenario; running simulations in Laydyne requires Pro. The articles show recorded results and their assumptions before you run your own.

Records and sources

Tools for the next step