Blog post

How Carrier Lookups Work (LERG, NPAC & Line Type)

A carrier lookup is a query that reads telecommunications numbering records and returns key attributes about a phone number, including the carrier that serves it and, most importantly, its line type (mobile, landline, or VoIP). For U.S. phone numbers, this information is derived primarily from industry numbering databases such as the LERG (Local Exchange Routing Guide) and NPAC (Number Portability Administration Center), rather than from a live HLR query. Verification services use this information to decide whether a number is eligible to receive authentication codes. A verification-strict service accepts or rejects the number on that single field. SLYNUMBER numbers are real U.S. mobile lines registered as mobile in carrier databases. A lookup returns mobile and they pass, even though delivery to the app travels over the internet. SLYNUMBER serves 200,000+ users across 150+ countries, from $4.99 per month billed $14.99 every three months. This guide walks the lookup pipeline end to end, names the fields a service reads, and explains why the verdict can be wrong.

Watch: How Carrier Lookups Work

For U.S. numbers a carrier lookup is not a live HLR query. It is an administrative lookup that reads the LERG for the numbering block and NPAC for porting history, then returns a line type that a bank or app accepts or rejects you on.

Key Takeaways:

What a lookup is: A carrier lookup is primarily an administrative lookup that consults numbering databases to determine the current carrier, the line type, and whether the number has been ported.

What it reads: named fields such as line type, carrier name, and mobile country and network codes.

It is fallible: lookup data lags ports and reassignments, and Twilio ships a Line Type Override endpoint because the classification can be incomplete or inaccurate.

Quick next step: get a number that returns mobile on these lookups at slynumber.com/app/register.

1. What is a carrier lookup?

There are two types of carrier lookups, and they rely on different sources of information. Most U.S. carrier lookups are administrative lookups that consult industry numbering databases. These databases, including the Local Exchange Routing Guide (LERG) and the Number Portability Administration Center (NPAC), record which carrier a block of numbers was originally assigned to, the type of service associated with that block (such as mobile or wireline), and where a ported number is currently hosted. Commercial carrier lookup providers combine this information with their own carrier data to determine whether a number is classified as mobile, landline, or VoIP.

In some international networks, a live HLR lookup may also be performed to determine subscriber status or network reachability. However, for U.S. phone numbers, line-type verification is based primarily on numbering and portability records rather than a real-time HLR query.

Neither type of lookup inspects voice calls or message content. They simply read telecommunications records that are maintained as numbers are assigned, ported between carriers, or updated over time. The result is a compact set of fields—including the current carrier and line type—that downstream services use to determine whether a number is eligible to receive verification codes. Once you understand which fields are being evaluated, it becomes much easier to understand why some phone numbers are accepted while others are rejected.

2. The lookup pipeline, step by step

When a bank, online platform, or verification provider checks a U.S. phone number, the process usually begins with a request to a commercial carrier lookup API. The service submits the telephone number and asks for basic information such as the current carrier and line type.

1. The Number Is Standardized
The lookup provider first validates and formats the number according to the North American Numbering Plan. This confirms that the number contains a valid country code, area code, and local exchange.

2. The Numbering Block Is Identified
The provider uses the number's NPA-NXX information—the area code and first three digits of the local number—to locate the corresponding record in the Local Exchange Routing Guide, or LERG.

The LERG identifies the carrier associated with the numbering block and includes routing and service information, such as the Operating Company Number and the type of line originally assigned to that block.

3. Portability Records Are Checked
Because consumers can transfer their numbers between providers, the carrier listed for the original numbering block may no longer be the carrier currently serving the number.

The lookup provider therefore checks Number Portability Administration Center records to determine whether the number has been ported. When a port is found, the current carrier is returned instead of the original block holder.

4. The Lookup API Returns the Results
The lookup provider returns a compact response containing fields such as line type, current carrier, original carrier, ported status, country, routing information, and error or validation status.

The most important field for verification purposes is usually the line type.

5. The Requesting Service Applies Its Rules
The bank, app, or online platform reads the lookup response and applies its own acceptance policy. A service that requires a mobile number may proceed only when the line type is returned as mobile.

If the number is classified as VoIP, landline, toll-free, or another unsupported type, the service may reject it before attempting to send a verification code.

6. The Verification Message Is Sent
If the number passes the service's eligibility rules, the verification provider attempts to deliver the SMS or one-time password.

This is a separate stage from the lookup itself. The lookup determines how the number is classified; message routing determines whether the verification code can actually be delivered.

