Operations answers · CMK Sons Labs

Why am I missing SLA when I am fully staffed?

Almost always for one reason: you are staffed to the day's average, and a queue does not care about your average.

If you need 40 agents across the day, that number is the mean of every half hour. The 10am peak might need 61 and the 3am interval might need 2. Staff to 40 everywhere and you are 21 short at the moment it matters and 38 over at the moment it does not. The day total looks perfect. The service level does not.

The part that catches people out

Staffing a queue is not a ratio. It is Erlang C, and it is not linear.

Double the contacts and you do not need double the agents. But halve them and you often need far more than half, because a small team has no slack to absorb a cluster of arrivals.

That is why a "contacts per agent" rule is furthest out exactly where it hurts: in the quiet intervals, where it quietly over-staffs, and in the sharp peaks, where it under-staffs.

The three things that actually bind

Your required headcount is whichever of those three is strictest, and it is often not the one you are watching. An operation capped by occupancy can raise its service target a long way for no extra headcount at all, and nobody notices because the service figure was never the binding one.

What to check first

What this does not tell you. Erlang C assumes arrivals are random and independent, one skill, and a steady state within each interval. A marketing email landing at 9am is none of those things. Treat the output as a requirement to staff against, never as a roster.
Workforce Management WFM Scheduler

Erlang C staffing per interval, volume forecasting, shift rosters and a metrics report. Free, runs in your browser.

Free, no signup, nothing you type is uploaded. Written by Chris Maras, who spent 21 years in operations before building these.  ·  All ten tools