
Bandwidth Planning Per Agent for Outbound Calling: A Precise Capacity Model
Buying bandwidth for a call center requires knowing exactly how many concurrent RTP streams will flow at peak, not just the number of logged-in agents. Here is the math.
Why Agent Count Is Not the Right Input
The common mistake in outbound call center bandwidth planning is sizing bandwidth to the number of seats. A 100-seat floor with all agents logged in does not generate 100 simultaneous calls. It generates a number of concurrent calls that depends on the dialing mode, dial ratio, answer rate, and average handle time. Buying bandwidth for 100 simultaneous calls on a 100-seat floor that peaks at 60 concurrent calls wastes money. Buying for 80 on a floor that regularly hits 110 causes audio degradation for everyone.
The correct input is concurrent channels at peak. Calculate that first, then multiply by per-channel bandwidth.
Calculating Peak Concurrent Channels
For a predictive dialer floor, the model is:
`` Concurrent_Channels = Agents × Dial_Ratio × (Average_Handling_Time / Average_Call_Duration) ``
Example:
- 50 agents
- Dial ratio: 3.0 (3 outbound dials per agent)
- Average handle time (AHT) for connected calls: 4 minutes
- Average total call duration including unanswered dials: 35 seconds
Concurrent channels at peak: 50 × 3.0 = 150 outbound call attempts simultaneously. Of those 150, the connect rate determines how many are actually in conversation — if 20% connect, approximately 30 calls are in progress at any time while the other 120 are ringing or just answered.
However, bandwidth must be provisioned for the dial attempts, not just connected calls — every ringing SIP INVITE that gets a 183 Session Progress with early media (the carrier sending ringback RTP) is consuming a media channel and bandwidth on your end. Budget for the full dial ratio:
Peak concurrent channels = Agents × Dial Ratio
For 50 agents at a 3:1 ratio: 150 channels. At G.711, each channel is 87 kbps. Total peak bandwidth: 150 × 87 = 13,050 kbps ≈ 13.1 Mbps uplink.
G.711 vs G.729 Bandwidth Impact
| Codec | Payload | Header Overhead | Total per Channel | 150 Channels |
|---|---|---|---|---|
| G.711 (u-law/a-law) | 64 kbps | ~23 kbps | 87 kbps | 13.1 Mbps |
| G.729 | 8 kbps | ~24 kbps | 32 kbps | 4.8 Mbps |
| G.722 (wideband) | 64 kbps | ~23 kbps | 87 kbps | 13.1 Mbps |
G.729 cuts bandwidth to approximately 36% of G.711 but introduces codec processing overhead and transcoding risk on PSTN paths — as detailed in the codec selection guide. For most outbound floors, G.711 at 13.1 Mbps is the correct baseline.
Adding Headroom
Never provision exactly at the calculated peak. Audio quality degrades before bandwidth hits 100% utilization because router queues begin filling, increasing jitter. Add 20% headroom above the calculated peak:
13.1 Mbps × 1.20 = 15.7 Mbps minimum committed uplink for a 50-agent predictive floor at 3:1.
Additionally, budget for:
- SIP signaling: approximately 5–10 kbps per active channel (OPTIONS keepalives, re-INVITEs, BYE). For 150 channels: ~1.5 Mbps.
- Agent workstation traffic (CRM, browser, screen recording): 1–5 Mbps per agent for a 50-agent floor conservatively = 50 Mbps.
- Management/monitoring traffic: 2–5 Mbps.
Voice traffic and workstation traffic should be on separate VLANs with dedicated QoS policies — see the QoS configuration guide. Size the WAN link for the total, but ensure voice bandwidth is guaranteed regardless of workstation traffic spikes.
Total recommended WAN capacity for 50 agents: ~80 Mbps, with a committed 16 Mbps reserved for voice via QoS policy.
Circuit Type Selection by Floor Size
| Floor Size | Peak Concurrent Channels (3:1) | Required Voice Bandwidth | Recommended Circuit |
|---|---|---|---|
| 10 agents | 30 | 2.6 Mbps | 10 Mbps symmetric fiber |
| 25 agents | 75 | 6.5 Mbps | 25 Mbps symmetric fiber |
| 50 agents | 150 | 13.1 Mbps | 50 Mbps symmetric fiber |
| 100 agents | 300 | 26.1 Mbps | 100 Mbps dedicated Ethernet |
| 250 agents | 750 | 65.3 Mbps | 200 Mbps dedicated Ethernet |
| 500 agents | 1,500 | 130.5 Mbps | 500 Mbps dedicated Ethernet + bonded |
These are voice-only bandwidth figures. Add workstation and management traffic on top. For floors above 100 agents, consider two diverse ISP circuits in active/standby configuration — a 30-minute WAN outage during a campaign is a material revenue event.
Measuring Actual Peak Before Circuit Upgrade
If you are unsure of your actual peak concurrent channels, measure before signing a new circuit. Most SBCs expose real-time concurrent channel counts via SNMP or a management API. Capture peak counts every 5 minutes for two full business days on your highest-volume campaign. Use the 95th percentile of that dataset, not the absolute peak (which may be a one-off event).
On FreeSWITCH, retrieve current channel count: ``bash fs_cli -x "show channels count" ``
On Asterisk: ``bash asterisk -rx "core show channels count" ``
Log these values with a cron job every 5 minutes to a CSV and graph them with any time-series tool. This data also validates whether your current circuit is already undersized — if peak concurrent channels are within 85% of your current bandwidth ceiling (factoring in QoS reserved bandwidth), you should upgrade before the next campaign launch.
Takeaways
Bandwidth planning for outbound calling starts with peak concurrent channels, not agent count. Multiply agents by dial ratio to get peak simultaneous SIP legs. Multiply by 87 kbps for G.711, add 20% headroom, then add workstation and management traffic separately. Size the WAN circuit for the total, but reserve voice bandwidth with QoS policy. Measure actual peak concurrency before any circuit upgrade decision. The network requirements guide covers the ISP and circuit type selection criteria.
Flat-Rate Pricing Removes the Per-Call Bandwidth Anxiety
At $99/seat/month (US/CA) on UnlimCall, your telecom cost is fixed regardless of how many minutes each agent talks. The only bandwidth you provision is the physical circuit from your site to the internet. See the network edge architecture for PoP locations and the custom SIP integration guide for trunk provisioning.