|Troubleshooting

Caller ID Not Showing or Showing the Wrong Number

Caller ID on VoIP travels through multiple systems that can each modify it. Here is how to trace outbound, inbound, and CNAM issues to the source.

When Your Phones Sound Bad: Part 6 of 12

Caller ID problems come in several flavors. Your outbound caller ID shows the wrong number to the people you call. Your outbound calls show "Unknown" or "Private" when they shouldn't. Inbound calls display just a number with no name. Inbound calls show "Anonymous" even though the caller didn't intend to block their ID. Each of these has different causes and different fixes.

Caller ID on VoIP is more complicated than most people realize because the identity information travels through multiple systems, each of which can modify or override it. Your phone sets one value, your PBX may change it, your SIP trunk provider may override it again, and the receiving carrier may look it up in a different database entirely. Understanding this chain is the key to figuring out where the problem is.

How caller ID works on VoIP calls

When your phone system places an outbound call through a SIP trunk, the caller ID information is carried in the SIP message headers. There are multiple headers that can contain identity information, and different systems look at different headers:

The From header contains a display name and a SIP address. This is what your PBX typically sets when it originates the call.

The P-Asserted-Identity header is added by a trusted intermediary (usually the SIP trunk provider or an SBC) to assert the verified identity of the caller. Many carriers use this header for caller ID display rather than the From header.

The Remote-Party-ID header is an older mechanism that serves a similar purpose to P-Asserted-Identity. Some systems still use it.

The challenge is that different carriers and different endpoints look at different headers. Your PBX might set the correct number in the From header, but your trunk provider might ignore From and only use P-Asserted-Identity. If the trunk provider is overriding P-Asserted-Identity with the main trunk number rather than the specific extension's direct line, your outbound caller ID will show the wrong number.

Outbound caller ID shows the wrong number

This is the most common caller ID complaint. You have multiple phone numbers (a main line and several direct lines), and when employees call out, the caller ID shows the main number instead of their direct line, or shows a number that doesn't belong to anyone.

The issue is almost always in how your PBX or trunk provider is handling the outbound caller ID. Here's where to check:

PBX outbound caller ID settings. Most PBX platforms let you configure the outbound caller ID at the trunk level, the extension level, or both. If the trunk level caller ID is set to the main number and the extension level isn't overriding it, every outbound call shows the main number. Check the PBX configuration for both the trunk and the individual extensions.

