I know it is a long time, but no one appears to have answered this. I think I have a solution but would like some other opinions.
One way is to convert the annual/monthly/weekly/daily average calls taken by your call centre into the number of calls per AGENT (Half) Hour of work answering or available to answer calls (excluding breaks/meetings etc.) and run that call rate through an Erlang-C Calculator.
(I had a calculator that determined the number of agents needed based on 30 minute intervals as that was the period the call data came out of our MIS system.)
It is important to use the net available time rather than gross time that includes breaks.
E.g. If an agent is employed 7h.30m per day they may only be available to answer the phone for 6h.40m as they take 2×15 minute tea breaks and hourly 5 minute rest break as well as an unpaid hour meal break.
Thus you divide your annual calls Offered (or expected) by your 240 working days (less say 15 days annual leave and say 6 days for sickness or other absenteeism – or whatever your absenteeism rate is) this then gives you the average calls per agent per day they have worked. Divide this by the number of Minutes the agent is Available (logged on) to answer calls = 400 for 6h 40m then multiply by the period that your Erlang-C Calculator calculates over i.e 30 for a half hour calculator, 60 for a 1 hour calculator. The calculator should then spit out the number of agent FTE’s.
What I have done is looked at the problem from the Agent’s end of the call. (Rather than the caller’s viewpoint, which is the normal approach to the problem.) I am effectively saying, for any agent answering a call during their working day, call arrival has a uniform random distribution in the hours that the agent is available to answer calls. I have not proved that Erlang-C is still applicable when the problem is re-stated this way, but I can see no reason why it should not be a reasonable approximation. This of course assumes that the arrival rate is reasonably uniform across the agent’s working day, as well as across the week, and through the different seasons of the year. If there is a large variation over the year, you could do this calculation for each week, (or each season or month) especially if the weekly call pattern is fairly uniform, with the same proportion or number of calls being received on the corresponding days from week to week.
I think that this method is certainly better than simply assuming a 70% agent utilisation factor. The utilisation factor will vary depending on the call volume, number of agents, talk time, after call work time, target answer time and service level achieved. In a large centre, say 2000 calls (of 5 minutes talk and 1 minute work) per hour, utilisation in excess of 80% can be achieved with a service level of 80% answered in 20 seconds. In a small centre, with say 10 calls per hour, utilisation may be around 20% in order to achieve an 80%/20s service level. Erlang-C based Calculators I have used allow the utilisation to be determined.
Of course, the proper way to determine this is to roster your staff for every day of the next year and work out how much it costs, but this requires that you know the number of calls that will be taken in every half hour period over the next year. And a corresponding erlang calculation! This way you only do it once!
An advantage of doing things this way is that if you change service levels or one of the other factors, (say work time is reduced by a computer system upgrade) you are only one calculation away from determining the FTE Staff and hence cost implications.
Do NOT make the mistake of averaging the number of calls over your operating hours per day or operating hour per year. I have seen it done and it caused a major under budgeting. Fortunately, it was caught in time.
Your big problem once you get the FTE’s calculated will then be working out how many full time and part time staff to employ, what hours and days they need to work and how to roster them to match your call load, while ensuring they do not all have to go to lunch at the same time. You may need to add a few more staff to give you roster flexibility, or accept a reduced service level at quiet times of the day, say first thing in the morning or last thing at night.