Free tool

Erlang C Calculator for Call Center Staffing

This Erlang calculator finds the smallest number of agents that answers your target share of calls or chats within your target time, such as 80% in 20 seconds, from contacts per hour and average handle time. It then divides by (1 − shrinkage) to give the FTE to schedule, and shows occupancy and average speed of answer. 120 calls an hour at 6 minutes need 16 agents on the phones and 23 scheduled with 30% shrinkage.

Watch first · 2 min

Watch on YouTube · All calculator videos

Busiest hour, live channels (phone or chat)

Agents to schedule

23

16 agents answering contacts at any moment, plus 7 to cover 30% shrinkage.

Service level reached

83.6%

Answered within 20 seconds.

Average speed of answer

18 sec

Agent occupancy

75%

A sustainable workload.

Workload = 120 × 6 min ÷ 60 = 12.00 Erlangs
Agents (Erlang C) = 16
Scheduled = 16 ÷ (1 − 30%) = 23

Share this calculator

LinkedIn X WhatsApp Email
Abdessamad Ghanem

Founder's note

What I'd do with these numbers

If the agents needed are well above who you have, or service level keeps missing at the same hours:

Three likely causes

  • A forecast built on daily volume while customers arrive in hourly peaks.
  • Shrinkage (breaks, training, meetings, absence) not added on top of the Erlang result.
  • Handle time in the model lower than reality.

What to check next

  • Run the calculator per interval (30 or 60 minutes) for your busiest day, not per day.
  • Measure real shrinkage over the last month and add it to the staffing number.
  • Use the AHT of the last four weeks, including wrap-up time.

One thing to do this week

Move one break or meeting slot out of your worst-performing hour and see whether service level holds.

Erlang calculator (call center staffing) formula in Excel or Google Sheets

Put the inputs in column B from row 2, then paste the formulas below. They work the same in Excel and Google Sheets.

CellWhatValue or formulaExample
B2Tickets per month60006000
B3Average handle time (minutes)1212
B4Paid hours per agent per month160160
B5Shrinkage (%)3030
B6Target occupancy (%)8585
B8Workload (hours)=ROUND(B2*B3/60,1)1200
B9FTE needed, workload method (not Erlang C)=ROUNDUP(B8/(B4*(1-B5/100)*B6/100),0)13

Get the ready-made spreadsheet

The same calculator as an .xlsx file, with the formulas set up. Free: enter your email and the download starts here right away. Your email also joins Clarivoxx Insights (a weekly article and a monthly newsletter; unsubscribe in one click).

Cover of Head of Support

Go further with the ebook

Head of Support

The blueprint to build, staff and lead a 50-agent support department, with the dashboards I used.

$39.99 · 233 pages · View the book

Frequently asked questions

How do you calculate call center staffing with Erlang C?
Multiply calls per hour by average handle time in hours to get the workload in Erlangs: 120 calls × 6 minutes ÷ 60 = 12 Erlangs. Erlang C then tests 13, 14, 15 agents and so on until the share answered within your target time meets the service level. Here 16 agents answer 83.6% within 20 seconds. Divide by (1 − shrinkage) to get the agents to schedule.
What is the Erlang C formula?
With N agents and A Erlangs of traffic, the probability that a contact waits is P(wait) = (A^N ÷ N! × N ÷ (N − A)) ÷ (Σ A^k ÷ k! for k = 0 to N − 1 + A^N ÷ N! × N ÷ (N − A)). Service level = 1 − P(wait) × e^(−(N − A) × target seconds ÷ AHT seconds). Average speed of answer = P(wait) × AHT ÷ (N − A).
Can I use Erlang C in Excel?
Yes. With agents in B1 and Erlangs in B2, the probability of waiting is =POISSON.DIST(B1,B2,FALSE)/(POISSON.DIST(B1,B2,FALSE)+(1-B2/B1)*POISSON.DIST(B1-1,B2,TRUE)). The free Excel download on this page uses the simpler workload method (hours of work ÷ productive hours per agent, with shrinkage and occupancy), which suits email and other queues that can wait.
Does Erlang C work for chat?
Yes, when each agent handles one chat at a time. If agents run 2 or 3 chats at once, a common workaround is to divide the handle time by the number of parallel chats before you enter it. Check the result against your real service level, because Erlang C assumes nobody abandons and so tends to slightly overstate the agents you need.
How many FTE do I need?
Take the agents Erlang C says you need on the queue in each interval and divide by (1 − shrinkage). 16 agents at 30% shrinkage is 16 ÷ 0.7 = 22.9, so 23 FTE for that hour. For a weekly plan, add the agent hours needed across all intervals and divide by the hours one FTE works in a week.
What is a good service level and occupancy?
80% of calls answered within 20 seconds is the classic phone target, and chat teams often use 80% within 30 to 60 seconds. Occupancy around 75% to 85% is sustainable; above 85% to 90% for long periods wears agents out. Email is not a live channel, so plan it by volume and response-time goals instead.
What is shrinkage in workforce planning?
Shrinkage is the share of paid time agents are not available for contacts: breaks, training, coaching, meetings and absence. 25% to 35% is common. Ignoring it is the most frequent reason teams end up understaffed.
Abdessamad Ghanem

About the author

Abdessamad Ghanem

Customer Experience & Customer Success Consultant · Founder of Clarivoxx

Abdessamad Ghanem works across Customer Support, Sales, Customer Success, Account Management and Partner Management. He writes Clarivoxx Insights for B2B SaaS professionals who own retention, adoption and customer outcomes.