Trunk provider caller ID policy. If you are not sure which carrier owns the number showing up on outbound calls, a carrier lookup can identify the owning carrier and line type. Some SIP trunk providers override whatever caller ID your PBX sends and replace it with the number registered on your trunk account. This is partly a fraud prevention measure (preventing you from spoofing numbers you don't own) and partly how their system works. Contact your trunk provider and ask how they handle outbound caller ID. Many providers allow you to add multiple numbers to your account's "authorized caller ID" list, so you can send any of your assigned numbers as the outbound ID.

Number format. If your PBX sends the caller ID in a format the trunk provider doesn't recognize (for example, sending a 7 digit local number when the provider expects a full 10 or 11 digit number with country code), the provider may default to the trunk's main number. Check that the number format in your PBX matches what the provider expects.

Outbound calls show "Unknown" or "Private"

If your calls display as "Unknown" or "Private" to the people you're calling, one of two things is happening. Either your PBX is intentionally sending a privacy indicator in the SIP headers (which tells the receiving carrier to hide the caller ID), or your PBX isn't sending caller ID at all and the receiving carrier is interpreting the absence as intentional privacy.

Check the SIP headers your PBX is sending. If there's a Privacy header set to "id" or "full," that's explicitly requesting caller ID suppression. If the From header contains "anonymous" as the user portion, that also signals privacy.

If privacy isn't intentionally enabled, check that the From header and P-Asserted-Identity header both contain a valid phone number. An empty or malformed caller ID field might be interpreted by the receiving carrier as a blocked number.

Also check with your trunk provider. Some providers strip caller ID from calls if the number you're trying to send isn't in their list of numbers authorized for your account. This is a STIR/SHAKEN consideration (the authentication framework designed to combat caller ID spoofing). If you're sending a caller ID number that doesn't belong to your trunk, the provider might remove it rather than allow an unverified number through.

Inbound calls show number but no name

You receive a call, and the phone displays the calling number but no name, even though you know the caller's name should be available. This is a CNAM (Caller Name) lookup issue.

How the caller's name reaches your phone depends on the call path. For calls that originate on SIP-native networks, the display name is carried in the SIP headers (the From header and P-Asserted-Identity header) and can travel end-to-end from the originating system to your phone. In these cases, a CNAM database lookup isn't needed because the name is already in the signaling.

The situation is different for calls that originate from the traditional PSTN or TDM network. The legacy SS7/ISUP signaling used on those networks carries the calling number but not the calling name. When these calls are handed off to a SIP carrier, the name field is empty. To fill it in, your carrier (or your PBX, if configured to do so) performs a CNAM database lookup using the calling number. If the number isn't in the CNAM database, if the lookup fails, or if nobody in the chain is performing the lookup, you see only the number.

In practice, many calls pass through a mix of SIP and TDM segments, and the name can be lost at any PSTN gateway along the way. This is why CNAM lookups remain important even in a predominantly SIP world.

This is different from internal calls, where the name is carried directly in the SIP From header and displayed by the phone without any database lookup.

If you're consistently not seeing caller names on inbound external calls, check whether your VoIP provider performs CNAM lookups. Some providers include this in their service, others charge extra for it, and some don't offer it at all. If your PBX is capable of doing CNAM lookups directly (some platforms support this through third party CNAM lookup services), that's another option.

Keep in mind that CNAM databases aren't always accurate or complete. The caller's carrier is responsible for submitting the name to the database, and not all carriers keep their records current. Cell phone numbers are particularly inconsistent in CNAM databases. There's only so much you can do about inaccurate or missing entries in external databases.

Inbound calls show "Anonymous"

When an inbound call displays "Anonymous," "Blocked," or "Restricted," it usually means the calling party intentionally blocked their caller ID. Their phone or carrier is sending a privacy indicator in the SIP headers, and your carrier is honoring it by not displaying the number.

In some cases, the privacy isn't intentional. The caller's PBX might be misconfigured, sending privacy headers by default when nobody asked for it. Or a trunk provider in the chain might be stripping caller ID as a policy for certain call types.

You generally can't override a legitimate privacy request. The caller has the right to block their number, and the telephone system is designed to honor that. If you're receiving an unusually high number of anonymous calls that you believe should have caller ID, the callers' PBX may be misconfigured and they may not be aware their number is being blocked. Letting them know can help them fix it on their end.

STIR/SHAKEN and attestation

STIR/SHAKEN is a framework implemented by US carriers to combat caller ID spoofing. When a call is placed, the originating carrier attaches a digital certificate that attests to the legitimacy of the caller ID. There are three attestation levels:

Full attestation (A) means the carrier has verified that the caller is authorized to use the displayed number. This is the highest level of trust.

Partial attestation (B) means the carrier has verified the caller's identity but can't confirm they're authorized to use the specific number.

Gateway attestation (C) means the call entered the carrier's network from an international gateway or other source where the origin can't be fully verified.

Calls with full attestation are less likely to be flagged as spam or blocked by the receiving carrier. Calls with lower attestation or no attestation may be marked as "Spam Likely" or "Scam Likely" on the recipient's phone, or may even be blocked entirely.

If your outbound calls are being marked as spam or aren't being answered, check with your SIP trunk provider about your STIR/SHAKEN attestation level. Ensuring that your caller ID numbers are properly registered with your provider and that your provider is signing calls with full attestation can improve your call completion rate and prevent your legitimate business calls from being flagged. Keep your expectations realistic, though. Attestation verifies identity, not intent, which is a big part of why caller ID still lies in 2026 even with the framework fully deployed.

The systematic approach

For outbound caller ID issues: check PBX extension settings, then PBX trunk settings, then the trunk provider's caller ID policy and authorized number list. For inbound caller ID issues: check whether your provider does CNAM lookups and whether the issue is specific to certain callers (their problem) or all callers (your provider's configuration). For calls being flagged as spam: check STIR/SHAKEN attestation with your trunk provider.


Next up: Audio Delay and Talking Over Each Other, for when the conversation feels like it's happening on a satellite phone from the 1990s.

Frequently Asked Questions

Why does my VoIP caller ID show the wrong number?+

Outbound caller ID showing the wrong number is usually caused by the PBX trunk-level caller ID overriding extension-level settings, or the SIP trunk provider replacing your caller ID with the main trunk number as a fraud prevention measure. A carrier lookup can help identify the owning carrier for the number showing up on outbound calls. Check both PBX extension and trunk settings, and ask your provider about their authorized caller ID list.

Why do my outbound VoIP calls show as Unknown or Spam Likely?+

Calls showing as Unknown means your PBX is either sending a privacy indicator in the SIP headers or not sending a valid caller ID number at all. Calls flagged as Spam Likely may have a low STIR/SHAKEN attestation level. Check that your caller ID numbers are properly registered with your trunk provider and that they are signing calls with full attestation.

Why do inbound calls show the number but no caller name?+

Caller name (CNAM) display depends on a database lookup. When calls originate from the traditional phone network, the name is not carried in the signaling and must be looked up separately. If your VoIP provider does not perform CNAM lookups, or the caller's number is not in the CNAM database, you will see only the number without a name.

voip-troubleshootingcaller-idcnamstir-shakensip-trunking

Share

Opens your messaging app. We do not collect or store any phone numbers.
Opens your email client. We do not collect or store any email addresses through sharing.

Want to know when we publish new articles? Sign up for updates