Skip to main content
TurnellaBeta
Complete guide

Call centre capacity planning — the complete WFM guide

Capacity planning is the discipline of ensuring the right number of agents are available, at the right time, across the right channels, to hit your service level target. This guide walks through the full seven-step cycle, from raw contact data to an intraday monitoring process.

The seven steps

01

Collect and clean historical contact data

Capacity planning starts with data. You need at minimum 8–12 weeks of interval-level data: contacts received per 15- or 30-minute interval, AHT, and channel. The longer your history and the more granular the interval, the better your forecast will be. Clean out outliers (major incidents, bank holidays, system outages) before using data to build a forecast.

02

Forecast demand by interval and channel

A forecast breaks your expected volume into intervals, typically 15 or 30 minutes. Good forecasts apply day-of-week and intraday patterns multiplicatively: Monday midday is not simply the average of all intervals. Add planned volume drivers (campaigns, product changes, seasonal events) on top of the baseline. Use MAPE or weighted MAPE to measure forecast accuracy and iterate.

03

Calculate agent requirements: the right model for each channel

This is where most operations make the critical error: applying Erlang C to every channel. Voice queues need Erlang C. Live chat needs a concurrency model. Email, back-office, and case processing need a backlog flow model. Using the wrong model will overstaff or understaff your operation. The channel mix in your operation determines which calculators you need.

04

Apply shrinkage to convert seated to scheduled headcount

The Erlang C result tells you how many agents need to be actively handling calls: your seated requirement. Your scheduled headcount must be higher to account for all the time agents are not available: breaks, meals, meetings, training, coaching, administrative tasks, sickness, and lateness. Shrinkage is the total of these as a percentage. Scheduled = seated ÷ (1 − shrinkage).

05

Design shift patterns and schedule agents

With a scheduled headcount requirement by interval, you can design shifts. Shifts must cover the intervals that need coverage, respect working-time rules, and be acceptable to agents. Shift design is a constrained optimisation: you want to match supply to demand as closely as possible without creating unsustainable patterns. Most operations use a combination of fixed core shifts and flexible cover shifts.

06

Model cost and build the budget

Once you have a schedule, you can calculate labour cost: agents × shift length × hourly rate × employer on-costs. Compare this to your headcount budget. If cost exceeds budget, test whether AHT improvements or FCR gains can reduce the requirement before cutting headcount. Cost per contact is the most useful efficiency metric: it combines staffing cost with throughput in a single number.

07

Monitor intraday and manage deviation

A capacity plan is a model of the future. Reality will deviate. Intraday management is the discipline of detecting deviation early and responding: volume arriving higher than forecast, AHT longer than modelled, agent absence not captured in the plan. The faster you detect and respond, the smaller the impact on service level. Real-time adherence (RTA) monitoring feeds into this loop.

The right model for each channel

The biggest capacity planning error operations make is applying a single model to all channels. Each channel has a structurally different arrival and handling pattern that requires a different model.

📞

Voice / inbound calls

Erlang C

Calls queue and are served in order. Erlang C models an M/M/N queue: random arrivals, random service times, N agents. It correctly captures the non-linear relationship between occupancy and service level.

Open the Erlang C calculator
💬

Live chat

Concurrency (Little's Law)

Chat agents handle 2–4 concurrent sessions. Erlang C assumes one interaction per agent at a time, so it cannot model concurrency. Little's Law (L = λW) gives the expected active sessions. Agents needed = sessions ÷ concurrency cap.

Open the Live chat calculator
✉️

Email, tickets, cases

Backlog flow model

Email doesn't queue like a call; it accumulates. SLAs are measured in hours or days, not seconds. The backlog flow model computes agents needed to process the inflow and clear the existing backlog within the SLA window.

Open the Email / backlog calculator
🔀

Multi-channel operations

Tower model (all channels combined)

Most operations handle more than one channel. A tower model adds the headcount for each channel side by side. The multi-channel calculator does this: each channel still uses its own correct model, but you see the combined team size.

Open the Multi-channel calculator

The shrinkage bridge

Erlang C and other models calculate the seated requirement: agents actively handling contacts. Your scheduled headcount must be higher to cover all the time agents are not handling contacts.

The shrinkage bridge

Seated agents needed: 10

Add shrinkage: breaks 10% + meetings 5% + training 5% + sick 4% + other 6% = 30% total

Scheduled headcount = 10 ÷ (1 − 0.30) = 14.3 → 15 agents

Six common capacity planning mistakes

Using Erlang C for chat

Chat concurrency means Erlang C overstates agents needed by 40–60%. Use the concurrency model.

Ignoring shrinkage

Staffing to the seated requirement rather than the scheduled requirement leaves teams 20–35% understaffed from day one.

Planning to a single average

Volume varies by interval. Planning to the weekly average understaffs peak intervals and overstaffs quiet ones.

Chasing 100% occupancy

High occupancy means no idle time to absorb volume spikes. SL degrades catastrophically above 85–90%.

No intraday process

A plan without a monitoring and response process is just a number. Deviation is inevitable; early detection is the variable.

Not modelling attrition buffer

If attrition means you always have agents in ramp, effective capacity is lower than headcount suggests. Buffer this in.

Frequently asked questions

What is capacity planning in a contact centre?

Capacity planning in a contact centre is the process of ensuring you have the right number of agents, at the right time, across the right channels, to handle your expected contact volume while meeting your service level targets. It begins with demand forecasting, meaning predicting how much contact volume you will receive by interval, day, and week, then works forward through agent requirement calculation, shrinkage adjustment, shift scheduling, and intraday monitoring.

What is the difference between capacity planning and scheduling in a contact centre?

Capacity planning answers the question 'how many agents do we need, across what hours?'. It produces headcount requirements. Scheduling answers the question 'which specific shifts should agents be rostered on?'. It produces individual rosters. Scheduling takes capacity requirements as its input. You cannot schedule correctly if your capacity plan is wrong. The two are sequential, not interchangeable.

How do I calculate how many agents I need in a contact centre?

The calculation method depends on the channel. For voice: use Erlang C. Inputs are calls per interval, average handle time, service level target, and target window in seconds. For live chat: use a concurrency model (Little's Law). Agents needed = (contacts per interval × AHT in minutes) ÷ (concurrency cap per agent × available minutes). For email and back-office: use a backlog flow model. Agents needed = (daily inflow + backlog clearance rate) ÷ (productive hours per agent × 3600 ÷ AHT). Apply shrinkage to convert seated agents to scheduled headcount for all channels.

What is the right service level for a contact centre?

There is no universal right answer. Service level targets are set based on customer expectations, contractual obligations, and competitive positioning. The most common targets for inbound voice are 80% of calls answered within 20 seconds (80/20) or 80% within 60 seconds (80/60). Email targets are typically 80–95% responded within 4, 8, or 24 hours. Back-office case SLAs are typically measured in working days (5, 10, or 15 business days). The target you choose directly determines how many agents you need, so choose it deliberately, not by default.

Run your capacity plan in Turnella

Import your data, generate an interval-level forecast, calculate requirements by channel, apply shrinkage, and build a schedule, all in one workspace. Free to start.

Related guides and calculators