SIP troubleshooting: find the fault from what you see
Most SIP problems show up in one of eight ways, and most trace back to three causes: login details that do not match, a router getting in the way (NAT), or a number in the wrong format. Start from the symptom, read the SIP log, change one thing at a time.
What is going wrong?
In depth: how to disable SIP ALG and every SIP response code, with fixes. More entries follow: registration failures, jitter and DTMF.
Updated 10 November 2026.
A method that finds the fault
Work up from the bottom. Each layer needs the one below it.
Bad audio is never fixed by a codec change if the phone keeps losing its registration. Find the lowest layer that fails, and fix that first.
- 5QualityDoes it sound right?
- 4AudioDo both sides hear each other?
- 3CallsWhat code comes back?
- 2RegistrationIs the login accepted?
- 1NetworkCan you reach the server at all?
Reading the SIP log
Every failed call leaves a three-digit reason. Find it before changing settings.
The first digit says whose problem it is. 4xx means something about your request; 5xx means a server along the way; 6xx means the far end said no. Each code, with causes and fixes: SIP response codes.
- Asterisk or FreePBX
- asterisk -rvvv, then pjsip set logger on
- Any Linux server
- sngrep for a live ladder of every call
- Capture for support
- tcpdump -i any -w call.pcap udp
- Desk phone or app
- turn on SIP logging in its settings, repeat the call
Registration fails
Four patterns, each with its own fix.
401 that repeats
One 401 is normal: it is the provider asking for your password. The same 401 again means the reply was wrong. Recopy the username, password and domain.
403 Forbidden
The provider knows you and still says no. The login may be disabled, your address not on an allow list, or the account paused.
No reply, or 408
Nothing gets through. Check the server name, the port and the transport, and that nothing blocks traffic out to the SIP port.
Registers, then goes quiet
The router forgets the connection between refreshes. Turn on keepalives, shorten the registration interval and check SIP ALG.
Calls will not connect
Registered, but outgoing calls fail? The code tells you which way to look.
- 403 / 407Refused or asked for a login
- Use the same credentials on the outbound trunk as on registration; check the destination is allowed and the balance covers it.
- 404 / 484Number not found or incomplete
- Send the number in international format and check your dial plan is not adding or stripping digits.
- 480 / 486Unavailable or busy
- The far side, not you. Try the number from another phone.
- 488No common codec
- Offer G.711 (PCMA and PCMU) on the trunk and drop video codecs.
- 503Service unavailable
- Often brief. Retry in a minute; if one destination keeps failing, send support an example.
One-way or no audio
The call connects because signalling got through. The voice took another road.
SIP messages and the audio (RTP) travel separately, on different ports. A router can let the first through and lose the second.
- Turn off SIP ALG on the router: how to disable SIP ALG.
- Tell the PBX its public address and which networks are local, so it writes the right audio address.
- Let the PBX's audio port range through the firewall.
- Still silent on only some calls? Note the numbers and times; that points at a route, not your network.
Calls that drop
When the call ends tells you why it ended.
- 32 s
About 32 seconds
The confirmation of the answer (ACK) never arrived. SIP gives up after 64 times its half-second timer. Nearly always NAT.
- 15 min
A fixed interval
A session timer refresh (RFC 4028) did not get through, or the router timed out the idle signalling path.
- ?
At random or after a silence
The router dropped an idle connection, or the network is losing packets during the call.
- $0
When credit runs out
On a prepaid account the call ends with the credit set aside for it. A low-balance notice prevents surprises.
Choppy, robotic or delayed audio
Three network faults, three different sounds.
Measure while a call is running: a speed test at a quiet moment says little. Wired desk phones beat Wi-Fi, and a router that puts voice first (QoS) helps when the upload is busy.
Packet loss
Sounds: Choppy, words missing
Common target: Under 1%
Jitter
Sounds: Robotic, warbling
Common target: 30 ms or less
Delay
Sounds: Talking over each other
Common target: 150 ms one way
Delay target from ITU-T G.114. The loss and jitter figures are common planning targets, not a standard.
Keypad tones not working
Menus ignore your key presses when the two sides send them differently.
RFC 4733 events
Key presses travel as separate events next to the audio. The safe default; often still labelled RFC 2833.
In-band
Tones inside the audio itself. Breaks when a compressed codec such as G.729 distorts them.
SIP INFO
Key presses as SIP messages. Works only when both sides expect it.
Number format and caller ID
Send every number as plus, country code, number.
That format is E.164 (more on what E.164 format is). A leading 0, a 00 prefix or a missing country code is the usual reason for a 404 or 484. Caller ID follows the same rule, and it must be a number you are allowed to show.
What to send support
Five details turn a week of emails into one reply.
When
Date and time of a failed call, with your time zone.
Which number
The number dialled, exactly as your system sent it.
The Call-ID
From the SIP log. It finds the call in the provider's records in seconds.
The trace
The SIP log or a .pcap file of that call, not a screenshot.
What you heard
Silence, a tone, a message, or ringing that never ends.
SIP troubleshooting questions
What is a SIP code?
How do I fix VoIP issues?
What does SIP stand for?
Why does my SIP call disconnect after 15 minutes?
What does SIP 504 mean?
Why can I call out but not receive calls?
Most faults start at setup. Check yours against ours.
The four trunk settings and the dial rule, in the menus of 3CX, FreePBX, Asterisk and Yeastar: SIP trunk configuration.