CallMeter Docs

SIP Response Codes

Comprehensive reference of SIP response codes from RFC 3261, organized by class with descriptions, common causes, and their meaning for VoIP testing in CallMeter.

SIP response codes follow the same structure as HTTP status codes but are defined specifically for VoIP signaling. They are grouped into six classes by RFC 3261 and its extensions. Understanding these codes is essential for diagnosing call setup failures, registration problems, and unexpected call termination during test runs.

When a CallMeter test run produces failures, the SIP response code is the first piece of evidence to examine. Every endpoint in a test run records the final SIP response code for its registration and call attempts, visible in the endpoint detail view and the SIP message trace.

1xx Provisional Responses

Provisional responses indicate the request was received and is being processed. These are not final responses and do not terminate a transaction. In CallMeter test runs, provisional responses are visible in the SIP message trace and contribute to call timing metrics like post-dial delay (PDD).

CodeNameDescriptionCommon Cause in Testing
100TryingThe next-hop server received the request and is processing it. Does not indicate the callee has been contacted.Normal. Every INVITE should produce a 100 Trying from the first proxy. Absence may indicate a routing issue.
180RingingThe callee's device is alerting the user. Marks the start of the "ringing" phase.Normal. PDD is measured as the interval between the INVITE and the first 180. High PDD may indicate slow proxy chains.
181Call Is Being ForwardedThe call is being redirected by the server, typically via a call forwarding rule.Seen when the registrar applies forwarding rules. May increase call setup time.
182QueuedThe callee is temporarily unavailable and the call has been queued for delivery.Rare in testing. May appear when testing call queue or ACD systems.
183Session ProgressCarries early media or call progress information. Often includes SDP for early media (ringback tones, IVR prompts).Common when testing systems that provide in-band ringback or IVR menus. Check the SDP body for codec negotiation details.

Provisional Responses and Timing Metrics

CallMeter uses provisional responses to calculate call timing metrics. The PDD metric measures the time from the INVITE to the first 180 Ringing or 183 Session Progress response. If your SIP infrastructure sends 183 before 180, PDD will reflect the 183 arrival time.

2xx Success Responses

Success responses indicate the request was processed and accepted. For INVITE transactions, a 200 OK establishes the dialog and the call begins.

CodeNameDescriptionCommon Cause in Testing
200OKThe request succeeded. For INVITE: call is established. For REGISTER: registration accepted. For BYE: call terminated cleanly.Normal expected outcome. If your test shows a low percentage of 200 OK responses, investigate the dominant failure code.
202AcceptedThe request has been accepted for processing but is not yet complete. Used with REFER and SUBSCRIBE methods.Seen when testing call transfer (REFER) or event subscription scenarios.

3xx Redirection Responses

Redirection responses indicate the callee has moved and the request should be retried at a different location. The Contact header in the response contains the new address.

CodeNameDescriptionCommon Cause in Testing
300Multiple ChoicesSeveral contact addresses are available for the callee. The caller should select one.Rare. May appear when testing multi-device setups where the registrar returns multiple contacts.
301Moved PermanentlyThe callee has permanently moved to the address in the Contact header. All future requests should use the new address.Seen when testing number porting or permanent forwarding rules. Update registrar configuration if persistent.
302Moved TemporarilyThe callee is temporarily reachable at the address in the Contact header.Common when testing call forwarding on no-answer or busy. The SIP client should follow the redirect automatically.
305Use ProxyThe request must be routed through the specified proxy.Rare in typical testing. Indicates a routing policy enforcement point.
380Alternative ServiceThe call cannot succeed at this address, but an alternative service is available (e.g., voicemail).Seen when testing voicemail fallback or alternative service routing.

4xx Client Error Responses

Client error responses indicate the request cannot be fulfilled due to an error on the client side. These are the most common failure codes encountered during SIP testing and cover authentication failures, invalid addresses, and resource conflicts.

