BYTETOOLS

Erlang C Calculator

Size a contact centre with Erlang C: offered load in erlangs, agents needed for your service level, average speed of answer, occupancy and shrinkage.

10.00
Offered load (erlangs)
14
Agents required
20
Rostered headcount
71.4%
Agent occupancy
88.8%
Service level achieved
17.4%
Chance of waiting
7.8s
Average speed of answer
11
Minimum agents for stability
AgentsChance of waitingService levelAvg speed of answerOccupancyRostered
1168.2%39.0%122.8s90.9%16
1244.9%64.0%40.4s83.3%18
1328.5%79.6%17.1s76.9%19
1417.4%88.8%7.8s71.4%20
1510.2%94.1%3.7s66.7%22
165.7%97.1%1.7s62.5%23
173.1%98.6%0.8s58.8%25
181.6%99.3%0.4s55.6%26

A = contacts × AHT ÷ window seconds  ·  B(0)=1, B(n)=A·B(n−1) ÷ (n + A·B(n−1))  ·  C = B ÷ (1 − (A÷N)(1−B))  ·  SL = 1 − C·e^(−(N−A)·T ÷ AHT)

Worked example: 100 contacts in 30 minutes at 180 seconds AHT is A = 100 × 180 ÷ 1,800 = 10.00 erlangs. At 14 agents the recursion gives a 17.4% chance of waiting, a 88.8% service level against a 20-second target, 7.8 seconds average speed of answer and 71.4% occupancy. The Erlang B recursion behind it reproduces the published traffic tables exactly — 10 circuits carry 4.461 erlangs at 1% blocking, 20 circuits carry 12.031 — and the analytic case C(N=2, A=1) = 1/3 comes out at 0.3333.

Erlang C assumes Poisson arrivals, exponential handling times, no abandonment and infinite queue patience. Real queues abandon, so Erlang C tends to over-staff slightly for voice and badly misfits chat or email, where an agent handles several contacts at once. Occupancy is raw load ÷ agents; rostered headcount divides the required agents by (1 − shrinkage), so 30% shrinkage means you schedule about 1.43 people for every one on the phones. Everything is computed in your browser; nothing is uploaded.

What is the Erlang C Calculator?

Erlang C is the queueing model contact centres use to answer one question: how many agents do we need on the phones to hit an 80/20 service level?

  • Offered load in erlangs from contacts, handling time and window length
  • Agents searched upward until the target service level is met
  • Probability of waiting, service level, average speed of answer and occupancy
  • Shrinkage-adjusted rostered headcount
  • Sensitivity table for the agent counts either side of the answer
  • Warns when occupancy passes the 85% sustainability threshold

How to use the Erlang C Calculator

  1. 1

    Choose the reporting window and enter how many contacts arrive in it.

  2. 2

    Enter average handling time in seconds — talk time plus after-call work.

  3. 3

    Set the service level target, for example 80% answered within 20 seconds.

  4. 4

    Add your shrinkage percentage to convert agents on the phones into rostered headcount.

  5. 5

    Read the required agents, then use the table to see the cost of one more or one fewer.

About the Erlang C Calculator

Erlang C is the queueing model contact centres use to answer one question: how many agents do we need on the phones to hit an 80/20 service level? This calculator works out the offered load in erlangs from your contact volume and handling time, then searches upward through agent counts until the target service level is met.

It reports the probability that a caller waits at all, the service level actually achieved, average speed of answer, agent occupancy, and the rostered headcount once shrinkage for breaks, training and absence is added back. A table around the answer shows what one agent more or fewer would do.

The Erlang B recursion behind it is the numerically stable form, so it stays accurate at large agent counts, and every calculation runs locally in your browser with nothing uploaded. Estimates for planning, not a substitute for a workforce management system.

Frequently asked questions

What is an erlang in call centre maths?

One erlang is one hour of call traffic per hour — a single agent talking continuously. Offered load is contacts × average handling time ÷ the length of the window in the same units. 100 calls in 30 minutes at 180 seconds each is 100 × 180 ÷ 1,800 = 10 erlangs.

How many agents do I need for an 80/20 service level?

It depends on the load. At 10 erlangs, 14 agents give roughly an 89% service level against a 20-second target with a 17% chance of waiting. Erlang C is strongly non-linear, so doubling the volume needs less than double the agents — a small centre pays a large penalty for its size.

What is shrinkage and how does it change the headcount?

Shrinkage is all the paid time agents are not available to take contacts: breaks, training, meetings, sickness, admin. Rostered headcount is required agents ÷ (1 − shrinkage), so 30% shrinkage means scheduling about 1.43 people for every one you need on the phones.

Is Erlang C accurate for chat and email?

Not really. Erlang C assumes one contact per agent at a time and infinite queue patience. Chat agents handle several conversations concurrently and email is not a real-time queue at all, so both need different models. Erlang C is a voice model, and it slightly over-staffs even there because real callers abandon.

What occupancy should I aim for?

Most centres target 80-85%. Above that, agents get no recovery time between contacts and attrition climbs quickly; well below it, you are paying for idle time. The tool flags occupancy above 85% because it is usually a sign the roster is too tight rather than efficient.

Related tools