Erlang C calculator
Work out how many agents your call center or contact center needs, online and free, with no download.
Enter your contacts and handle time, then choose Work it out.
A day of intervals
Paste a day's contacts and handle times, or up to a week's, and see the agents each interval needs, the busiest time and the agent hours, worked out as Erlangly works out a forecast. Then download them as a spreadsheet that Erlangly's forecast import takes as it is.
Paste each interval's contacts and handle time, or choose a file, then choose Work out the day.
The Erlang C formula, explained
Erlang C answers one question: with this many calls and this many agents, how many callers wait, and for how long? It assumes calls arrive at random, every caller waits until answered, and any free agent takes the next call. The calculator tries one agent count after another until both your targets are met.
1. The workload, in Erlangs. Calls times average handle time, divided by the interval's length. 100 calls in 30 minutes at 240 seconds each is 100 × 240 ÷ 1,800 = 13.3 Erlangs: as if 13.3 people were on the phone the whole half hour. That's the least you could ever get by with, and almost no one would be answered on time.
2. The chance a caller waits. With A Erlangs and N agents (more agents than Erlangs):
X = A^N ÷ N! × N ÷ (N − A) S = the sum of A^k ÷ k!, for k from 0 to N − 1 P(wait) = X ÷ (S + X)
3. The service level: the share of calls answered within your target time t.
Service level = 1 − P(wait) × e^(−(N − A) × t ÷ AHT)
4. The average speed of answer and occupancy.
Average speed of answer = P(wait) × AHT ÷ (N − A) Occupancy = A ÷ N
For the 13.3 Erlangs above, 16 agents answer 69% of calls within 20 seconds and 17 answer 81%, so 17 is the fewest that meet 80% in 20 seconds, with each agent busy 78% of the time. The calculator shows 16.9 for these numbers, so 17 whole people (why fractional agents). When your maximum occupancy needs more agents than the service level does, it sets the number instead. The calculator shows both, and the agent counts either side, so you can see what one more or one fewer does.
Chat: several conversations at once
Erlang C assumes an agent takes one contact at a time, which isn't true of chat. An agent with three chats open answers each more slowly, and chats come in bunches. So the calculator works chat out from the work instead:
- The work: chats times average handle time, the whole session from start to close.
- What one agent carries: chats at once times efficiency. Three at once at 85% efficiency is 2.55 chats' worth of work at a time.
- Room for bursts when several chats arrive together, then your maximum occupancy as a cap.
Your service level target is shown as it is, not predicted: this calculator doesn't predict one for chat. Without your own figures, start from 3 chats at once, 85% efficiency and 80% answered within 60 seconds.
Shrinkage: from agents on the phones to agents scheduled
Erlang C gives the agents who need to be taking contacts. Some of the people you pay won't be: they're off sick, on leave, in training, coaching or meetings. That share of paid time is shrinkage, and the people to schedule are:
Agents scheduled = agents on the phones ÷ (1 − shrinkage)
17 agents on the phones with 25% shrinkage is 17 ÷ 0.75 = 22.7, so 23 people. Leave out breaks and lunches already written into each shift: they're off the phones already, and counting them as shrinkage too would count them twice. Your own history of absence, training and meetings is the best guide to the figure.
Service level, and how it's calculated
Service level is the share of contacts answered within a target time, written as 80/20: 80% within 20 seconds. Your phone system measures it after the fact, usually as the calls answered within 20 seconds divided by the calls offered. Some contracts divide by the calls answered instead, or leave out callers who hang up within a few seconds, so check which yours uses.
Before the fact, Erlang C predicts it with the formula above. 80/20 is the common target for voice, and clients' contracts often set their own. Chat is usually measured in seconds to the first reply, and email in hours.
Questions
What is an Erlang?
A unit of workload: one Erlang is one agent kept busy for a whole interval. 100 calls of 4 minutes in half an hour is 13.3 Erlangs. It's named after Agner Krarup Erlang, the Danish engineer who worked out the formulas for telephone exchanges in the early 1900s.
Erlang C or Erlang A?
Erlang C assumes every caller waits until answered. Erlang A allows for callers who hang up first, so it usually gives fewer agents, but it needs to know how long your callers will wait, which few teams can measure. Erlang C is the cautious standard, and it's what this calculator and most workforce management software use.
Why fractional agents?
Because staffing adds up across a day. 16.4 agents means the interval needs more than 16 and fewer than 17, and over a day the fractions add up to the agent hours a schedule has to cover. People are whole, so the answer also says how many people that makes, rounded up.
Can I use it in Excel?
Yes. Copy a day of intervals from Excel or Google Sheets and paste them into A day of intervals, then download the agents each interval needs as a CSV file, which opens in Excel. For a schedule to put them in, there's our free call center schedule template.
Is it free?
Yes, with no sign-up and no email address. Your numbers are worked out on our server and kept nowhere; the privacy policy has the details.
Made by Erlangly, workforce management software for call centers. It works out the agents for every interval of your forecast this way, then builds the schedule that covers them. See what Erlangly does.