Phone Number Validation

Phone number validation is the process of verifying that a phone number is correctly formatted, assigned to an active carrier, and — at the deepest level — reachable. Validation prevents wasted outreach, reduces downstream data cleaning costs, and improves contact rates by filtering out numbers that can never be successfully reached before any send attempt.

Three Levels of Phone Validation

Phone validation is not a single check. There are three distinct validation levels, each providing progressively more signal about whether a number is worth contacting:

Level What it checks Data source Catches
Format validation Digit count, valid area code (NPA), valid exchange (NXX) Local regex / number library Typos, impossible numbers
Network validation Number assigned in NPAC to an active carrier NPAC / LRN lookup Unassigned numbers, deactivated numbers
Reachability validation Number currently active and able to receive calls or SMS Carrier-level query Disconnected numbers, suspended accounts

Format validation is free and fast but catches only the most obvious errors. A number that passes format validation can still be unassigned, disconnected, or belong to a landline that cannot receive SMS. Network validation — querying NPAC — is the minimum standard for any serious data quality or compliance use case.

Format Validation vs. Network Validation

Format validation confirms that a number looks like a valid US phone number: ten digits, a non-invalid area code (no 000, no 555 outside specific exchanges), and a valid exchange. This can be performed entirely offline with a library like libphonenumber. It costs nothing and completes in microseconds.

What format validation cannot tell you: whether the number has ever been assigned to a subscriber, whether it was deactivated last month, or whether the person who gave you the number simply transposed two digits to pass your input validation. A number like +12125550199 is format-valid but is a famous fictional number — never assigned to a real subscriber.

Network validation queries NPAC — the authoritative US number portability database — to confirm the number exists in the live carrier network and is assigned to an active carrier. This catches disconnected numbers, recently reassigned numbers, and number ranges that have never been put into service. For any list larger than a few hundred numbers, network validation pays for itself by eliminating wasted send attempts before they occur.

Why Validation at the Point of Capture Saves Downstream Cost

Invalid numbers degrade every system they touch. In a CRM, they inflate contact counts and distort engagement metrics. In SMS campaigns, they generate undelivered message fees and suppress reported conversion rates. In contact centers, they waste agent time and increase cost-per-contact. In fraud prevention systems, they add noise to risk models.

The cost to validate a number at capture is $0.0009. The cost to clean a list of 100,000 numbers that passed through without validation — reconciling bounces, removing duplicates, investigating failed sends, correcting CRM records — runs into hours of analyst time and degraded data assets that take months to recover.

Validation at the form or API ingestion layer catches invalid numbers before they propagate. It also creates a better user experience: real-time format and network validation lets you flag an invalid number while the user is still on the page, when they can correct it, rather than discovering the problem weeks later in a campaign report.

How Carrier Lookup + Line Type + CNAM Combine for Full Validation

Network validation confirms a number exists. But three additional data points turn a binary valid/invalid check into a complete picture of what the number is and how it should be treated:

  • Carrier lookup — Identifies the network operator and OCN. Confirms the number is assigned (required for network validation) and enables correct routing decisions for outbound traffic.
  • Line type — Classifies the number as wireless, landline, VoIP, prepaid, or toll-free. Determines SMS deliverability, TCPA consent requirements, and fraud risk tier.
  • CNAM — Returns the subscriber name registered to the number. Confirms the number belongs to a real person (not a test number or placeholder) and enriches CRM records with contact name data.

Together, these three signals answer the question that format validation alone cannot: not just “does this number exist,” but “who does it belong to, what type of device is it, and is it appropriate to contact via this channel?”

VRI: Full Phone Validation in One API Call

VRI returns carrier lookup, line type, LRN, LRN activation date, and CNAM in a single combined call. There is no separate validation endpoint — every lookup is a complete validation by default.

curl -X POST https://api-service.verirouteintel.io/api/v1/lrn \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"phone_number": "12015559876", "include_enhanced_lrn": true, "include_cnam": true}'

# Response
{
  "phone_number": "12015559876",
  "lrn": "12015550000",
  "lrn_activated_at": "2020-11-03T00:00:00Z",
  "cnam": {
    "name": "JANE SMITH",
    "source": "npac"
  },
  "enhanced_lrn": {
    "carrier": "T-Mobile USA",
    "carrier_type": "WIRELESS",
    "ocn": "6529",
    "lata": "224",
    "rate_center": "NEWARK",
    "state": "NJ"
  }
}

A successful response with carrier_type: WIRELESS and a valid lrn confirms the number is assigned, currently active on a wireless carrier, and contactable via SMS. The lrn_activated_at date shows when the number was last ported — useful for flagging recently reassigned numbers that may have a new subscriber.

Validation Response Interpretation

Response signal What it means Recommended action
Valid LRN returned Number is assigned in NPAC Safe to contact; check line type for channel
carrier_type: LANDLINE Cannot receive SMS reliably Remove from SMS lists; use voice or email
carrier_type: VOIP Elevated fraud risk; SMS varies Apply additional verification; flag for review
No LRN / no carrier returned Number not found in NPAC Mark invalid; suppress from outreach
lrn_activated_at < 14 days ago Recently ported or reassigned Verify consent is current; flag for fraud review

Validate any US phone number in real time. Carrier, line type, CNAM, and LRN activation date in one call. $0.0009/lookup, no minimum.

Start Free — 10 free lookups included

Try It

Get phone intelligence data including Phone Validation with VeriRoute Intel.

Get Free API Key

Related Terms