| |
How Accurate is Erlang C?
Erlang C has been used for many years to
calculate agent staffing needs in call centers. It is the 'industry standard'
mathematical model and generally provides quite accurate results.
When using Erlang C though, it is important to
understand that it has several underlying assumptions and also that the results
do depend on the accuracy of the input parameters (the old 'garbage in - garbage
out' rule).
Overall, Erlang C provides slightly conservative
results in practice (that is, it will slightly overestimate the actual agents
required to meet a particular service level).
Assumptions
There are several underlying assumptions in the
Erlang model which are not entirely borne out in most call center operations -
Assumption |
Notes |
Callers
wait on indefinitely in the ACD queue - they don't hang up
|
In
real life some callers hang up, either immediately or after varying
on-hold times. Some of them will retry later.
If the ADA (average delay before answer) is
less than 1 to 2 minutes, this does not significantly affect the results. |
Calls
arrive randomly in a Poisson distribution |
This
means that there are no large spikes and troughs in the incoming call
rate.
For a medium to high call rate, this
assumption is generally satisfied over a 15 or 30 minute interval.
For low call volumes however (e.g. a small
help desk) there will be quite significant call fluctuations from interval
to interval. |
The
call center operates in a 'steady state' |
The
main aspect to this assumption is that there is no backlog of calls from
previous intervals. In practice if there is an overload of calls at one
time of the day, then some of the callers will actually be answered in the
next interval.
For centers with reasonable service levels
and medium or high call volumes this is not significant.
For 'event driven' centers such as I.T.
support, in the case of major problems or outages then there will be
occasional spikes and resulting
backlogs. Erlang C does not cater for this. |
That
there are enough trunks |
'Trunks'
are the incoming phone lines. Most calculators assume that no more than 1%
of callers will encounter a busy tone (i.e. there are enough trunks
available for incoming calls plus the callers on hold). |
Input Parameters
The input parameters to Erlang C calculations
directly impact on the accuracy of the results.
Parameter
|
Notes
|
Calls
per hour
|
This
is always answered calls, not offered calls. Ensure that the calls per
hour is taken from a representative day of the week (and period in the
month).
|
Talk
Time
|
The total call
duration is talk time plus wrapup time. (The total call duration is
often called 'Average Handling Time' or AHT).
Talk Time can
generally be taken directly from ACD reports. |
Wrapup
Time
|
Wrapup
Time is the second element of total call duration.
It
is much more difficult to measure accurately -
-
If you have 'call
forcing' in effect on your ACD, then the wrapup time is simply the
delay between an agent terminating one call and being offered the next
call
-
If you are not using call forcing,
wrapup time is much more difficult to establish. generally the numbers
reported by an ACD are not accurate as they usually include
such things as agent 'not ready', breaks etc.
Sometimes it is only possible to estimate
the wrapup time. |
Service
Level
|
The required
Service Level, either expressed as -
-
An Average Delay Before Answer (often
also called 'Average Speed to Answer' or ASA) e.g. 20 seconds
average delay; or
-
Percent of calls answered within a
threshold (e.g. 80% answered within 40 seconds). This is often also
called a 'Service Objective' or SO).
|
|