Every sales and ops team eventually inherits a spreadsheet of business numbers with no source. It might be a trade show export, an old CRM, or a list someone built by hand three years ago. Some numbers ring a front desk. Some ring a fax machine. Some now belong to a different company. Some were never real. Before anyone dials or texts that list, you need to know which is which.

There are two separate questions here. The first is who owns this number: is it really the company you think it is? The second is what kind of line it is: mobile, landline, or VoIP. The second question decides whether a text can arrive at all. Most free lookup tools answer the first question badly and the second not at all. This guide compares the methods and shows where line-type validation fits before a send.

Why bother looking up a business number

A bad number costs you in three ways:

  • Wasted rep time. A rep who dials a disconnected or wrong number loses a minute or two. Across a 500-row list with even a modest bad-data rate, that adds up to hours.
  • Wasted sends. Texts aimed at landlines don't arrive, and each one is still an attempt you paid for or had to process.
  • Wrong-person risk. A reassigned number means your text reaches someone who never agreed to hear from you. Under the TCPA, that is the expensive mistake: statutory damages run roughly $500 to $1,500 per text.

Verifying identity protects your reps' time. Verifying line type protects your sends and your compliance posture.

Five ways to look up a business phone number

1. Search engines and business listings

Paste the number into a search engine, a maps listing or a review site. If a company's own website lists the number, that is strong evidence it is current. This is free and often decisive for established businesses. It falls apart for small operators and for direct lines that never appear publicly. It also tells you nothing about line type.

2. State business registries and company websites

Secretary of State filings confirm that a company exists and who its registered agent is. They rarely list a working phone number, though. Use registries to confirm the company, then confirm the number on the company's own contact page. This is slow but reliable for high-value accounts.

3. Reverse phone lookup sites

Consumer reverse-lookup sites return a name, sometimes an address, and often a paywall. Their data is aggregated from public and marketing sources, and it is frequently stale for business lines. They are fine for a one-off "who called us?" check. They don't belong in a list-cleaning workflow.

4. Caller ID name (CNAM) lookups

CNAM is the name that shows on caller ID. A CNAM lookup returns whatever name the carrier has on file, which is often the business name for landlines and often blank or generic for mobile and VoIP numbers. It's useful as a cross-check, but businesses don't always keep it updated.

5. Carrier and line-type validation APIs

These ask the network what the number is right now: whether it's valid, which carrier serves it, and whether it's mobile, landline or VoIP. They don't tell you the company name. They do tell you whether a text can land, and that is the question a messaging team actually needs answered. We go deeper on the carrier side in our carrier lookup guide.

How the methods compare

MethodConfirms company?Confirms line type?Scales to a list?Typical cost
Search engines / listingsOften, for public numbersNoNo, it's manualFree
State registriesCompany only, rarely the numberNoNoFree to low
Reverse lookup sitesSometimes, often staleRarelyPoorlyFree to subscription
CNAM lookupPartially (caller ID name)NoYes, via APIPer lookup
Line-type validation APINoYesYesPer lookup or per segment

The practical pattern is to use the free, manual methods to confirm identity on accounts that matter, and to use a validation API to confirm line type on everything you plan to text.

Line type is the check that matters before texting

Business lists have far more landlines than consumer lists. Front desks, main lines and office phones are usually wireline. A standard landline can't receive an SMS, so a text sent to one simply doesn't arrive. Some businesses have enabled texting on their landline through a third-party provider, but you can't tell that from a spreadsheet. We cover the details in Can you text a landline?.

Line type also tells you how to work the number:

  • Mobile: textable, and likely a person. Text only if they've consented or replied to you.
  • Landline: call it, don't text it. Route it to a rep's dial queue or a manual call.
  • VoIP: often textable and often a business line, but behavior varies by provider.
  • Invalid: remove it.

For a step-by-step look at validity checks specifically, see how to check if a phone number is real.

Validating numbers in Ready

We make Ready, so here is exactly what it does and what it charges.

Per-number validation via the API. Check one number before you act on it:

curl https://api.tryready.com/v1/validate/+12125550199 \
  -H "X-API-Key: YOUR_KEY"