CodeNameDescriptionCommon Cause in Testing
400Bad RequestThe SIP message is malformed or cannot be parsed. May indicate a missing required header or invalid syntax.Check SIP message trace for malformed headers. May occur if custom SIP headers are incorrectly formatted.
401UnauthorizedThe request requires authentication. The server includes a WWW-Authenticate header with the challenge parameters.Most common registration failure. Verify SIP account credentials in CallMeter. Check that the username, password, and auth realm match the registrar configuration.
403ForbiddenThe server understood the request but refuses to fulfill it. Unlike 401, sending credentials will not help.The SIP account may be disabled, the source IP may not be on the allow list, or the account may have exceeded rate limits. Check registrar access policies.
404Not FoundThe callee address does not exist on the server. The domain is valid but the user part is unknown.Verify the SIP URI being dialed. In cross-group testing, ensure the callee's SIP accounts are registered on the target registrar.
405Method Not AllowedThe SIP method is not supported by the server. For example, sending OPTIONS to a server that does not implement it.Check that your test configuration uses SIP methods supported by the target registrar. Review the Allow header in the response for supported methods.
406Not AcceptableThe resource identified by the request can only generate responses with content characteristics not acceptable per the Accept header in the request.Rare. May occur with specific content negotiation failures.
407Proxy Authentication RequiredSimilar to 401, but the authentication is required by a proxy rather than the registrar. The Proxy-Authenticate header contains the challenge.Verify proxy credentials if your SIP path includes intermediate proxies. CallMeter handles the challenge-response automatically if credentials are configured.
408Request TimeoutThe server could not produce a response within a suitable time. The client may retry.Network connectivity issues between the worker and the SIP server. Check firewall rules, verify the registrar is operational, and consider increasing the buildup time to reduce burst registration load.
415Unsupported Media TypeThe message body or content type is not supported by the server.May occur if the SDP content type is not accepted. Check SIP trace for the Content-Type header.
420Bad ExtensionThe server does not support the SIP extension specified in a Require header.The SIP server does not support a protocol extension. Check the Require and Supported headers in the SIP trace.
421Extension RequiredThe server requires a specific extension that was not listed in the request's Supported header.The SIP server mandates an extension. Check error response details.
422Session Interval Too SmallThe Session-Expires value is below the server's minimum.When testing with session timers, increase the session expiry value to meet the server's minimum. The Min-SE header in the response specifies the required minimum.
423Interval Too BriefThe registration expiry interval in the Contact header is too short for the registrar.Increase the registration expiry value in the test configuration.
480Temporarily UnavailableThe callee's endpoint is valid but not currently reachable. The callee may be offline, busy, or not registered.In bidirectional tests, ensure callee endpoints register before callers begin dialing. Check that the callee group's buildup timing allows sufficient registration time.
481Call/Transaction Does Not ExistA BYE or CANCEL was received for a call that does not exist on the server. The dialog or transaction reference is invalid.May occur after server restarts or failovers. Can also indicate a race condition between call termination and subsequent requests.
483Too Many HopsThe request has traversed too many proxies (Max-Forwards reached zero).Indicates a routing loop in the SIP infrastructure. Not a CallMeter configuration issue.
486Busy HereThe callee is currently busy and cannot accept the call at this device.Expected when testing against endpoints that are already in a call. In CallMeter, this contributes to the REJECTED call result category.
487Request TerminatedThe request was cancelled by a CANCEL request before a final response was sent.Normal when calls are cancelled during setup. Seen when CallMeter endpoints end calls during the ringing phase, or when test duration expires during call establishment.
488Not Acceptable HereThe SDP offer contains no acceptable media parameters. Codec negotiation failed.The callee does not support any of the codecs offered. Review the test codec configuration and ensure at least one codec is supported by the target system. See Supported Codecs.
489Bad EventThe event package specified in the Event header is not supported.Relevant when testing SUBSCRIBE/NOTIFY event packages.
491Request PendingA re-INVITE was received while a previous INVITE transaction is still pending.Concurrent request collision. Usually transient and resolved automatically by the SIP stack.
493UndecipherableThe request body is encrypted and the server cannot decrypt it.Relevant when testing S/MIME encrypted SIP bodies.

Authentication Challenge Flow

SIP authentication is challenge-based. A 401 or 407 response is expected on the first request. The client then re-sends the request with credentials. A persistent 401 after the re-send indicates invalid credentials. CallMeter handles this exchange automatically, so a 401 in the final status means the credentials were rejected after the authentication attempt.

