All posts

How to Build a B2B Email List From Scratch: Accounts First

··5 min read

To build a B2B email list from scratch, choose the accounts first, then the roles inside them, then the people, and only then the email addresses, verifying each one before it goes near a sending tool. Record where every address came from and when. The result is smaller than a bought export, but every row is one you can justify and expect to deliver.

The order matters. Lists built address-first, by scraping or exporting whatever has an email attached, end up full of people who cannot buy, addresses nobody can source, and a bounce rate that damages the domain you send from. This post walks through the seven steps and the columns to keep. For local businesses specifically, our local business list funnel has measured numbers at each stage.

Step 1: define accounts you can actually help

Write the account criteria as filters you can apply to a company record, not as a persona. "Mid-market tech companies" is not a filter. These are:

  • industry or category, as a list of specific values
  • headcount band
  • country, because it decides which email laws apply
  • one qualifying fact you can check, such as "uses Shopify", "has a field service team" or "opened a second location"

The best source of criteria is your own closed-won deals. Pull the last twenty customers and note what they had in common before they bought. If you have no customers yet, write the criteria from the problem you solve and expect to revise them after the first replies.

Step 2: build the account list

Collect companies from sources you are allowed to use, and keep the domain as the key. Useful sources, depending on market:

Source Good for Watch for
Your CRM and past conversations Lookalikes, lost deals worth revisiting Old opt-outs that must stay suppressed
Company registries (Companies House in the UK) Legal form, size, status Dissolved and dormant companies
Industry directories and association member lists Niche verticals Terms of use that forbid commercial reuse
Maps and local listings Local and service businesses Many sole traders, which matters under PECR
Technology and job-post signals Qualifying facts Signals that went stale months ago

Normalise each company to its root domain, such as acme.com rather than www.acme.com/about. The domain is what you will use to find addresses, to check the mail server, and to dedupe. Check each source's terms of use before you copy from it.

Step 3: pick one or two buying roles per account

Choose the role that owns the problem, then at most one adjacent role. Emailing six people at the same company with the same message is the fastest way to collect spam reports from one organisation in an afternoon. In the UK and EU it also undercuts the balancing test that legitimate interests depends on, as covered in GDPR and B2B cold email.

Map roles to functions rather than exact titles. "Head of Finance", "Finance Director" and "Financial Controller" may all be the right person at different company sizes.

Step 4: find the people

Get names from public, professional sources tied to the role. Company team pages, press releases, conference speaker lists, published annual reports and the person's own professional profile are all sources that show the person in their work capacity. Record the URL. It is your evidence of where the contact came from, and in Canada and Australia, where implied consent can depend on a published address, it may be your legal basis.

Step 5: find the email address

Prefer an address the person or company published; otherwise derive it from the company's pattern and verify it. In order of confidence:

  1. Published address on the company site or in the person's profile. Highest confidence, and the only kind that supports conspicuous-publication consent in Canada and Australia.
  2. Pattern-derived address, using the format other published addresses at the same domain follow. Our post on company email formats covers how to identify the pattern and confirm a guess.
  3. Finder tool result, which is usually a pattern guess confirmed by an SMTP check. The email finder takes a name and company and returns a verified address where the mail server allows confirmation.

Mark which method produced each address. Pattern-derived addresses are fine for deliverability once verified, but they were never published, which matters for consent in some countries.

Step 6: verify every address and split by result

Verify after the list is final and immediately before upload, then treat each result group differently. A verification pass sorts addresses into deliverable, undeliverable, and risky or unknown. The last group is mostly catch-all domains, where the server accepts every address and cannot confirm whether a mailbox exists.

Result Action
Valid Main campaign
Invalid Remove and record why
Catch-all / accept-all Separate small batch, sent slowly, with bounces watched
Role address (info@, sales@) Keep only if the role is who you mean to reach
Disposable or free webmail on a B2B list Usually remove; often a data error
Unknown (server did not answer) Re-verify later rather than sending now

SimpleVerifier is one option here: monthly plans, with CSV uploads up to 100,000 rows and separate exports for valid, risky and invalid. Whatever you use, keep the status and the date in the list.

Step 7: keep the columns that make the list maintainable

A list is a dataset that decays, so store what you need to refresh and defend it. A working schema:

Column Why
company / company_domain Dedupe key and mail server lookup
country Decides CAN-SPAM, CASL, PECR, GDPR or Spam Act rules
contact_name / role Personalization and relevance
segment Which message they get
email / email_method Published, pattern or finder
verify_status / verify_date When to re-check
source_url / collected_date Evidence of origin
suppressed Unsubscribes and objections, never re-imported

Re-verify before each new campaign if the last check is more than a few weeks old.

What not to do

  • Do not buy a list and "clean it". Verification removes dead addresses, not the reasons the list was risky. Our post on buying lists quotes the platforms' own rules.
  • Do not include everyone with an email at the company. Pick roles.
  • Do not skip the source column to save time. It is the first thing you will need when someone asks where you got their address.
  • Do not send to a country you have not checked. The UK treats sole traders differently from companies; Canada and Australia need a consent basis before the first message.

The takeaway

Accounts, roles, people, addresses, verification, in that order. Each step removes rows, and that is the point: the list that survives is one where every contact can buy, every address is likely to deliver, and every record says where it came from.

Common questions

What is the best way to build a B2B email list?

Start from accounts, not addresses: define the companies you can genuinely help, pick the one or two roles that buy, find each person's work address from a published source or a verified pattern, verify every address, and record where each one came from. A smaller list built this way is easier to deliver and to justify than a large export you cannot explain.

Is it better to buy a B2B list or build one?

Building gives you a list you can verify, segment and justify, which matters for deliverability and for laws such as GDPR, PECR and CASL. Bought lists carry unknown sources and often stale contacts; see our post on whether to buy email lists for the platform and legal positions.

How many contacts per company should a B2B list have?

Usually one or two, chosen by role. Emailing everyone at a company multiplies complaints and, in the UK and EU, weakens any legitimate interests argument. Add a second contact only when the role is genuinely different and the message changes with it.

What columns should a B2B email list include?

At minimum: company, company domain, contact name, role, segment, email, verification status, source URL or method, and date collected. The source and date columns are what let you answer a regulator or an angry recipient, and they tell you when the record is due for re-verification.

Check your list before you send

Real mailbox checks over SMTP, and nothing is sent to the address. Sign in with Google and your first 100 email checks are free, no card. Plans for bigger lists are on the pricing page.