---
title: "B2B Phone Number List: Buy or Build (2026)"
description: "A B2B phone number list costs more per dialable line than per delivered row. Get the real math, the decay rules, and build your own free in Google Sheets."
canonical: "https://derrick-app.com/phone-finder/phone-number-list"
category: "Phone Finder"
updated: "2026-07-27"
---

# B2B Phone Number List

> A B2B phone number list is a set of rows pairing a contact with a dialable number, and its real price is the cost per row you can actually dial, not per row delivered. Divide the price of a delivered record by your account match rate, by the share that is the right line type, then by the share still connected: a file at 0.10 per record can work out at 0.83 per dialable mobile. Building the list from your own target accounts makes those three rates measurable instead of assumed. Per-result pricing removes the first divisor entirely, since Derrick's Phone Finder charges 150 credits per phone found, around 0.30 EUR on the Standard plan, and nothing at all when nothing is found.

*Canonical: https://derrick-app.com/phone-finder/phone-number-list* · *Phone Finder*

---

A phone number list gets sold by the row, and that is the first thing to stop believing. Nobody dials a hundred thousand rows. A rep dials the ones that match an account worth calling, that ring a person rather than a lobby, and that are still connected this quarter. Those three filters decide what the list really cost you, and none of them show up on the invoice.

This guide treats the list as the unit of work rather than the individual lookup. What is actually inside one, what a purchased file bills you for, how to work out the cost of a row you can dial instead of a row you received, why the mobile and landline split changes the answer, and how to build the list yourself from a target account list you already own. If what you need is the number of one specific person, our guide to [seven ways to source a B2B number](https://derrick-app.com/phone-finder/how-to-find-b2b) covers that job instead.

**The short version:** price per delivered row is the wrong unit. Divide it by your match rate on your own accounts, then by the share that is the right line type, then by the share still valid, and you get the number that matters. Building from your account list makes each of those three measurable instead of guessed, and per-result pricing means the ones you never find cost nothing.

![What is inside a B2B phone number list: switchboard, desk direct dial, mobile and generic company contact](/illustrations/articles/phone-number-list/four-row-types.webp)Four different products get sold under the same phone number list label.

## What is really inside a B2B phone number list

A row in a B2B phone number list is not one field. It is at minimum a person, a company, a number, a line type, a country format and a date. Drop the date and you cannot tell a fresh record from one that has been circulating for two years.

The word "list" also hides four products that get sold under the same label, and they are not interchangeable.

| What is on the row | Where it comes from | Who answers | What it is good for |
| --- | --- | --- | --- |
| Switchboard or main line | Company website, registries, map listings | Reception, an IVR menu, or nobody | Reaching a named person by asking for them, last resort |
| Desk direct dial | Directories, old CRM exports, signature scraping | The right person, if they are at the desk | Roles that still sit in an office |
| Mobile | Person-level lookup against the individual | The person, wherever they are | Outbound to decision-makers |
| Generic company contact | Aggregated business directories | A shared inbox equivalent, often unstaffed | Local and field businesses, not enterprise |

This is why "one million B2B phone numbers" is a meaningless headline. If eight hundred thousand of them are switchboards harvested from company websites, you bought a directory anyone can rebuild with a crawler, not a prospecting list. Ask for the line type breakdown before the price. A vendor who cannot produce it is telling you something about the file.

The second question is account overlap: not "how many rows" but "how many of your rows sit at the companies on this list of mine". A file that is enormous and 12% relevant to your territory is smaller, in practice, than one a tenth its size built against your accounts.

## Buying a list: what you pay for and what you get

Vendors bill per record delivered, as a flat fee for a file, or as a seat with a quota. The shapes differ, the blind spot is the same: you are charged for delivery, not for usefulness.

Three things are silently your problem the moment the file lands.

1. **Coverage against your accounts.** A file is built to be big, not aimed. The share landing on companies you actually sell to is your risk, and you discover it after payment.
2. **Line type mix.** Nothing in a per-record price separates a mobile from a lobby phone. You paid the same for both.
3. **Age.** A file is a photograph of something that moves, and it starts ageing on the day it is generated, not the day you receive it.

A fourth point rarely comes up in the sales call: exclusivity. A file assembled once and sold many times reaches several teams in the same quarter, often with a comparable pitch. The data is not wrong, but the person picking up has heard a version of your opening line recently, and the connect rate you modelled will not survive that.

Then there is provenance. When a prospect asks where you got their mobile, "we bought a file" is a weak answer, and a bought file rarely carries a per-row source. Check the national do-not-call regime for the markets you dial and run your own suppression list before the first call.

![Cost per dialable row in a B2B phone number list after match rate, line type and validity](/illustrations/articles/phone-number-list/cost-per-dialable-row.webp)A row at 0.10 delivered works out at 0.83 once the three rates are applied.

## The real cost per usable line, not per delivered line

Here is the arithmetic nobody puts on the pricing page. Start from the price of a delivered row and divide by the three rates that stand between delivery and a dial tone.

```
cost per dialable row = price per delivered row
                        / account match rate
                        / right line type rate
                        / still valid rate
```

Plug in your own figures rather than benchmarks, but run the shape once to see how fast it moves. Take a file at 0.10 per record. Suppose 40% of the rows sit at companies you would actually call, 50% of those are the line type you want, and 60% of those are still connected. The delivered row cost 0.10. The dialable row cost 0.83. Off by a factor of eight, and all three rates were assumptions you could not test before paying.

Add the second cost, which is larger and never invoiced. If a rep works 100 rows and 65 are dead ends, the expensive part was never the file. It was the hour. Halving the dead-end rate beats halving the price per record, by a wide margin.

Per-result pricing removes the first divisor entirely. Derrick's [Phone Finder](https://derrick-app.com/features/phone-finder) costs 150 credits per phone found and is billed per result found: a lookup that returns nothing is not charged. On the Standard plan at 20 EUR per month for 10,000 credits, that works out at 0.30 EUR per number found. On Pro, at 175 EUR for 100,000 credits, it is 0.26 EUR. Those are not prices per row attempted, which is the whole point: your match rate stops being a hidden multiplier on unit cost and becomes a coverage figure you can measure.

|  | Buying a file | Building per result |
| --- | --- | --- |
| You pay for | Rows delivered | Numbers found |
| When nothing matches | You already paid | Nothing is charged |
| Freshness | Fixed at generation date | Fixed at the day you run it |
| Aimed at your accounts | Partly, by luck of overlap | Entirely, you supply the accounts |
| Also sold to others | Usually | Not applicable |
| Refresh unit | The whole file | One segment, one row |

## Mobile or landline decides whether the list works

A desk direct dial can be perfectly valid data and completely useless. The number exists, the format is right, the line is connected, and it rings in an office where the person you want sits two days a week. Validity and reachability are different properties, and only one books meetings.

That is why line type belongs in the list as a column, applied as a filter before dialing rather than as a note discovered afterwards. Sort by line type, work the mobiles first, and keep switchboards for the specific play they are good at: calling reception and asking for a person by name, which works far better than asking for a job title. Our guide to [getting a mobile rather than a switchboard](https://derrick-app.com/phone-finder/find-mobile-phone-number) covers the sourcing side of that split.

The split also changes how you read a coverage number. A provider quoting 70% coverage on your accounts is quoting rows, not mobiles. Ask for the same figure restricted to mobiles and it usually drops sharply, because person-level mobile data is harder to assemble than company data pulled off public pages. That gap is the honest measure of the list.

![How a B2B phone number list goes stale: a mobile follows the person, a desk line stays with the company](/illustrations/articles/phone-number-list/decay-drivers.webp)Both rows end up wrong, and neither number is disconnected.

## How fast a phone number list goes stale

Decay has three drivers and they do not fail the same way, which is why a single "accuracy" percentage tells you almost nothing.

People move. This is the counterintuitive one, because the two line types break in opposite directions. A mobile follows the person, so the number stays valid and the company on your row becomes wrong. A desk line stays with the company, so the company stays right and the person becomes wrong. Both rows are wrong. Neither is disconnected. No format check will ever catch either of them.

Companies move. Relocations, phone system migrations and number range changes retire desk lines in blocks: you lose every row at that company at once, which is exactly the failure a random spot check misses.

Sources get corrected without telling you. A number gets fixed at the origin, and the copy sitting in your file does not learn about it. Owning a file means owning a fork of the truth.

The consequence is about the unit of refresh, not the frequency. A purchased file refreshes as a file: you buy it again. A generated list refreshes one segment at a time, so you re-run the accounts you are calling this month and leave the rest alone. Tie it to the campaign wave, not the calendar.

Job changes are the trigger worth automating, because they invalidate rows silently. Derrick's [Signal](https://derrick-app.com/features/signal) tracks leads and accounts for job changes, funding rounds and hiring activity, from 20 EUR per month, and fires an alert when one of your rows becomes a different person's row. That alert is your re-run list.

![Building a phone number list from target accounts in the Derrick Google Sheets sidebar](/illustrations/articles/phone-number-list/derrick-sidebar-build.webp)Accounts first, people next, numbers last, in the sheet you already work in.

## Build a phone number list from your target accounts

The order matters more than the tooling. Start from accounts, resolve people, then look up numbers. The other way round, buying numbers and hoping the accounts line up, is what produces the 40% match rate above.

1. **Fix the account list first.** If you cannot name the companies, no file will fix that. When you have a good seed set, [Find Similar Companies](https://derrick-app.com/features/find-similar-companies) turns one company into an ICP-matched list at 1 credit per company, available on the free plan, which is how you widen the target without widening the noise.
2. **Resolve the right people.** [Find a company's people](https://derrick-app.com/features/find-staff-members) lists current and former staff for any company at 1 credit per person, filtered by job function, so you get the three names worth calling instead of the whole headcount. If you already hold profile URLs, [Enrich Leads](https://derrick-app.com/features/enrich-leads) fills in the identity fields at 1 credit per profile on the free plan. The full path from a company name to the right person is in our walkthrough on [reaching a decision-maker's direct line](https://derrick-app.com/phone-finder/decision-maker-phone).
3. **For local and field businesses, take a shortcut.** [Google Maps Scraper](https://derrick-app.com/features/google-maps-scraper) imports up to 200 businesses per query with name, phone, website, rating and address at 1 credit per place. For a restaurant, clinic or garage segment, that is the phone list built in one step, no lookup stage at all.
4. **Look up the numbers.** Phone Finder runs down the resolved people at 150 credits per phone found, from the Mini plan at 9 EUR per month. Rows where nothing is found cost nothing, so you can run the whole column and read the coverage afterwards.
5. **Clean before you dial.** [Find Duplicates](https://derrick-app.com/features/find-duplicates) is unlimited and on the free plan. Run it on the number column, not only on names: the same person spelled two ways is two calls to one phone, and the same switchboard repeated across forty rows is the signal that forty rows are not what you think they are.

All of that runs in the Google Sheets sidebar, on the rows already in front of you. It is not a set of spreadsheet formulas: you pick the feature, map the input columns, and Derrick fills output columns line by line.

Two other surfaces exist when the list is not a one-off. The REST API, from the Standard plan at 20 EUR per month, triggers the same lookups from a pipeline or a CRM through 3000+ integrations via Zapier, Make and N8N, so a new account arrives with its numbers already attached. The [Derrick MCP server](https://derrick-app.com/mcp), also from 20 EUR per month, exposes the same enrichment to Claude Desktop, ChatGPT and any MCP-compatible assistant, which is the fastest route when you want ten numbers now. Credits roll over on paid plans.

![Six checks to verify a B2B phone number list before the first call](/illustrations/articles/phone-number-list/six-checks-before-dialing.webp)The checks are ordered by what they catch for the least effort.

## Verify every row before the first call

Verifying a list is not the same job as verifying one number. On one number you ask "is this correct". On a list you ask what the file says about itself, and the answer shows up in patterns, not in individual rows.

Six checks, in the order that catches the most for the least effort.

1. **Format.** Normalise everything to E.164 with the country code, once, at import. Mixed formats break dedup, break dialers and hide duplicates from every check that follows. The rules per country are in our reference on [validating international number formats](https://derrick-app.com/phone-finder/validation).
2. **Country coherence.** A German company with a row carrying a US country code is not necessarily wrong, but it is worth a look. A whole segment of them is a mapping error upstream.
3. **Line type.** Populate the column, then filter on it. A file with no line type column is a file you are going to dial blind.
4. **Repetition.** Count distinct numbers against total rows. If forty contacts at one company share one number, you have one switchboard duplicated forty times, not forty direct dials.
5. **Junk patterns.** Sequences, repeated digits, placeholder ranges. Rare, and instant to find with a sort.
6. **A pilot of twenty.** Dial twenty rows before committing anyone's week. The connect rate you observe is the real match rate for the arithmetic above, and it beats any accuracy claim made before purchase.

Store the date and the origin next to every number. Two columns, and they buy you the ability to say where a number came from, to expire rows by age instead of by guess, and to know which segment to re-run when a campaign underperforms.

## Buy or build: what actually decides it

Volume is not the deciding factor, which is where most of these comparisons go wrong. Three questions settle it faster.

**Is your account list already defined?** If yes, building is almost always cheaper per dialable row, because every lookup is aimed. If no, a purchased file will not define it for you. It will hand you a large sample of companies you have not decided to sell to yet, and that decision does not get easier once it is in a spreadsheet.

**Is this a one-off or a repeating motion?** A market study, a single event campaign, an entry into a territory you have no access to: those are reasonable reasons to buy a file once. A quarterly outbound motion against the same segment is not. You will be buying the same decay twice a year.

**How fresh does it need to be on the day of the call?** If the answer is "same week", a file cannot deliver that by construction, whatever its refresh cadence. Generating the segment the week you dial it is the only version of freshness that holds.

The hybrid is worth naming, because it is where most teams land. Assemble the company layer once, since companies change slowly, and generate the person and phone layer per campaign, since people move constantly. Money on the part that lasts, freshness on the part that does not.

## Six mistakes that quietly ruin a phone number list

1. **Shopping by volume.** The comparison that matters is coverage on your named accounts and the mobile share inside that coverage. Total row count answers neither.
2. **No line type column.** Without it, mobiles and lobby phones sit in the same queue and the rep discovers the difference one call at a time.
3. **Dialing the whole file.** Twenty rows first. The pilot costs an hour and reprices the entire list.
4. **Storing a number without its date and source.** A number with no context cannot be expired, defended, or re-run intelligently. It just sits there getting older.
5. **Letting the list live in a document.** A list in a slide or a static export cannot be refreshed. Keep it in the sheet where the enrichment runs, so re-running a segment is a filter and a click.
6. **Writing a switchboard into the direct dial field.** This one poisons everything downstream. Every future dedup, every dialer, every report inherits the mistake, and it is close to impossible to unpick a year later.

The pattern behind all six is the same: a list is a live object with a maintenance cost, not a file you own. Treat it that way and the buy versus build question answers itself, in favour of whichever route lets you regenerate one segment this week without repurchasing the other ninety percent.

If budget is the constraint rather than volume, our rundown of [free ways to find a phone number](https://derrick-app.com/phone-finder/find-phone-number-free) maps where the no-cost methods stop working, which is usually the moment a list becomes the unit of work.

## Use Derrick in Claude (MCP) or via API

Derrick isn't only a Google Sheets add-on. The same B2B data enrichment runs as an MCP server (use it directly inside Claude and other AI agents) and as a REST API:

- **Claude / AI agents (MCP)**: connect the Derrick MCP server, then enrich from chat. Setup: /mcp
- **REST API**: call the same enrichment endpoints from your own stack (Standard plan and up). Docs: https://app1.derrick-app.com/api/v1/docs/

## FAQ

### What is a B2B phone number list?
It is a set of rows that each pair a business contact with a phone number, plus the fields that make the row usable: the company, the line type, the country format and the date the number was sourced. Four different things get sold under that name, from switchboard numbers scraped off company websites to person-level mobiles. They are not interchangeable, and only the line type column tells you which one you are holding.

### Is it better to buy a phone number list or build one?
It depends on whether your account list is already defined and whether the motion repeats. If you can name the companies you sell to, building is almost always cheaper per dialable row because every lookup is aimed at an account you chose. Buying makes sense for a one-off: a market study, a single event campaign, or a territory you have no other way to reach. A quarterly outbound motion against the same segment does not qualify, because you end up buying the same decay twice a year.

### How much does a B2B phone number list cost?
The headline price is per delivered record, which is not the number you spend. Divide it by the share of rows that sit at companies you would actually call, then by the share that is the right line type, then by the share still connected. A file at 0.10 per record with a 40 percent account match, 50 percent right line type and 60 percent still valid works out at 0.83 per dialable row. Per-result pricing avoids the first divisor: Phone Finder is 150 credits per phone found, roughly 0.30 EUR on the Standard plan at 20 EUR for 10,000 credits, and a lookup that returns nothing is not charged.

### How fast does a phone number list go out of date?
Faster than a single accuracy percentage suggests, because three drivers fail in different directions. When someone changes job, their mobile stays valid but the company on your row becomes wrong, while a desk line stays with the company and the person becomes wrong. Office moves and phone system migrations retire desk lines in blocks, so you lose every row at a company at once. Neither failure shows up as a disconnected number, which is why format checks never catch them.

### How do you build a phone number list from a list of companies?
Start from accounts, resolve people, then look up numbers, in that order. Find Similar Companies widens the account list at 1 credit per company on the free plan, Find a company's people returns the staff filtered by job function at 1 credit per person, and Enrich Leads fills in identity fields at 1 credit per profile on the free plan. Phone Finder then runs down the resolved contacts at 150 credits per phone found. All of it runs in the Derrick sidebar inside Google Sheets, on the rows you already have.

### Should a phone number list contain mobiles or landlines?
Mobiles, for outbound to decision-makers. A desk direct dial can be valid data and still useless if it rings in an office the person visits twice a week: validity and reachability are different properties. Keep the landlines and switchboards for one specific play, calling reception and asking for a person by name rather than by job title. A coverage figure quoted across all rows will always look better than the same figure restricted to mobiles, so ask for both.

### How do you check the quality of a purchased phone number list?
Normalise everything to E.164 at import, then look for patterns rather than at individual rows. Count distinct numbers against total rows: forty contacts sharing one number means one switchboard duplicated forty times. Check country codes against company locations, populate the line type column, and sort for junk patterns. Then dial twenty rows as a pilot before committing anyone's week, because the connect rate you observe is the real match rate and it beats any accuracy claim made before purchase.

### What should you store next to each number?
The date it was sourced and where it came from, in two dedicated columns. Without them you cannot expire rows by age, you cannot answer a prospect who asks where you got their number, and you cannot tell which segment to re-run when a campaign underperforms. Keep the list in the sheet where the enrichment runs rather than in a static export, so refreshing one segment is a filter and a click instead of a repurchase.

## Related

- [Mobile vs Landline in B2B 2026: Why the Desk Phone Stopped Working](https://derrick-app.com/phone-finder/mobile-vs-landline-b2b-2026)
- [The State of B2B Phone Data 2026: Decay, the Mobile Shift, and What It Costs Pipeline](https://derrick-app.com/phone-finder/b2b-phone-data-report-2026)
- [How to Find Phone Numbers That Actually Connect: the B2B Playbook](https://derrick-app.com/phone-finder/how-to-find-b2b)
- [Phone Number Lookup from LinkedIn: How to Find Phone Numbers in 2026](https://derrick-app.com/phone-finder/linkedin-lookup)
- [How to Find a Company Phone Number: 5 Methods That Still Work in 2026](https://derrick-app.com/phone-finder/company)
- [Phone Number Validation: International Formats and Best Practices](https://derrick-app.com/phone-finder/validation)
- [How to Find a Mobile Phone Number for B2B Sales](https://derrick-app.com/phone-finder/find-mobile-phone-number)
- [How to Find a Phone Number for Free: 8 Methods (2026)](https://derrick-app.com/phone-finder/find-phone-number-free)
- [How to Find a Decision-Maker's Direct Phone by Company Name](https://derrick-app.com/phone-finder/decision-maker-phone)
- [How to Find CEO Phone Numbers for B2B Prospecting](https://derrick-app.com/phone-finder/ceo-phone-numbers)
- [B2B cold call script: the six blocks, and what has to be true before you dial](https://derrick-app.com/phone-finder/cold-call-script)
