Queueing calculator: M/M/1, M/M/c (Erlang C), Erlang B, M/M/c/K, M/G/1, staffing and simulation

Average waits, queue lengths, utilisation and the chance of waiting for the standard queue models, how many servers or agents you need for a target wait, and a discrete-event simulation that checks the formulas. Runs in your browser.

Keep it one tap away for everyday use.

Bookmark Queueing calculator?

Press Ctrl + D now. Your browser opens its own bookmark box, where you choose the name and folder.

  1. Rates
  2. Waits
  3. Staffing
  4. Simulate
Nothing is uploadedWorks offline once open

Queue

What it does

Queues are everywhere: calls waiting for an agent, patients at a clinic, jobs on a machine, cars at a toll booth. Queueing theory turns two numbers, how often people arrive and how long each one takes, into the things you care about: how long people wait, how many are waiting, and how busy the servers are. This calculator covers six classic models:

  • M/M/1: one server, random arrivals, exponential service times.
  • M/M/c (Erlang C): several servers sharing one queue, such as a call centre or a bank.
  • M/M/c/K: limited room; anyone arriving when K people are already there is turned away.
  • Erlang B (M/M/c/c): no waiting at all; a call that finds every line busy is lost.
  • M/M/∞: nobody ever waits, such as shoppers browsing.
  • M/G/1: one server with any service time spread, given its mean and standard deviation (the Pollaczek-Khinchine formula).

It also works out staffing, the fewest servers that meet a target such as “80 % of calls answered within 20 seconds” or “lose at most 1 % of calls”, and runs a simulation of the same queue to compare with the formulas.

How to use it

  1. Choose the model.
  2. Type the arrival rate (for example 100 per hour) and the average service time (for example 3 minutes). The two units can differ; all results are given in the service time unit.
  3. Type the number of servers c, and K or the service time standard deviation where the model needs them.
  4. Set the staffing target, and the size and seed of the simulation.

What the results mean

  • Utilisation ρ: the share of time servers are busy. It must stay below 100 % or the queue grows for ever.
  • L and Lq: the average number in the system, and the average number waiting.
  • W and Wq: the average time in the system, and the average time waiting before service starts.
  • Chance of waiting: the share of arrivals who find every server busy (Erlang C for M/M/c).
  • Offered load: arrival rate × service time, in erlangs. You need more servers than this.

Worked example

A help desk gets 100 calls an hour, each taking 3 minutes on average, with 6 agents. The offered load is 5 erlangs and utilisation is 83.33 %. The calculator gives a 58.75 % chance of waiting, an average wait of 1.763 minutes, 2.938 calls waiting on average and 7.938 in the system. For 80 % of calls answered within 20 seconds, 6 agents reach only 47.43 %, 7 reach 74.04 % and 8 agents reach 88.01 %. The simulation of 100,000 calls lands close to the formulas, and its chart of the number in the system follows the formula’s distribution.

Things to know

The formulas describe the long-run average when the rates stay the same. Real arrivals change through the day, so work out each hour separately. Exponential service times are an assumption; M/G/1 shows how much a more even service time (a smaller standard deviation) cuts the wait. People who hang up while waiting (abandonment) are not modelled.

Frequently asked questions

Why is the wait so long at 95 % utilisation? Waits grow very fast as utilisation nears 100 %: a little spare capacity buys a lot of waiting time.

Is anything sent anywhere? No. All the sums and the simulation run in your browser.

Where the numbers come from

  • Formulas: the standard results of queueing theory (Erlang B and C, the M/M/c/K balance equations, Pollaczek-Khinchine), as in operations research textbooks.
  • Checked against exact rational arithmetic in Python (fractions) for 60 random models of all six kinds, to 1 part in a billion; the simulation was checked against the formulas.
  • The call centre example is made up.

Standard scientific values, such as constants, atomic weights and melting points, are facts found in every textbook; we name where ours were checked. If you are an author or publisher and want a value, a credit or a table changed or removed, tell us and we will act quickly.

Last updated 2026-11-09.

Related tools

Sample size and power calculator #32 How many subjects, samples or survey responses do you need? Sample size for comparing two means, paired data, two proportions, or a survey's margin of error, with power curves. Matches R and G*Power. Publication plot maker #27 Paste columns or open a CSV or Excel file and get a clean scientific figure with error bars, sized for a journal column. Download vector SVG or PDF, or PNG at 300 or 600 dpi. Your data stays in your browser. Linear and integer programming solver #582 Type a linear or integer program as plain text (maximize or minimize, constraints, bounds, whole-number and yes/no variables) and get the optimal solution, shadow prices, reduced costs, the simplex tableaux step by step, and a picture for two variables. Runs in your browser. Project scheduling: CPM, PERT and Gantt #585 List your tasks, durations and predecessors (finish-to-start, start-to-start, finish-to-finish, with lags) and get the critical path, earliest and latest dates, float, a Gantt chart, and with three-point estimates the PERT chance of finishing by a date, checked by simulation. Runs in your browser. Agent-based model playground #587 Watch simple local rules make large patterns: boids that flock, Schelling's model of segregation and an epidemic spreading on a grid. Change the parameters, set a seed to repeat a run exactly, step or run, and chart what happens over time. Transportation and assignment problem solver #583 Solve a transportation problem from a starting plan (northwest corner, least cost or Vogel's approximation) to the optimum with the MODI method, showing every step, the u and v potentials and dummy rows for unbalanced problems. Or solve an assignment problem with the Hungarian method, minimising cost or maximising profit. Checked against scipy.