Absence inputs
One queue or skill at a time, per interval.
With 16 agents scheduled (16 for average absence plus 0 extra).
Schedule 17 agents to get 95.8% of intervals on target, against your 90% goal.
| Extra agents | Scheduled agents | Average service level | Intervals meeting target |
|---|---|---|---|
| +0 (yours) | 16 | 88.8% | 86.9% |
| +1 | 17 | 93.4% | 95.8% |
| +2 | 18 | 96.2% | 98.8% |
| +3 | 19 | 97.9% | 99.7% |
| +4 | 20 | 98.8% | 99.9% |
| +5 | 21 | 99.4% | 100.0% |
| +6 | 22 | 99.7% | 100.0% |
Each row assumes absence is independent between agents. Real absence often clusters on bad days, so treat these shares as a best case and the recommended buffer as a lower bound.
Save or share these results
Take a snapshot of the exact inputs and outputs on screen.
Get the full Excel/VBA version
The full Excel/VBA version with live formulas, RTM tracking, and dashboards is free for now.
Results are estimates for planning purposes only and should not replace professional workforce management judgment.
The calculator first works out how many agents must be on the phones to hit your service level target, using the same Erlang C model as the staffing calculator. It then schedules enough agents to cover average absence, and asks: given that absence is random, how often do enough agents actually show up? Each interval is treated as a fresh draw, so some intervals land above the average and some below.
Assumptions
- Absence is independent between agents: one agent being off sick does not change the chance for another.
- One interval at a time: no carry-over of backlog from the previous interval.
- Service level for the agents who show up follows Erlang C with your volume, handle time and target.
- No clustering of absence: real absence often bunches on bad days, so treat the recommended buffer as a lower bound.
Using it well
- Results are a model: replace the defaults with your own volume, handle time and absence data.
- Run it for the busiest interval of the day, not the daily average; the peak is where the buffer earns its keep.
- Set the underlying staffing with the Erlang C Calculator and plan the wider shrinkage budget with the Shrinkage Calculator.
Frequently asked questions
Why does average absence not work as a plan?
Absence varies day to day and interval to interval. Scheduling exactly enough to cover the average means roughly half of intervals have more absence than you planned for, and each of those misses the service level target.
How many extra agents do I need?
It depends on team size. Small teams feel each absence more, so a 16 seat schedule may need 1 extra agent while a 120 seat schedule needs 4 to get 90 percent of intervals on target. The calculator works it out from your volumes.
Does absence cluster?
Usually yes: sickness, weather and local events hit several agents on the same day. This model assumes absence is independent between agents, so treat the buffer it gives as a lower bound and add more if your absence comes in waves.
How is this different from shrinkage?
Shrinkage is the planned average you build into the roster: breaks, training, meetings and expected absence. The absence buffer is the extra cover for the randomness around that average, so a bad day does not sink the interval.
Related reading: read the full guide on why average absence hides service level risk.
More tools
See all toolsService Level Recovery Calculator
Behind on service level mid-month? Get the volume-weighted SL you need for the rest of the period, and see instantly if the target is already unreachable.
Open calculatorErlang C Staffing Calculator
Turn call volume, AHT and service level targets into required agents, occupancy, ASA and shrinkage-adjusted headcount.
Open calculatorErlang A Calculator
Staffing with abandonment built in: when callers give up and hang up, Erlang A sizes the team more honestly than Erlang C.
Open calculator