System Capacity Design

Erlang C Calculator

Size agents and repeaters for trunked radio and dispatch systems where calls queue, and check the service level and waiting times they deliver.

Free ● Live 3 standards

Free to use, no sign-up needed.

The three calculation modes and the main results.

Walkthrough

See it working

The three calculation modes and the main results.
N minus 1 redundancy, the sensitivity table and charts.
Busy hour scenario comparison with the worst case marked.

The three calculation modes and the main results.

Overview

What the Erlang C Calculator does

Trunked radio systems, dispatch consoles and control rooms behave differently from blocking radio networks. When every channel is busy, a new call waits in a queue until a channel frees up rather than being cleared. The right capacity model for these systems is Erlang C, the M/M/c queue, rather than Erlang B. Sizing a queued system with a blocking model gives channel counts that look right on paper but deliver long waits in service.

Read the full overview

The noIM₃ Erlang C Calculator works in three modes. It finds the agents or channels needed to meet a service level target such as 80 per cent of calls answered within 20 seconds, the largest fleet a fixed agent count can support, or the service level a known agent count achieves. The agent count is then converted into a repeater count for the chosen radio technology, allowing for a growth margin and any control channel reserve.

Queue performance is reported as a set of figures rather than a single number: the probability a call must wait, the probability of immediate answer, the average speed of answer, the average wait for queued callers, the average queue length and the probability that a wait exceeds the target time. N minus 1 redundancy, a growth sensitivity table and a busy hour scenario comparison show how the design holds up when a repeater fails or traffic grows.

Capabilities 8

Three calculation modes

Agents Required finds the minimum agent count that meets a service level target. Max Users finds the largest fleet a fixed agent count can support. SL Analysis reports the service level and queue performance for a known agent count and traffic load.

Full queue performance profile

Each result shows the probability a call must wait, the probability of immediate answer, the average speed of answer across all calls, the average wait for callers who queue, the average queue length and the probability a wait exceeds the target time. The achieved service level is compared with the target and marked as a pass or fail.

Traffic from users and call rates

Offered traffic is worked out from the number of users, busy hour call attempts, average handling time and an activity factor. An estimator helps when you only know daily call counts or calls per shift, and a multi-group aggregator combines user groups with different call patterns using a call rate weighted handling time.

Repeater sizing by technology

The agent count is converted into a repeater count for analogue, P25 Phase I or II, DMR Tier II or III, TETRA, or a custom number of voice paths per repeater. Growth is applied to the traffic and the agents are solved again, then a control channel reserve is added before the repeater count is rounded up.

N minus 1 redundancy

The redundancy check removes one repeater from the design, recalculates the service level at the design traffic including growth, and compares it with your target. It shows whether a single repeater outage would take the service level below it.

Sensitivity and busy hour scenarios

A sensitivity table shows how the agents, repeaters or service level change as traffic grows. Named busy hour scenarios with their own users, call rates, targets and growth margins are compared side by side, and the worst case is marked as the one that drives procurement.

Charts, reference table and working

Charts plot wait probability, service level, average speed of answer and utilisation against agent count. An Erlang C reference table and a step by step calculation breakdown make each result easy to check.

Projects and export

Calculations run in your browser. Projects can be saved to your account, and results can be exported to CSV or copied to the clipboard for a design report.

Inputs and outputs

What goes in, what comes out

Inputs 11

  • Number of users
  • Busy hour call attempts per user
  • Average handling time per call
  • Activity factor
  • Daily call counts or calls per shift, for the busy hour estimator
  • User groups with their own call patterns, for mixed fleets
  • Service level target and target wait time
  • Agents available, for the Max Users and SL Analysis modes
  • Growth margin
  • Radio technology and control channel reserve
  • Service level thresholds for the N minus 1 check

Outputs 13

  • Offered traffic in Erlangs
  • Agents required, with and without the growth margin
  • Maximum users for a fixed agent count
  • Wait probability C(m, A) and probability of immediate answer
  • Average speed of answer and average wait for queued callers
  • Average queue length and probability a wait exceeds the target time
  • Achieved service level with a pass or fail
  • Agent utilisation, with a warning at very high load
  • Repeater count for the chosen technology
  • N minus 1 redundancy result
  • Sensitivity table and busy hour scenario comparison
  • Charts, Erlang C reference table and calculation breakdown
  • CSV export and results summary ready to copy

Standards & methodology

  • Erlang C (M/M/c) queueing model, with C(m, A) derived from the Erlang B blocking probability
  • Service level and average speed of answer from the exponential waiting time distribution
  • Offered traffic from busy hour call attempts times handling time

Use cases

When to use this tool

  1. 01Sizing trunked radio systems (P25, DMR Tier III, TETRA) where calls queue
  2. 02Dimensioning dispatch consoles and control room radio infrastructure
  3. 03Checking a service level target such as 80 per cent answered within 20 seconds
  4. 04Modelling mixed fleets with different call patterns
  5. 05Checking service level after the loss of one repeater
  6. 06Comparing morning, evening and emergency busy hour scenarios
  7. 07Checking a vendor's proposed channel and repeater count against an independent queue model
  8. 08Teaching how queue behaviour changes with load

FAQ

Frequently asked questions

Not here? Ask us

When should I use Erlang C rather than Erlang B?

Use Erlang C when calls that find every channel busy wait in a queue for a free channel. Trunked radio, dispatch consoles and control rooms usually work this way. Use Erlang B when blocked calls are cleared and the caller has to try again. Choosing the wrong model gives a design that looks right on paper but performs poorly in service.

What is service level and how should I set the target?

Service level is the percentage of calls answered within a target wait time, for example 80 per cent within 20 seconds. There is no single standard figure: the right target depends on the cost of a delayed call and any contractual or operational commitment.

What does C(m, A) mean?

C(m, A) is the Erlang C probability that an arriving call has to wait, given m agents and an offered traffic of A Erlangs. The probability of immediate answer is one minus C(m, A). The average speed of answer, the average queue length and the service level are all derived from it together with the handling time and agent count.

How do I estimate busy hour traffic if I do not know my call profile?

The busy hour estimator works from a system daily call count with a busy hour peaking factor, from calls per person per shift with a peaking factor, or from calls spread evenly across a shift. For mixed fleets, the multi-group aggregator takes separate user groups with their own call rates, handling times and activity factors, and combines them into one offered traffic figure.

Why does service level fall away so quickly as utilisation rises?

This is the defining behaviour of a queued system. At moderate utilisation the queue stays short, but as utilisation approaches its limit the queue grows very quickly and the service level can collapse over a small change in traffic. The sensitivity table makes this visible so you can size with margin.

What does the model assume?

Erlang C assumes random call arrivals, exponentially distributed handling times, an unlimited queue and callers who wait until answered. It needs the offered traffic to be less than the number of agents. Near full utilisation the waits rise steeply and change sharply with small changes in traffic, which the growth table shows. With a small user population, users already waiting are not calling, so Erlang C overstates the waits.

What does the N minus 1 check show?

It recalculates the service level after removing one repeater's voice paths from the design. The result is compared with your service level target, at the design traffic including growth, so you can see whether a single repeater outage would take it below the target.

Free, no sign-up

Free to use, no sign-up needed.