Support staffing calculator: how many agents do you need?
Enter how many conversations arrive and how long each one takes. For chat and phone the calculator uses Erlang C to find the agents you need to hit your answer-time target; for email it divides the day's work by each agent's productive hours. Both add shrinkage on top.
Agents to schedule
8
Agents answering at once
5
Answered within 60 sec
87.9%
Average wait
21 sec
60 conversations an hour at 6 minutes each is 3.0 agents’ worth of work (in erlangs). With 5 answering, 88% are picked up within 60 seconds and agents are busy 60% of the time. Adding 30% shrinkage gives 8 agents on the schedule for that hour.
| Answering | Within 60 sec | Average wait | Occupancy |
|---|---|---|---|
| 4 | 63.5% | 1.5 min | 75% |
| 5 | 87.9% | 21 sec | 60% |
| 6 | 96.4% | 6 sec | 50% |
| 7 | 99.0% | 2 sec | 43% |
How the calculation works
- Workload. Conversations per hour × handle time ÷ 3,600 seconds gives the traffic in erlangs: how many agents would be busy if work arrived perfectly evenly. 60 chats an hour at 6 minutes each is 6 erlangs.
- Queueing. Work doesn’t arrive evenly, so you need more than that. Erlang C gives the chance a customer waits with a given number of agents, and from that the share answered within your target.
- Smallest team that meets the target. The calculator tries one agent more at a time until the service level reaches your target.
- Shrinkage. Agents answering ÷ (1 − shrinkage) gives the agents to put on the schedule for that hour.
Questions
How do I calculate how many support agents I need?
For live chat and phone, where customers wait in real time, use Erlang C: it takes contacts per hour, average handle time and a service level target (such as 80% answered within 60 seconds) and returns the agents needed to answer. For email, add up the minutes of work a day and divide by the minutes each agent actually spends on tickets. In both cases, add shrinkage on top for breaks, meetings, training and time off.
What is Erlang C?
A queueing formula from the early 1900s, first used to size telephone exchanges. Given how much work arrives and how many agents are answering, it gives the chance a contact has to wait and how long waits are likely to be. It assumes contacts arrive at random, that they wait rather than give up, and that any agent can take any contact.
Does Erlang C overstate the agents I need?
It can, slightly. Real customers sometimes give up and leave the queue, which Erlang C doesn't model, so it tends to err on the side of a few more agents. That's usually the safe direction for a plan.
What is shrinkage and what should I use?
Shrinkage is the share of paid time agents aren't available to customers: breaks, meetings, coaching, training, holidays and sick days. The best figure is your own, from your schedule and time-off records. If you don't track it, add up the hours each agent spends away from the queue in a typical week and divide by their paid hours.
How do I staff for chat when agents handle several chats at once?
Enter the number of chats each agent usually handles at the same time. The calculator divides handle time by that number, which is the common approximation. In practice each extra chat slows an agent down a little, so treat high concurrency results as optimistic.
Link to this page
Free to use and share. If it helped, a link back is the best thanks.
<a href="https://flatdesk.app/free-tools/support-staffing-calculator">Support staffing calculator</a>More free tools
- SLA due time calculatorDue times in business hours, and SLA attainment.
- CSAT and NPS calculatorYour score and how much of a change is just noise.
- Customer service reply templatesPlain replies for refunds, bugs, outages and hard conversations.
- Customer support glossarySupport terms and metrics defined in a sentence or two.
Made by Flatdesk, a help desk for small support teams at one flat price per agent.