Each answered lookup costs $0.003, including numbers we've checked before. A malformed number isn't charged.

There is a matching scrub endpoint, GET /v1/scrub/:phone, which checks a number against known TCPA-litigator and DNC-complainer lists. The response formats are in the docs; start with the number validation reference.

Landline validation at send time. You can switch on landline validation for an account. When it's on, known landlines are refused before the send. It costs $0.003 extra per segment. It's off by default. Numbers Ready has already seen as landlines are refused for free on every account; switching this on adds a live line-type check for numbers Ready hasn't seen yet.

Scrubbing. At send time, the scrub is the same structure: $0.003 extra per segment when switched on, and off by default. The standalone TCPA & DNC Litigator Scrub is $0.005 per contact if you want to clean a list before it ever reaches a campaign.

What's refused for free. Opt-outs and numbers on your Ban list are refused up front and not charged. Campaigns, drip campaigns and automations wait up to 24 hours for the recipient's quiet hours to end; a one-to-one or API text is held only if the window opens within 6 hours, otherwise it is refused and you send it again later. A held text is charged only when it sends.

Worked example: cleaning a 2,000-row business list

Here are the assumptions for this example. You have 2,000 business numbers. Some of the mobile contacts have opted in to texts from you. The message is a 140-character plain-text update, so it's 1 GSM-7 segment with no emoji.

Step 1: confirm identity on the top accounts. Say your 50 highest-value rows get a manual check against the company website. That's free, and it takes a rep about an afternoon.

Step 2: split by line type. Run validation across the list. Suppose (purely as an assumption for the math) that 40% come back as landlines. That leaves 800 landlines for the call queue and 1,200 mobile or VoIP numbers. Through the API every answered lookup is billed, so this step costs 2,000 × $0.003 = $6.

Step 3: text only the consented mobiles. Suppose 600 of the 1,200 have opted in. On Ready Standard, the cost works out like this:

  • Send cost: 600 × 1 segment × $0.0075, plus 600 × $0.0045 in carrier fees
  • If landline validation is on for the send: 600 × $0.003
  • If scrubbing is on for the send: 600 × $0.003

Ready's all-in prices per segment include the carrier fee but not screening: Scrub lists and Number validation, the two switches in Settings under Compliance, each add $0.003 per segment when switched on, shown as screening on your bill, and both are off by default. Unless you turn the opt-out footer off, the first text to each contact, and one again from time to time, also gets "Reply STOP to opt out" and your business name if the message does not already have them, so a text close to the segment limit can bill one more segment.

That's the send cost plus carrier fees for the texts themselves. Each compliance check you switch on adds a small amount per segment against per-text TCPA exposure measured in hundreds of dollars.

Step 4: call the landlines. With the Ready Dialer, click-to-call is billed at $0.025/min, and only answered time counts. Suppose 300 of the 800 landlines pick up and talk for an average of 2 minutes each. That's 300 × 2 × $0.025 = $15. The 500 that ring out cost nothing.

A lookup is not consent

Looking up a number tells you it's real and textable. It doesn't give you permission to text it. Our stance is simple: cold contact happens by phone and mail, and SMS goes to people who have consented or replied. A validated mobile number scraped from a website is still a cold contact.

Ready records your opt-in attestation on each bulk send and each API send that sets consent_attested, so you have a trail showing who sent, to how many, and when. That attestation is your promise, not a per-contact consent record. Keep the opt-in time, wording and source page in your own system. Ready's scrubbing, quiet-hours holds and automatic STOP handling reduce risk, but compliance stays the sender's responsibility.

The practical takeaway

  • Use free sources (company websites, listings, registries) to confirm who owns a number on the accounts that matter.
  • Use a validation API to confirm what the number is (mobile, landline, VoIP or invalid) across the whole list.
  • Route landlines to calls and consented mobiles to texts. Remove invalid numbers.
  • Turn on landline validation and scrubbing for sends where list quality is uncertain. Both cost $0.003 per segment, and both are off until you switch them on.

If you want to try the validation and send flow on your own data, you can create an account. Your first 20 one-to-one texts are free, and to send any text you need a card and a number ($2 a month, the first month charged when you get it).