Erlang C Model
Erlang C Call-Center Staffing Model · Also known as: M/M/c Queue, Multi-Server Queueing Model, Erlang Delay Formula, Erlang-C Bekleme Modeli
The Erlang C model is a steady-state queueing formula that determines the probability a customer must wait before being served in a system with c parallel servers, Poisson arrivals at rate lambda, and exponentially distributed service times. Originally developed by Danish engineer Agner Krarup Erlang in the early twentieth century for telephone exchange design, and formalized in the queueing theory literature by Cooper (1981), it remains the canonical staffing model for call centers and service operations worldwide.
Read the full method
Sign in with a free account to read this section.
Method map
The neighbourhood of related methods — select a node to explore.
When to use it
Apply the Erlang C model when arrivals follow a Poisson process, service times are exponentially distributed, there is a single shared waiting queue feeding c identical servers, and the system operates near steady state over a planning interval. It is well-suited to telephone call centers, help desks, and patient triage units. Do not use it when service times are highly non-exponential, when servers are not homogeneous, or when abandonment and retrials are significant; in those cases consider Erlang A, G/G/c approximations, or discrete-event simulation.
Strengths & limitations
- Provides a closed-form staffing formula that requires only arrival rate and average handle time as inputs.
- Directly links server count to measurable service-level objectives, enabling cost-efficient workforce planning.
- Computationally trivial even for large c, making it practical for real-time intraday scheduling adjustments.
- Extensively validated against empirical call-center data and widely accepted as an industry standard.
- Assumes Poisson arrivals and exponential service times, which may not hold for specialized or highly variable service processes.
- Does not model customer abandonment (hang-ups), which causes it to overestimate required staffing in high-abandonment environments.
- Requires stationarity: it cannot directly handle time-varying arrival rates without decomposing the day into intervals.
- Assumes infinite waiting room and a single homogeneous server pool, limiting applicability to blended or skill-based routing systems.
Frequently asked
What is the difference between Erlang B and Erlang C?
Erlang B models loss systems where blocked customers are immediately rejected and do not wait, making it appropriate for circuit-switched networks with no queue. Erlang C models delay systems where customers who find all servers busy join a queue and wait. Call centers almost universally use Erlang C because callers typically hold rather than abandoning immediately on encountering a busy signal.
How do I handle non-stationary arrival rates with the Erlang C model?
The standard approach is to partition the operating day into short intervals, typically 15 or 30 minutes, during each of which arrival rates are treated as approximately constant. The Erlang C formula is then applied independently to each interval. This stationary independent period (SIP) approximation is accurate when staffing levels change slowly relative to the interval length and when arrival-rate variation is smooth.
When should I prefer simulation over the Erlang C formula?
Prefer discrete-event simulation when service times are strongly non-exponential, when customer abandonment is significant, when routing is skill-based across heterogeneous agent groups, or when transient behavior at shift changes matters. The Erlang C formula gives a rapid first estimate and remains valuable for initial sizing, but simulation captures the complex interdependencies that closed-form models cannot represent.
Sources
- Cooper, R. B. (1981). Introduction to Queueing Theory (2nd ed.). North-Holland. ISBN: 978-0-444-00379-7
How to cite this page
ScholarGate. (2026, June 2). Erlang C Call-Center Staffing Model. ScholarGate. https://scholargate.app/en/operations-research/erlang-c-model
Which method?
Set this method beside its closest kin and read them side by side — the library lays the books on the table; the choice is yours.
- Little's LawOperations Research↔ compare
- M/M/1 QueueOperations Research↔ compare
- M/M/c QueueOperations Research↔ compare