Extended Erlang B Calculator for VoIP Trunks

May 31, 2026

Extended Erlang B Calculator

Size SIP trunks, PBX channels, lab call generators, and voice gateways with blocked-call retries included, not just the first-attempt Erlang B result.

Real Voice Traffic Presets
Traffic and Retry Inputs
Switch between direct busy-hour Erlangs and call-count conversion.
Loads typical GoS, retry behavior, and service expectations.
Concurrent call paths in the trunk group.
Traffic before blocked-call reattempts are added.
Used for call-count conversion and BHCA equivalent.
In calls mode, call attempts are normalized to a busy hour.
The extended model feeds a share of blocked attempts back into offered load.
Finite retry rounds keep the model realistic for humans and auto-dialers.
Short delays increase busy-hour retry pressure.
Grade of service target; 1% means B = 0.01.
Applied before retries so future busy-hour demand is included.
Subtracted from available channels for regular traffic sizing.
Used for operational risk interpretation.
Applied to initial traffic before retry iteration.
Does not change Erlang math; it labels the network context.
Extended Blocking
0.00%
after retry feedback
Trunks Needed
0
for target GoS
Carried Traffic
0.00
Erlangs completed by channels
Retry Traffic Added
0.00
extra Erlangs from reattempts

Formula Breakdown

Base Erlang B on design loadB = 0.0000
Extended offered load iterationAext = A x retry series
Effective regular channels0 trunks after reserve
Initial and grown offered traffic0.00 Erlangs
Blocked traffic and retry traffic0.00 Erlangs
Busy-hour call equivalent0 attempts/hour
Trunk occupancy from carried traffic0%
Planning statusReady
💻Voice System Spec Grid
2%
Residential GoS
Often acceptable for casual home PBX traffic when callers can redial.
1%
Business SIP GoS
Common planning target for SOHO and small office inbound trunks.
0.5%
Support GoS
Used when lost calls are operationally painful or service levels are tight.
A
Offered traffic
One Erlang equals one continuously occupied channel during the hour.
B
Blocking probability
Erlang B assumes blocked calls clear unless the extended retry model adds them back.
BHCA
Busy-hour attempts
Call attempts per busy hour translate to Erlangs through average holding time.
N
Channels or trunks
Reserve emergency channels before sizing normal traffic load.
R
Retry fraction
Aggressive redial behavior can push a marginal trunk group into overload.
📊Reference Tables
Voice scenarioTypical GoS targetRetry assumptionPlanning note
Home PBX with family extensions1% to 3%Low to medium human redialSmall channel counts swing sharply with one extra trunk.
SOHO SIP trunk group0.5% to 1.5%Medium redial and voicemail fallbackInclude meetings, ring groups, and outbound overlap.
Helpdesk or clinic phones0.2% to 1%Medium retry, higher lost-call sensitivityUse measured busy-hour attempts, not daily averages.
Outbound IVR or callback burst1% to 5%High controlled reattemptsRetry pacing matters as much as total call volume.
Lab load generatorVariableHigh synthetic retryUse this to stress trunks before production changes.
Formula itemExpressionUse in calculatorPractical meaning
Traffic from callsA = calls x hold / 3600Converts busy-hour attempts into Erlangs180 calls/hour at 120 seconds is 6 Erlangs.
Erlang B recursionB(n) = A x B(n-1) / (n + A x B(n-1))Stable calculation for trunk blockingRecursive form avoids huge factorials.
Retry seriesAext = A x (1 + x + x^2 ...)Adds finite blocked-call reattemptsx is the retry share multiplied by current blocking.
Carried trafficAc = Aext x (1 - B)Shows occupied channel demandHigh carried traffic means high trunk occupancy.
Target sizingIncrease N until B <= targetFinds channels required for GoSExtended sizing can need more trunks than classic B.
Retry behaviorRetry percentRetry roundsWhen it fits
Low human redial10% to 25%1 to 2Casual calling, voicemail fallback, low urgency.
Normal office redial25% to 45%2 to 4Users call again when a fast busy or rejection appears.
High campaign retry50% to 80%3 to 6Outbound dialers, callbacks, or scripted reattempts.
Lab stress retry70% to 100%4 to 10Use to expose overload behavior in test trunks.
Common project sizeStarting dataUseful resultSecondary check
Two-line home SIP trunk0.4 to 0.9 ErlangsBlocking under family peakOne reserved emergency channel may dominate.
Eight-channel SOHO PBX2 to 5 ErlangsTarget GoS with redialsCheck occupancy before adding ring groups.
Small helpdesk5 to 12 ErlangsTrunks required at 0.5% to 1%Use queue data to estimate true attempts.
Lab SBC load test10 to 40 ErlangsBlocking curve under retry pressureCompare synthetic retry to carrier limits.
💡Planning Tips
Retry tip: Classic Erlang B treats blocked calls as cleared. Use the extended retry fields when users, auto-attendants, dialers, or monitoring systems immediately try again after a busy condition.
Traffic tip: Size from the busiest hour of actual attempts, not daily call totals. A trunk group can look oversized by average traffic and still block hard during a short inbound burst.