5xx Server Error Responses

Server error responses indicate the server failed to process a valid request. These point to issues with the SIP infrastructure being tested rather than the test configuration.

CodeNameDescriptionCommon Cause in Testing
500Server Internal ErrorAn unhandled error occurred on the server.A bug or resource exhaustion in the SIP registrar or proxy. Check server logs on the target infrastructure.
501Not ImplementedThe SIP method or feature is not implemented by the server.The SIP server does not support the method being tested. This is a capability limitation of the target system.
502Bad GatewayThe server received an invalid response from a downstream server it contacted to fulfill the request.A proxy in the SIP path received a malformed response from the next hop. Check intermediate proxy configurations.
503Service UnavailableThe server is temporarily unable to process the request due to overload or maintenance. A Retry-After header may be present.The SIP server is overloaded. This is a significant finding in stress tests. Reduce concurrent endpoints, increase buildup time, or investigate server capacity.
504Server Time-outThe server timed out waiting for a response from the next-hop server.An upstream SIP server in the routing chain is not responding. Check connectivity between SIP proxies.
513Message Too LargeThe SIP message exceeds the server's maximum accepted size.May occur with very large SDP bodies (many codecs or media lines). Simplify the media configuration.

503 in Stress Testing

A 503 Service Unavailable response during a stress test is a valuable data point. It indicates the SIP infrastructure has reached its capacity threshold at the current load level. Record the endpoint count and call rate at which 503 responses begin appearing to establish the system's capacity limit.

6xx Global Error Responses

Global error responses indicate the request cannot succeed at any server. The callee cannot or will not accept the call anywhere.

CodeNameDescriptionCommon Cause in Testing
600Busy EverywhereThe callee is busy on all registered devices and will not accept the call.The callee has no available device to answer. In CallMeter, this contributes to the REJECTED call result category.
603DeclineThe callee has explicitly declined the call. Unlike 486 (Busy), this indicates an active rejection rather than a resource limitation.The callee's system or policy rejected the call. May indicate call screening rules or DND settings on the target system.
604Does Not Exist AnywhereThe callee address does not exist anywhere in the network. Unlike 404, this is a definitive global statement.The dialed SIP URI is globally unknown. Verify the address format and domain.
606Not AcceptableThe callee is reachable but the session parameters (codecs, bandwidth) are not acceptable and the callee is unwilling to negotiate alternatives.A more absolute version of 488. The callee will not negotiate. Review your codec and media configuration against the target system's requirements.

CallMeter Call Result Mapping

CallMeter maps final SIP response codes to business outcome categories for calculating aggregate quality metrics like ASR (Answer Seizure Ratio) and NER (Network Effectiveness Ratio).

SIP Code RangeCall ResultCounted in ASRCounted in NERRationale
200SUCCESSYesYesCall answered and completed
408, 480TIMEOUTNoYesNetwork delivered the call but callee was unavailable. This is a network success.
486, 600, 603REJECTEDNoNoUser-initiated rejection, not a network or configuration issue
Other 4xxERRORNoNoClient-side or configuration error
5xxERRORNoNoServer-side infrastructure error
6xx (except 600, 603)ERRORNoNoGlobal failure

ASR vs NER

ASR measures the percentage of calls that were answered (200 OK). NER measures the percentage of calls that were successfully delivered by the network, regardless of whether the callee answered. A high NER but low ASR indicates the network is healthy but callees are not answering or are busy. A low NER indicates network or infrastructure problems. See VoIP Terminology for detailed definitions.

Using SIP Response Codes in CallMeter

Test Run Summary

The test run summary shows a breakdown of final SIP response codes across all endpoints. Use this to quickly identify the dominant failure mode. A healthy test run should show the vast majority of endpoints ending with a 200 OK.

Endpoint Detail

Each endpoint detail view shows the exact SIP response code for its registration and call attempts. Click on an endpoint to see its SIP message trace with the full request-response exchange.

Probes

Probes record the SIP response code for each execution. A probe that consistently returns non-200 responses will transition to DEGRADED or UNHEALTHY status depending on your threshold configuration. See Probe Health States.

On this page