Staffing – FTE Required
We are into Help Desk – Technical Support, I am mainly involved into the WFM – Tool and currently getting trained on IEX.
Just wanted to know some stuff from you, would be great if you can help me out.
Looking out for calculating No. of FTE required for a month (I can do it for Hourly and Half Hourly) but is there a way to calculate for a month Ex: – 25000 calls / month, 10 mins AHT, 90% in 20 secs SLA, 30% shrinkage.
I have half hourly call distribution for 3 months.
Question asked by santosh
FTE Required
60
With thanks to Eamon
Eamon
Ok, How (roughly) did you get there? Show your working (as I’m sick of being told) 🙂
With thanks to Dave
Beg to Differ
32. But made lots of assumptions on hours of operations.
With thanks to Paul
Power
To plagerise totally….. “Power corrupts, Absolute power…. Is even more fun…” 🙂
All Hail….
With thanks to Dave
60
Erlang calculates the staffing in each half hour in a typical week based on aht, IT help line call profile (just taken a week to be the monthly calls divided by 4) and service level required. Added up and uplifted by the shrinkage percentage to give the total employed figure, then divided by 37.5.
PS Paul, using 32 FTE leaves about 14% for availability and shrinkage unless your using 70 hours for an FTE?
With thanks to Eamon
44
My entry is 44.
Assumtions:
- Opening Hours 09:00 – 17:00 (8 hours)
- 21 Working Days per month
- Agent works 7.5 hours per day.
From Erlang
- Average calls per day = 1190
- Service Level = 90% in 20sec
- Average Handle Time = 10 minutes
- Answer is 32 agents (but at 78% usage level)
- Answer is 36 agents at 69% usage
- Convert to FTEs = 38.5 (36 * 8 / 7.5)
- Addition 1 in 7 for holidays/sickness = 5.5
Total FTEs = 44
With thanks to Lester
I Agree
My original with a 30% uplift for the shrinkage.
With thanks to Paul
Staffing – FTE Required
Thanks a lot for all your views on this, Let me give some more inputs on this,
- Total call volume – 25000
- AHT – 10 mins
- SL – 90% in 20 secs
- Shrinkage – 30%
- Occupancy – 90%
- Total login hrs – 9
- Breaks 1 hrs total
- Actually login over phone – 8hrs
I had calculated from my end got my requirement over 70 techs, I am just curios whether this no. sounds ok
Need your experience on this, would be great help
With thanks to santosh
48
Based on monthly volumes of 25,000 calls per month, and assuming that a 90% in 20 service level would equate to a 2% abandonment rate for helpdesk callers, an AHT of 600 secs and an agent working day of 9 hours (1 hour in paid breaks) and an overall shrinkage level of 30% the number you need is 48 FTE.
(55 FTE if worked out as a 7.5 hour paid day as I looked at before, the difference from my earlier 60 is accounted for by the lower call count by working out the weekly volume as 25,000 x 12 / 52 and taking abandonment into account)
You’ll notice that I haven’t included occupancy in the calculation, that’s because occupancy (the percentage of time an agent spends handling calls divided by the total time they are planned to be handling telephone calls) is dependant on the call pattern, volume, aht and service level, i.e. the number of agents required as dictated by the erlang calculation also determines what your occupancy will be
In this case about 67%. Applying a 90% occupancy calculation to this FTE figure would artificially deflate the requirement and make the service level impossible to hit
With thanks to Eamon
Shared Resources
Our team is into Help desk (technical support) where the base line support is one and the same, it just differs from the region.
I was trying to develop a module where in I can share an agent taking calls for one client to another client, which I can call him as an shared agent.
Ex: – If a new client gives call volume, aht, service level and asks to give in the no. of staff required, and if we say the FTE required is 10. The client would come back and say they would bill in for only 8 FTE’s.
What I thought is even though I can have 10 FTE they would do the billing for 8 FTE, where in i can use 2 of them as shared resources from other client.
I wanted to know is there any procedure to follow, how do we calculate utilization of a shared resources.
we have some of the clients in the same way saying, they need our service for around only 30 calls per month, but 24 * 7 support.
This sounds very tricky, but if this works out then its really great.
With thanks to santosh
Staffing – FTE Required
I’ve been with our workforce for a while, I’m new with erlang and wondering if what function was used for the calculation.. thank you in advance!
With thanks to lester
Lester. FTE Cal for IB / OB
OK, Let’s define some variables
- AHT (IB) = I
- AHT (OB) = X
- Productivity Required (%) =P
- Work Hours (Per Day)= W
- Staff Available (FTE) = s
- IB Calls = C (Avg per day)
- IB:OB Ratio ( R :to 1)
Rearrange as required.
With thanks to Dave
Question
I was able to understand the formula aside “C” and “R”. what does it stands for?
I’m confused about efficiency and occupancy. the data that I have is only efficiency. can they be inter mixed? Assuming I have this nos.
- Total call volume – 5000/week
- AHT – 5 mins
- SL – 80% in 30 secs
- Shrinkage – 20%
- Efficiency – 85%
- Hours of operation – 17 hours / day
- Breaks 1 hrs total
With thanks to lester
Not Sure What You Mean
Not sure what you mean. They’re defined in the variables. Efficiency / Occupancy / Productivity tend to be synonymous.
I take it you’ve been given an target. How are you defining shrinkage?
Just as a query, how much background do you have in WFM?
The calc above is for modifying known IB call flows and modelling OB calling within the IB peaks and troughs.
In relation to the Erlang-C Calculation the distribution (NOT FUNCTION) is a modified POISSON.
With thanks to Dave
Patches On Jackets, Beards, Long Hair and Pipes
There I am, surfing the net and I come across a thread that looks like one one of those old Open University programmes (one for the older readers)!
What joy!
Lester – you need 27 Agent FTE (Full-time equivalents) for the parameters you’ve stated above. Use this as a benchmark, if you need to answer 10% more calls with the same AHT then employ 10% more agents.
Then get involved with erlang, the erlang add-in for excel (just type that into a search engine) is a good place to start.
With thanks to Eamon
10% Uplift
A 10% uplift in AHT would not return a 10% increase in net staffing when using erlang.
My answer would be 52.64 fte and 56.71 fte for a 10% uplift in AHT (Which equates to 7.73% increase). Both are net of shrinkages and are based on a 7 day operation 9 -5 and 9-12 weekends.
With thanks to Steve
Clarification
The question asked was i’m new with erlang and wondering if what function was used for the calculation
That’s what I answered.
As I’ve said before, add-in’s and WFM products are great BUT you should have at least some understanding of where the data comes from and how it’s calculated.
Blind faith in the output from ANY application not just WFM is a bad thing.
You can’t be an accountant or even an accounts clerk just by using SAGE or MONEY etc, some basic knowledge is required.
Same rule applies here.
With thanks to Dave
Details
“A 10% uplift in AHT would not return a 10% increase in net staffing when using erlang”.
Absolutely correct, wasn’t using erlang, hence my “Then get involved with erlang” comment. I was providing Lester with a starting point and a broad basis for planning before he got himself immersed with the whole erlang thing.
As for your suggestion, I have some observations –
52.64 FTE, Net of Shrinkage represents 65.8 employed FTE (52.64/(1-20%) based on a 37.5 hour week per employed FTE that equates to 2,467.5 employed hours (65.8 * 37.5)
The amount of work that needs to be done each week is 5,000 calls multiplied by 5 mins per call, expressed in hours (5000 * 5 / 60) = 416
Therefore the time, in your model that agents would spend handling calls as a proportion of their total employed hours would be 17% (416 / 2467.4) against my suggestion, which equates to 41% (416 / (27 * 37.5)).
Even if we consider that you already have shrinkage included in your FTE figure and that an FTE works 35 hours per week then they are still only working 23% of their employed hours
Against industry norms of around 40% – 55% even my calculation looks inefficient, this is due to the final parameter of opening hours – 17 hours per day, not the opening hours you have suggested, also I have factored in that at least 2 people need to be present on the phones at any one time to ensure that the opening hours can be covered, irrespective of how low the volumes get.
So yes, increasing from 52.64 to 56.71 is a 7.3% increase in staffing, however going from 27 to 52.64 is a 95% increase to begin with.
With thanks to Eamon
Thanks for the Quick Reply
Guys thanks for the quick reply
I’m with workforce for 6months now but I don’t feel like it. All of us analyst in my organization are just like followers who just follow our superiors w/o even knowing what is it.. were like more with painting or doing some clerical works than with analysing which is our title..
I’ll get back to what you guys discussed after I’m done with my tasks.. 🙁
With thanks to lester
The Average Volume
5,000 calls multiplied by 5 mins per call
The average volume is closer to 5600 calls per week and the AHT is 10 minutes not 5 minutes.
With thanks to Steve
Why Would You Plan NOT to Answer Calls?
“working out the weekly volume as 25,000 x 12 / 52 and taking abandonment into account”
I have never understood this principle, why would you plan NOT to answer calls?
In a sales environment it would be a difficult conversation to explain to a key client that you were planning not to answer calls.
Abandoned is an allowance after the event, not a given before it.
With thanks to Steve
Help
I can see how you would struggle to explain this to a client, perhaps I can help you out.
When talking about call forecasts people usually quote the number of calls they expect to receive and the answering standard (90% in 20 etc) that they want the operation to perform at.
In order to size the operation correctly using erlang, you need to exclude the number of calls that you expect will abandon given that answering standard. So in this example I took 2% of the calls out as that is broadly in line with what happens when a centre performs consistently at 90% in 20.
In the operational environment (especially sales) they will try and answer all calls, but trying to answer every single one would require either a massive increase in staff or a huge level of flexibility (which isn’t always possible).
The sale isn’t the exclusive driving factor in a business, especially if the revenue generated by handling the calls is less than cost to service it, most sales people understand that.
With thanks to Eamon
Abandon 2%
If you are planning to abandon 2% of your volume the likelihood is that you will actually abandon 6%. For every call you plan not to answer there will be call backs which will exacerbate the problem.
I stick by my view that abandoned calls are an allowance after the event and not a given before it.
What you say is quite serious and I strongly recommend that anyone adhering to the practice you describe really considers the consequences.
Just because you think that a particular SL may deliver abandoned calls doesn’t mean you shouldn’t try and answer them, by all means throw out a warning that abandoned may be x% but do not take the calls out before you start.
Also I think you will find there really isn’t a mathematical correlation between an answered within service level and an abandoned rate, only a tacit relationship.
Your practice to reduce your forecast is as good a self fulfilling prophecy as you will get in the realms of customer service “I told you there would be abandoned calls because I planned to have them”.
Would you also recommend telling your customers that they may not get answered as you are not planning to answer all calls?
Can you imagine a taxi driver saying you are going to have to walk the last mile of the journey because he doesn’t have enough gas in the tank? What you describe and advocate is no different.
With thanks to Steve
One Other Thing
Which forecast do you use to compare your actual volumes against? The one you planned for or the original including the abandoned that you deducted?
With thanks to Steve
Your Quote
Your quote “The sale isn’t the exclusive driving factor in a business, especially if the revenue generated by handling the calls is less than cost to service it, most sales people understand that. ”
What I understand from this statement, if it’s true, is that you would not have a business.
With thanks to Steve
Forecast
We use both, we forecast the overall calls and the calls that will be answered.
With thanks to Eamon
WFM Tool Vs Erlang
I am using an Workforce planning tool long term planning module. When I run figures through the wfm tool my numbers are a lot lower than an erlang calculator. The parameters are the same, opening hours, SLA etc.
- monthly volume – 186,000
- aht – 333
- 80/20 sla
- 85%occ
- agents work 8.5 with 1/2 hour lunch
- 30% shrinkage
- open 16 hours per day
Erlang gives approx 180, WFM tool shows as 165
Any ideas, could it be occupancy re the erlang calc?
With thanks to Mark
Could It Be……..?
The 165 figure looks right given the other inputs. What you might be doing (guessing here) is uplifting the Erlang required figure to take occupancy into account.
When you work out the agents required figure through erlang are you then inflating that figure using the occupancy percentage and then adding shrinkage? If so that would explain the difference between the 165 and the 180.
With thanks to Eamon
WFM Tool Vs Erlang
Interesting, I thought the 165 was to low hence my post. I have used workload and also erlang.
With the workload I have included the occupancy figure. With the erlang calc this was not inflated as erlang already assumes a level of occupancy?
I have a feeling the WFM tool calc is either incorrect or there is an input error somewhere along the line.
With thanks to Mark
WFM Tool Vs Erlang
I worked out the requirement at 165 using a spreadsheet model that I have that works out the FTE requirement either as a direct fracagents calc, or as a workload figure with Occupancy included. Using a top line occupancy of 85% and the other inputs you have given hits 165.7 FTE.
Using the erlang alone actually reduces the FTE requirement slightly as it assumes periods where greater than 85% occupancy is possible. Either way the formula
Calls per week x AHT(secs) / occupancy% / (1-Shrinkage%) / 36000 / hours per FTE per week
should give you the right figure
Just make sure that you are applying the lunch figure in the right context. i.e. leave it out all together and ensure that the hours per FTE per week is 40 or include it (which your WFM tool will probably want to do) and divide by 42.5.
It may me that you have included an allowance for lunch in one part of the calculation and then divided the total by a lower FTE hours per week assumption. That would bridge the gap between the two figures you have.
Alternatively. Is the profile of the calls very erratic by any chance?
With thanks to Eamon
Could Be Shrinkages
This could be because of the way shrinkages are added to the workload. Your excel tool may inverse the addition of shrinkages whilst your WFM tool may be a mark up.
With thanks to Steve
Shrinkage and Profiles
I did think about the shrinkage calculation and both use the following req/(1-Shrinakge).
Eamon, having looked at the history that the wfm tool was using there are big peaks and troughs and certain periods of missing data, so maybe this caused the differences.
I think either way the amount of time that has been spent trying to investigate this has confirmed my personal opinion that wfm tools should be used for scheduling etc as their main purpose. Longer term planning as I have always done should be outside of this area.
With thanks to Mark
Shrinkages and Profiles
Yep, if you are using two wildly different call profiles, one through WFM and one through Erlang then they will produce slightly different results.
Still, if both are using the same parameters then they should come out with close to the same answer.
What do you have in your WFM tool for IOT?
With thanks to Eamon
Shrinkage and “fracagents”
Curious as to what you everyone is using in Shrinkage and have a comment about inaccuracy of using the common add-in “fracagents” function.
I’m assuming that you are not accounting for scheduling efficiency (or inefficiency). Even with a perfect forecast and perfect math (Erlang and other), more than likely, you will never be able to build schedules that have a perfect fit (this factor can vary greatly based on flexibility of breaks/lunches, FT to PT ratios, hours of ops, size of operation, etc).
If you want to see how bad it can be, try 2000 calls a day, 900 second AHT, 80/20 SL, normal curve over 14 hours of ops, all FT agents, and breaks (15 minutes each) must fall +/1 one hour from 1/4 and 3/4 into shift and lunch (1 hour) must fall +/- 1.5 hours of the halfway point.
I believe you will find what the calculations say you need and what can be scheduled to cover the pattern are two different numbers. I don’t see where anyone is accounting for this, unless you are including in your shrinkage (which most people do not do).
On the fracagents function, just be aware that it uses linear interpolation to determine the fractional (it goes one over the required and one under the required and takes the linear solution between those based on the SLs at those “whole” staffing numbers to determine the fracagents.
As most of us know, Erlang calcs are not linear. If they were, you wouldn’t need to use the calcs; it would be very easy to determine staff required and outcomes with straight linear math. If you know VBA and look at the code, you should very easily be able to compare the fracagents code to the agent code to determine how you can modify to give accurate fracagents results.
If you want to see the issue, do a calc to determine agents using the fracagents function, then reverse it by using this as the agents and doing a SLA function to see if it returns the same SL that you started with (try for example SL 80/20, 200 calls per hour, AHT 900, the fracagents will return 57.23 (to two decimals) when reversed it will be 79.45% (did not meet the 80% goal), the true fractional agents should be 57.47 (to two decimals) resulting in 80.00% (meets the 80% goal).
Granted the inaccuracy is pretty low, however if you are using fracagents because the difference between 58 FTE and 57.23 FTE is important, then getting a result of 57.23, when it actually should be 57.47 is probably important to you as well.
With thanks to Brent
Another “fracagents” Example
Since the one in my last post came close to SL goal, figured I’d give another example of either a small centre, or maybe the first hour (or last hour) of the day when volume is lower.
Try a fracagents with 80/20 SL and 20 calls an hour (or 10 for half hour) and 900 AHT. fracagents returns 7.72 (rounded to two decimal), if you back into service level percentage, using the unrounded return result from the fracagents and the SLA function, you get a SL of 73.62% (way short of 80% goal).
With thanks to Brent
Author: Jonty Pearce
Published On: 12th Apr 2022 - Last modified: 25th Jul 2024
Read more about - Forum, Full Time Equivalent (FTE), Staffing