Transcoding in VoIP is converting a call's audio from one codec to another, for example from G.729 to G.711, when the two sides of a connection do not share a codec. It lets calls connect, but each conversion adds delay, uses processing power and lowers voice quality, so in wholesale voice the goal is to transcode as little as possible.
When transcoding happens
- Your switch sends only G.729 and the next carrier accepts only G.711.
- A route passes through a TDM segment, where audio is always G.711, and back to a compressed codec. See TDM vs VoIP routes.
- A mobile network uses its own codecs on the radio side; the conversion there is normal and outside your control.
- A carrier forces a codec on its network to save bandwidth.
If two endpoints agree on a codec in the SIP offer and answer, audio flows unchanged (this is called pass-through). Transcoding is needed only when the lists have nothing in common, or when a device in the middle decides to change it.
What it costs
| Effect | Why |
|---|---|
| Lower voice quality | Compressed codecs lose detail; decoding and compressing again loses more. Two G.729 stages in a row are clearly worse than one. |
| More delay | Each conversion adds processing and buffering time, often several milliseconds per step |
| DTMF and fax problems | Tones can be distorted unless sent as RFC 2833 / 4733 events or T.38 |
| Hardware or licence cost | Transcoding uses DSP or CPU capacity on the carrier's session border controller |
| Another failure point | One more device that can drop audio or cause one-way audio |
These effects show up in lower MOS scores and sometimes in shorter calls, as people hang up on poor audio. See MOS, jitter and packet loss.
Transcoding as a paid service
Some carriers charge for transcoding or offer it only on some routes, because it uses capacity on their equipment. Others transcode silently. Ask your supplier whether your calls are transcoded and where, especially if you send G.729. A route that looks identical on price can sound different because of hidden conversions.
How to avoid it
- Offer more than one codec in your SIP setup, usually G.711 A-law, G.711 mu-law and G.729, in your order of preference. See G.711 vs G.729.
- Agree the codec list with each supplier when you set up the SIP interconnect.
- If bandwidth allows, prefer G.711 on carrier links. Compression is most useful at the edge (for example remote agents), not in the core.
- Check SIP traces from test calls to see which codec was actually chosen.
Troubleshooting codec issues
A call that connects with no audio, or with audio in one direction only, can come from a codec mismatch in the SDP negotiation, although NAT and firewall rules are more common causes. Compare the codec in the offer, the answer and the RTP packets. The one-way audio guide lists the checks. Bad audio quality across many calls on one route, with normal network stats, can point to extra transcoding in the supplier's chain; raise it with the supplier and test an alternative route.
Routes that match your codecs
List the codecs you send when you request VoIP termination, and VoIPMatcher sources a route that accepts them. Request a voice route.
Frequently asked questions
What is codec pass-through?
Pass-through means the audio travels end to end in the codec both sides agreed on in the SIP offer and answer, with no conversion. It gives the best quality and the least delay. It is possible only when the codec lists of the two ends share at least one codec and no device in the middle forces a change.
Where does transcoding happen?
Usually on a session border controller or media gateway in a carrier's network, using CPU or DSP capacity, or at the gateway where a SIP call enters a TDM segment. Mobile networks also convert to their own radio codecs, which is normal and outside your control. Ask suppliers where conversions happen on your calls.
How can I tell if my calls are transcoded?
On a test call, compare the codec in your SIP offer, the codec in the answer and the payload type in the RTP packets. If you send G.729 and the supplier answers with G.711, something converts it. Hidden transcoding further down the chain is harder to see; poor audio with good network statistics is a hint.
Is transcoding needed for WebRTC calls?
Often. WebRTC applications usually use Opus, while wholesale voice routes use G.711 or G.729, so a gateway converts between them when a browser or app call reaches the phone network. Doing that conversion once, at the edge of your platform, and sending G.711 to carriers keeps the quality loss to a single step.
Need a route?
Send the destination, route type and target rate. We reply with what we can deliver.