Spam I Am

SIP 603+ and 608: what a "Network Blocked" response means

A SIP 603+ response, with the reason phrase "Network Blocked," means the called party's carrier blocked your call because its analytics judged the call likely unwanted or illegal. The phone never rang. Since March 25, 2026, the FCC requires US providers to use 603+ as the only code for analytics-based blocking on IP networks. That replaces the older options, including SIP 608. The response should include contact details for the blocking provider, so you can request a review.

If you're reading call logs from before that date, a 608 "Rejected" usually meant the same thing.

The codes at a glance

CodeMeaningWho rejected the call
603+ ("Network Blocked")Blocked by carrier analytics. Includes who blocked it and how to contact them.The network (an analytics system)
608 ("Rejected")Rejected by an intermediary, typically an analytics engine. Superseded by 603+ for US analytics-based blocking.The network
607 ("Unwanted")The person, or blocking they set up themselves, marked the call unwanted.The subscriber
603 ("Decline")A general decline. No longer allowed for analytics-based blocking.Varies

What changed in 2026

The FCC's Eighth Report and Order (FCC 25-15), adopted February 27, 2025, made SIP 603+ the exclusive code for notifying callers when calls on IP networks are blocked based on reasonable analytics. The requirement took effect March 25, 2026.

Before that, providers could use 603, 607 or 608 for this notification. Providers now have to stop using those three codes for analytics-based blocking. SIP 607 can still be used when calls are blocked at the subscriber's own direction. On non-IP (TDM) networks, the equivalent signal is ISUP cause code 21 with location "user."

How to read a 603+ response

603+ uses the reason phrase "Network Blocked" (a plain 603 usually reads "Decline"). It also carries a standardized Reason header saying the block was analytics-based, with contact details for the blocking provider. Bandwidth's documentation gives this example:

Reason:SIP;cause=603;text="v=analytics1;url=https://example.com;id=12345";location=LN

Where these appear depends on your provider. Check your call logs, call detail records, or the SIP response details in your platform's dashboard or API. Your voice provider's documentation will show where it surfaces the code and Reason header.

What 603+ doesn't tell you

It says nothing about spam labels. 603+ is only for calls that were blocked. A call that rings with "Spam Risk," "Scam Likely" or "Potential Spam" on the screen generates no 603+ at all. Your logs show a normal unanswered call, while the person sees a warning.

It doesn't cover device-level blocking. Spam-blocking apps and phone features on the recipient's device can silence or reject calls without sending any SIP response back to you.

So a clean log doesn't mean a clean number. To know whether your calls are labeled, you have to see what the recipient's screen shows. Check what phones on AT&T, Verizon and T-Mobile show for your number.

What to do when you see 603+ (or 608)

  1. Group responses by the number you called from. Blocking follows a calling number's reputation, so find which of your numbers are affected.
  2. Use the redress contact in the response. Follow the url (or other contact), and include the call id, the date and time, and the numbers involved.
  3. Work out which carrier blocked it. The blocking provider is typically the called party's carrier. Then use that carrier's process: AT&T · Verizon · T-Mobile
  4. Fix the cause. Blocking is a stronger signal than labeling. Look at volume bursts, short calls, unexpected calls, and complaints. Why numbers get flagged
  5. Check your other numbers for labels. If one number is being blocked, related numbers may already be labeled.

For developers building voice and sales agents

SIP 608 in detail (RFC 8688)

SIP 608 "Rejected" was defined in RFC 8688 (December 2019) so a caller could tell that an intermediary rejected the call, not the person called. Its main use case was an analytics engine. It differs from 607, which signals that a human marked the call unwanted. That distinction matters because downstream systems weigh human rejections differently.

To support redress, a 608 could include a **Call-Info header with purpose=jwscard**, pointing to a signed (JWS) jCard. The jCard had to include at least one contact method (URL, email, phone or address) for appealing the block. An "issued at" timestamp protected against replay attacks.

In the US, 603+ has replaced 608 for analytics-based blocking notification, but you'll still see 608 in older logs and documentation.

FAQ

What does "SIP 603 Network Blocked" mean?

It's the SIP 603+ response. A carrier blocked your call based on its analytics, and the phone never rang. The response should include a URL or other contact, plus a call ID, so you can request a review.

Is SIP 608 still used?

In the US, the FCC requires providers to use 603+, not 608, to notify callers of analytics-based blocking, effective March 25, 2026. 608 still appears in older call logs and in the RFC 8688 standard.

What's the difference between 607 and 608?

607 ("Unwanted") means the person, or blocking they set up, rejected the call. 608 ("Rejected") means an intermediary such as an analytics engine rejected it. For analytics-based blocking in the US, 603+ now replaces both.

If I don't see 603+ in my logs, does that mean my calls are fine?

No. 603+ only covers blocked calls. A call can ring with a spam label, or be silenced by an app on the recipient's phone, without any 603+ response. Checking what the recipient's screen shows is the only way to see a label.

Should my dialer retry after a 603+?

Not immediately. Treat it as a failure for that number and destination, pause calls from the affected number, and request a review using the contact in the response.

Sources

See what your number shows

Call our real AT&T, Verizon and T-Mobile phones and see the label, caller name and a screenshot. The first check of any number is free.

Check your number free