This planner estimates circuit-switched or SIP trunk blocking. Real deployments should also account for carrier limits, SBC call admission control, codec bandwidth, emergency routing, queue design, and measured abandoned calls.

When analyzing the scenario of dropped calls on a phone system, the cause of those dropped calls is typicaly not a “broken” phone line, but instead a lack of sufficient trunk to carry all of the calls. Many people will provision a phone system with a number of trunks in accordance with an average traffic that runs across the system. However, the average traffic does not take into account the high level of traffic that typically exist during the busy hour of the system.

The extended Erlang B formula account for this high level of traffic because it incorporates the retry calls that those callers that are initially blocked by the system make. The classic Erlang B formula assumes that every call that the system blocks is a call that is going to be placed and gone forever, an assumption that is typicaly incorrect about the behavior of many moddern phone systems and users. Many callers will attempt to make the same call to an individual within one or two minute of their initial attempted call.

Plan Phone Trunks for Busy Hour and Call Retries

Outbound calling dialers will also typicaly attempt to call a number many times until the outbound dialer system is success in placing the called call. These retries can be calculated in the extended Erlang B formula to determine how the increased offered traffic to the trunk group can increase the chance that other callers will be blocked due to busy channel. The extended Erlang B formula calculates these feedback loop until it determines a state of stability in the system.

The inputs for the calculator are those that a person must make when building the trunk group. For instance, it is necessary to input the traffic in terms of Erlang, or to calculate the number of Erlangs from raw calls and average hold times. In addition to Erlangs, it is also necessary to input the percentage of callers that will attempt to making retry calls to the blocked number, the number of rounds that these retry calls are made, the time delay between initial calls and retry calls, the growth allowance for future calls to the system, and the design buffer to account for future growth.

The results of the calculation will include the percentage of calls that the system will block, the additional traffic that the retry calls create, the number of channels that will be occupied by all calls (including retry calls), and whether or not the number of trunks that are currently provisioned for the system meet the grade of service that is declared for the system. The occupancy of the system is another key number in the results because a high percentage of occupancy mean that there is little room for errors in the system. The reference tables provide examples of the retry calls for different type of systems.

For instance, small home PBX systems may experience few retry calls, while helpdesk and outbound call applications may experience high retry call percentage. These different percentages will have impacts on the number of channels that is required to provide trunk service for the system. For instance, adding one channel can significantly reduce the percentage of blocked calls for systems with short retry times, but may not have the same impact on callers that have more longer delay times for retry calls.

There are a few complication with the network that are outside of the extended Erlang B formula. For instance, the codecs that are used for calls will impact the bandwidth of the system, but does not factor into the calculation of the number of channels that are required. Similarly, other types of call controls on the network can impact the calls that are placed in ways that do not factor into the calculation of the number of channels that are required.

Yet, the calculator and its results will provide an accurate baseline from which to evaluate these other impacts. The trunk group that is created for a system should of been sized according to the measured data of busy hour calls to the system, not daily call total. It is possible to have enough channels to handle the calls to a system each day, yet not enough to handle the busy hour during that day.

Rather than asking the question of how many trunks would theoretically be required for the system, the user should determine the number of trunks that will prevent the percentage of retry calls during the busy hour from increasing. Thus, the extended Erlang B formula both prevents the error of ignoring the retry calls that callers make, and ensures that the provisioned system accounts for the fact that callers will try to call again if they are initially blocked.

Extended Erlang B Calculator for VoIP Trunks

Related posts

Leave a Comment