What this means for you: the verdict on your number is assembled from numbering records, not from how you personally place calls. For why services care about that verdict, see why banks block VoIP numbers.

3. Why the verdict can be wrong

Carrier lookup results are only as current as the underlying numbering and portability records. After a number is ported or reassigned, databases may take time to update. During that period, a lookup may temporarily show the previous carrier or an outdated line type.

Different lookup providers may also combine data sources differently, which can occasionally produce different results for the same number.

What this means for you: a wrong verdict usually clears once the databases catch up. For why mobile and VoIP are separate classifications in the first place, see real mobile vs VoIP numbers.

4. Lookup response fields explained

Here is the Twilio Lookup v2 line_type_intelligence response broken out field by field. Each row shows an example value and what a downstream service does with it.

FieldWhat it holdsExample valueWhat a service reads it for
typeThe line-type classificationmobile or nonFixedVoipThe accept or reject decision; only mobile passes strict checks
carrier_nameName of the operator holding the numberTwilio - SMS/MMS-SVRContext and fraud scoring; null for non-carrier types
mobile_country_codeMCC of the serving network240Identifying the country of the operator
mobile_network_codeMNC of the serving network38Identifying the specific operator within that country
error_codeLookup error status, null on successnullDetecting a failed or incomplete lookup

Quick recap: of the five fields, type decides acceptance. The carrier and network codes come back null for numbers not tied to a carrier, which is a signal in itself. A SLYNUMBER returns type mobile with populated carrier and network codes, so strict services accept it. Other vendors expose the same idea under different names; Vonage's Number Insight, for instance, returns a network_type of mobile, landline, or virtual.

5. Why SLYNUMBER returns mobile

The record the lookup reads says mobile
SLYNUMBER provisions real U.S. mobile numbers from the North American Numbering Plan (NANP) and registers them as mobile lines in carrier databases. So when a service runs any of the lookups described above, the type field comes back mobile with real carrier and network codes attached. That's the field the service branches on, and the number passes. Delivery of calls and messages to the app runs over the internet. Messages use Transport Layer Security (TLS), the encryption that protects online banking, and voice uses Secure Real-Time Transport Protocol (SRTP). A lookup reads the classification and ignores the transport, so both facts coexist. The result is a real mobile number, delivered over internet transport, that passes where VoIP-classified numbers fail.

This holds across vendors. Multiple lookup providers return the same style of line-type verdict from the same kinds of records. The mobile classification doesn't depend on one vendor's quirks.

Pricing
Plans start at $4.99 per month billed as $14.99 every three months, with an annual plan at $49.99 per year. Register at slynumber.com/app/register. If your goal is passing a specific fintech signup, the same mechanism decides services like Cash App. If a code still won't arrive, work the checklist in OTP not arriving troubleshooting.

Vonage's Number Insight API returns a network_type of mobile, landline, virtual, pager, or unknown, along with ported status. Competing lookups expose the same line-type concept under different field names (accessed July 18, 2026).

6. Frequently asked questions

What is a carrier lookup and how does it know my number type?

A carrier lookup is a query against telecom databases that returns attributes of a number, most importantly its line type. It reads administrative records and, for a live HLR lookup, signals the operator's Home Location Register (HLR) to check subscriber status. Nothing listens to your calls. The lookup reads records and returns a value such as mobile, landline, or VoIP.

How do services find out if my number is mobile or VoIP?

They call a lookup API and read one field. Twilio Lookup v2, for example, returns a line_type_intelligence object with the carrier name and network codes. Its type field is mobile, landline, fixedVoip, nonFixedVoip, or one of several others. The service decides whether to accept or reject on that value before it ever sends a code.

Can a carrier lookup be wrong?

Yes. Lookup data can lag reality after a port or reassignment. Twilio even publishes a Line Type Override endpoint because the classification can be incomplete or inaccurate and sometimes needs manual correction. A genuine mobile number can briefly come back as VoIP. A service reading that stale record may reject it until the data catches up.

Does an HLR lookup reveal my location or personal identity?

No. An HLR lookup returns the serving network's country and network codes plus a subscriber status such as active or absent. Your name and street address are never part of the response. The subscriber identity it historically carried is now scrambled or withheld by most networks. Think of it as a routing and status check rather than a people-search.

Why does a lookup on my SLYNUMBER return mobile?

SLYNUMBER numbers are real U.S. mobile lines registered as mobile in carrier databases. A lookup reads that record and returns mobile. Delivery to the app travels over the internet using TLS and SRTP, but a lookup never checks transport. It reads the classification, and verification-strict services accept the number.