Small call centers have unique staffing challenges due to their limited resources and fluctuating call arrival patterns. The following is a look at five special nuances in the math of small centers.
1. The smaller the center, the more drastic the arrival pattern tendencies will appear to be.
Even though the example in Figure 1 has the natural “M-curve” movement, notice how it travels through the day with sharp, jagged edges and steep cliffs.
2. The relationship between handle time and volume is more pronounced.
In the example shown in Figure 2, the 3:30 p.m. interval has one less call than the interval at 12 p.m., but since the handle time is one full minute higher, the actual workload is one-half person more.
The mathematical relationship stays the same when the volume is scaled up to the larger centers because it’s still a +15% increase. But in a smaller center like this one, a 15% increase equals one-half person, which translates to 3.6 FTEs (full-time equivalents). This means that you really need four different agents to meet the service level (SL) goal for that interval, with one of them allowed to be less productive a portion of the time. So now you’re going from needing 3.1 people—and I’d bet you’d come pretty close to meeting your SL with just a solid 3 on staff for that interval—to needing 3.6 people, which means four agents. That’s not just a 15% increase, it’s a +33% increase. In larger call groups, the odd little efficiency situations like this one resolve themselves on their own.
3. It takes some finesse to calculate the true required staff for a small center.
The trouble lies in the Erlang algorithm, which changes its relativity based on size. I’ve written previous articles about the dangers of Erlang, how it ignores abandons and it does not recognize the maximum capacity of agents vs. callers. For the most part, the biggest problem with Erlang for a small center is that it wants to overstaff.
For a while, I tried manipulating the Erlang Add-in function, “Fractional Agents,” by entering the CallsPerHour input as a fraction multiplied by x1.75 instead of x2. It seemed to work at first, but it didn’t always give stable results either, because, again, the relativity of the formula’s result changed every time I changed the size. Then I found an even better solution, one that allows me to retain the stability of the Erlang algorithm while incorporating Human Factors into a total fully loaded required staff result (see Figure 3).
Here is how it works:
I. I calculate the volume against the handle time to determine the number of bellybuttons I need. The formula is =(FcstVol*2*AHT)/3600
II. I add on the additional human factor, which consist of lost presence hours (vacay, sick, personal, jury, military, etc.) and shrinkage (meetings, training and anything else you’re paying your agents to do besides take calls). The formula is =(Bellybuttons/(1-HumanFactors%))-Bellybuttons. This result just shows the additional added on shrinkage based on workload alone, and this is what turns the bellybuttons into faces with names and personalities who are now asking you for time off.
III. I add in the Erlang portion of the additional required staff. This would be the extra time that you’re hiring people to sit in the available staff waiting for the next call. This time is completely based upon how tight your ASA or SL goal is. Hopefully, you’ve supplemented this in-between call (IBC) time with some other kind of productive work; otherwise, this is the time the agents are surfing the web. The formula for this step is =TotalErlangReqd – Bellybuttons. Subtracting out the initial workload (bellybuttons) will demonstrate the portion of your total required staff that is applied to just the Erlang calculation.
IV. Final step, add the Bellybuttons, the Human Factor Headcount, and the Erlang headcount together to see the total required staff.
By eliminating the human factors (shrinkage and lost presence time) from the Erlang portion of the required staff, the overall fully loaded required staff number is reduced. In Figure 3, compare the Fully Loaded Erlang required staff line (which is scratched out) to the final IV. Fully Loaded Required Staff; the end result is not so inflated, and neither calls nor handle time had to be manipulated to get there.
4. You might need to let go of those occupancy goal benchmarks.
But first, and this is very important, occupancy is an output. If you want to control it and treat it as an input, you have to prioritize it above your service goal, above your net staff, and above your hiring plan. This is especially true in a small center. Take a look at the example in Figure 4.
At 10 a.m., you are only overstaffed by one-half of a person, yet your predicted service level is 94%, and your occupancy is super-low at 48%. In the next interval, you’re understaffed, in the red, missing your SL by 3% (although I really prefer to use a SL range goal with a 5% swing either way for these smaller centers). But the interesting thing about the 10:30 a.m. interval is that, even though you’re understaffed and missing your service goal, your occupancy is still only 69%.
In the next interval, at 11 a.m., you’re understaffed by almost 3 people (you only need 6.5 people to begin with), and your occupancy is finally crawling up near the 80% mark, but your service result is an embarrassing 51%. At 11:30 a.m., service level is still tanked, but finally occupancy has crept up to 82%.
What all of these stats tell me is that for a center this small, they really only have an occupancy potential to a certain level, and I think that occupancy goal would be practical if it were set to 60%. A chart like this also demonstrates why I can defend saying that 60% is the right target for this group.
Having a 60% occupancy goal is bound to raise some eyebrows, so before sharing that with people outside of the WFM team, be prepared to supplement it with some information about how you’ve planned to offset some of that 40% unoccupied time with some busy work that happens in between calls. It will lessen the blow.
5. Have a minimum staffing plan in place for low-volume intervals.
If you can manage it, having at least two people staffed at all times is ideal. That way, one of them can go to the rest room or take a vacation day with minimum interruption. And if your interval contains less than 3 calls total, you might want to replace that with at least 3 calls in every single interval, which will allow for a caller to dial in, change their mind or get interrupted and hang up (accidental abandon), and then dial back in, plus a second safety call for good measure.