VoIP Bandwidth Calculator
Calculate the bandwidth a VoIP phone call needs from the codec, packet interval and header overhead — per call and across all concurrent calls.
How it works
packets/s = 1000 ÷ ptime(ms) · payload bytes = codec kbps × 1000 ÷ 8 × ptime ÷ 1000 · per-call kbps = (payload + header) × 8 × packets/s ÷ 1000
A codec’s advertised bitrate is only the audio payload — every packet also carries an IP, UDP and RTP header (40 bytes) plus a layer-2 frame header, and small packets sent many times a second make that overhead significant. Shorter packetization intervals send more packets per second, so header overhead grows and total bandwidth rises even though voice quality does not. That is why a 64 kbps G.711 call actually consumes roughly 87 kbps on Ethernet with 20 ms packets. Multiply by the number of concurrent calls, and remember a call is full-duplex, so double for both directions.
Worked example
G.711 at 64 kbps with 20 ms packets sends 50 packets/second. Each packet carries 160 bytes of audio plus 40 bytes of IP/UDP/RTP plus 18 bytes of Ethernet = 218 bytes. 218 × 8 × 50 = 87,200 bps ≈ 87.2 kbps per call, one way.
Sources: Cisco — Voice Codec Bandwidth
Frequently asked questions
Why is a 64 kbps codec using 87 kbps?
The 64 kbps is only the voice payload. Each packet also carries 40 bytes of IP/UDP/RTP headers and a layer-2 header, and at 50 packets/second that overhead adds more than 20 kbps.
Should I plan for one direction or both?
Both. A phone call is full-duplex — audio flows each way simultaneously — so the link must carry the per-call figure in each direction at once. Size upstream and downstream for the same total.
Does a longer packet interval save bandwidth?
Yes, fewer packets per second means less header overhead, so 30 ms packets use less bandwidth than 20 ms. The trade-off is slightly higher latency and more audio lost if a packet is dropped.
Related calculators
This calculator is for educational purposes. Double-check important results before acting on them.