SUPPORT STAFFING PLANNER · RUNS IN YOUR BROWSER

How many agents does your queue need, and what is the cheapest schedule?

Paste contacts per half hour for a typical week. The planner works out the agents each interval needs to hit a service target such as 80% answered in 20 seconds (Erlang C, with shrinkage and an occupancy cap), then finds the cheapest set of shifts that covers every interval. It also shows what each service target costs and what a shorter handle time or fewer contacts would save.

For small support desks, answering services, clinic front desks and sales lines. Nothing is uploaded: the text box is analysed in this browser and never leaves your device.

1. Paste your volumes

Prefer a CLI?

Same logic, zero dependencies, one command — reads a file or stdin:

node cli.mjs plan demand.csv --sl 80 --answer 20 --shrinkage 30 --shifts 8,4 --wage 22 --json
cat demand.csv | node cli.mjs plan - --sl 90 --answer 30

Get cli.mjs and engine.mjs — Node 18+, nothing to install, no network call. More: How many support agents do I need? Erlang C staffing explained.

What's recognised

InputHandling

The schedule is exact for the numbers you type. Callers who give up, callbacks, skills routing, multi-channel concurrency (a chat agent handling several chats) and individual availability are not modelled; use a longer answer time or a lower occupancy cap as a rough allowance for chat concurrency.

Common questions

Does it upload my volumes?

No. The browser page works on the text you paste, in your own browser, and never sends it anywhere. The CLI reads a local file or stdin and makes no network call.

What is Erlang C?

The standard queueing formula for how many agents a phone or chat queue needs so that a target share of contacts is answered within a target time, given how many contacts arrive and how long each takes. It assumes random arrivals and that nobody hangs up while waiting, so real results are usually a little worse than the formula.

How are the shifts chosen?

The tool finds the cheapest combination of the shift lengths you allow that covers the scheduled requirement in every interval. It is an exact solution, checked in the tests against trying every combination on small cases.

What is shrinkage?

The share of paid time an agent is not available for the queue: breaks, meetings, training, leave and sickness. The tool divides the agents needed on the queue by one minus shrinkage to get the agents to schedule.

Who is it for?

Small support, helpdesk, answering-service, clinic front-desk and sales-line teams that staff by feel or a spreadsheet and want to see what a service target costs.