How the calculation works

Traffic. Busy-hour traffic in Erlangs = calls in the busy hour × average call length in minutes ÷ 60.

Channels. Erlang B gives the chance a call is blocked when N channels carry A Erlangs. The calculator uses the standard recursion, which stays accurate at any size:

  • B(0) = 1
  • B(k) = A × B(k − 1) ÷ (k + A × B(k − 1)), for k = 1 to N

The answer is the smallest N whose blocking is at or below your grade of service. The engine is checked against a published Erlang B table (Montana State University): for example, 10 channels carry 4.461 Erlangs at 1% blocking and 5.084 at 2%.

Bandwidth per call, each direction, on Ethernet:

  • Packet = voice payload + 40 bytes of IP, UDP and RTP headers + 18 bytes of Ethernet header
  • Bandwidth = packet × 8 × packets per second, which works out to codec rate + 464 ÷ packet interval in ms, in kbps
  • G.711 (64 kbps) at 20 ms: 87.2 kbps. G.729 (8 kbps) at 20 ms: 31.2 kbps. Both match Cisco’s per-call bandwidth table.
  • Opus is variable; the calculator assumes 32 kbps, inside the 28 to 40 kbps range RFC 7587 gives for full-band speech at 20 ms: 55.2 kbps on the wire.

Trunk bandwidth = channels × bandwidth per call, the most the trunk uses with every channel busy, plus any overhead you add for encryption, a VPN or VLAN tags.

Assumptions: calls arrive at random and independently; a blocked caller doesn’t retry straight away (retries add traffic, so add margin if your callers redial); the busy hour is your measured peak, not a daily average. Providers sell channels as call paths, sessions or concurrent calls; they mean the same thing here.

Worked example

200 calls in the busiest hour, averaging 3 minutes, at 1% blocking:

  • Traffic: 200 × 3 ÷ 60 = 10 Erlangs
  • 17 channels block 1.29% of calls, above the target; 18 channels block 0.71%
  • G.711 at 20 ms: 18 × 87.2 kbps = 1,569.6 kbps, about 1.57 Mbps each way
  • The same 18 channels on G.729 need 18 × 31.2 = 561.6 kbps each way

At 5% blocking the same traffic needs 15 channels. Trunk channels come in whatever increments the provider sells, so round up to the next one it offers.