The best B2B list I ever built had 214 contacts on it. It produced more revenue than the 11,000 row file that sat in the same folder, and it took an afternoon.
Building a list is not a data acquisition problem. It is a decision problem, and the decisions come in a particular order. Here is the order.
Step 1: Narrow the profile until it feels excessive
Most lists fail here, before a single row exists.
"Small businesses" is not a profile. "Marketing agencies" is not a profile. A profile is narrow enough that you can write one specific email that would make sense to every person on it and to nobody else.
Try this test. Write the first line of the email before you build the list. If the line has to be vague to fit everyone, the profile is too wide.
| Too wide | Narrow enough |
|---|---|
| Small businesses in Texas | Independent HVAC contractors in the Dallas metro with 5 to 20 vans |
| Marketing agencies | Web design studios of 3 to 10 people who mention Shopify on their site |
| Dentists | Single-location dental practices open under two years |
| SaaS companies | B2B SaaS with a self-serve trial and no visible sales team |
The narrow versions each suggest an opening line immediately. That is the whole point of narrowing, and it is not a copywriting flourish: relevance is the largest single input to reply rate, larger than send volume, subject line and timing combined.
If a narrow segment turns out to be too small to sustain you, build a second narrow segment. Two specific lists beat one general one, forever.
Step 2: Harvest the businesses, not the emails
The order matters. You are looking for businesses that match the profile. Their email addresses are a later step and a different source.
Where the businesses come from:
- Public map and directory data, filtered by category and radius. Free, current and self-maintained. This is the workhorse for anything local, and lead discovery is the automated version of it.
- Trade association member lists. Pre-filtered by an organisation that verified membership. Lower volume, higher quality, almost no competition because nobody thinks of them.
- Curated roundups. "Best web design studios in Manchester" articles are a competitor's research that you get to reuse.
- Your own browsing. A capture extension turns any directory page you happen to be reading into structured rows, which converts idle research into a list without a separate task.
Take everything that matches the profile. Do not filter on "has an email" at this stage, because you have not looked for the emails yet, and because the businesses without one are often the best leads: a company with no website has a problem you can name.
Step 3: Find the address on the website
A directory listing tells you which website to read. The website is where the email is.
What to look for, roughly in order of value:
- A named person's address on a contact or team page.
- A department address that matches your pitch: sales@, newbusiness@, bookings@.
- The general address, which for a small business is read by the owner and is a perfectly good target.
- A contact form, which is not an email address but is a channel, and for some businesses the only one.
While you are on the site, take the other things that make the first line writable. Whether there is online booking. Whether the copyright line is current. Which social profiles exist. Roughly how many people are pictured. This is enrichment, and it is what separates a list from a phonebook.
A word on role addresses, since people ask: for a small business, info@ is the owner's inbox and works fine. For a 300 person company it is a queue that has never produced a meeting for anybody. Use the size of the business to decide, not a rule about address style.
Step 4: Verify at the gate, not later
This is the step that decides whether you have built an asset or a liability, and the placement matters more than the existence.
Verification is a gate, not a later stage. An address that fails does not go into the list marked "unverified" for handling one day. It does not go into the list.
The arithmetic, once more, because it is the most consequential arithmetic in outbound: a list that is 15% dead sends 150 bounces per thousand. Inbox providers start filtering senders at roughly 2%. The bad list does not cost you the bad addresses, it costs you the good ones, because after that campaign your mail stops reaching anybody.
Verify syntax, then the domain, then whether the mailbox accepts mail. Then verify again at send time, because a list built in March and sent in June is a different list. This is why we run verification on every harvest and again at the moment of sending rather than selling it as a credit pack: a per-address charge quietly encourages you to skip the check on the addresses you are least sure about, which are exactly the ones that need it. Email verification tools: what they can and cannot tell you covers the limits, including the catch-all domains nobody can verify.
Step 5: Record where every row came from
Two extra columns, and in six months they are the most valuable columns in the file.
- Source. Which directory, which association, which search.
- Date added. Not the date you sent to it. The date it entered the list.
With those two you can answer the questions that decide your next quarter. Which source produced replies rather than rows? Which segment is decaying fastest? Is this contact old enough to need re-verifying? Without them, you have a list that works until it does not, and no way to tell which part went wrong.
Add a third column if you can: the gap you found on the website, in four words. "No booking form." "Site from 2021." "Two vans, no site." That column is your first line, already written, and it is the difference between an outreach session and a staring contest.
Keeping it alive
A list is not a build, it is a maintenance job:
- Re-verify quarterly. Contact data decays 20 to 30 percent a year.
- Remove anything that bounced once. There is no second chance worth the risk.
- Remove anyone who asked. Immediately, permanently, and across every channel rather than the one they replied on.
- Add continuously in small amounts. Twenty rows a week from your ordinary browsing beats a thousand row push twice a year, because you never face a cold start.
What good looks like
Three hundred contacts. One segment. Every address verified this month. Every row carrying its source, its date and a four word gap. One opening line that would make no sense at all to anyone outside the segment.
That list will outperform a purchased file forty times its size, and it will keep working next quarter, because you can rebuild it whenever you want. Which is the actual asset. Not the rows, the method.
If you want the whole chain (harvest, enrich, verify, score, send) running in one place rather than five, Leads Ranger does it on a free plan with real harvests. Or take the method above and keep the money. Next: your first 100 leads, a seven day playbook, and lead scoring without a data team for deciding who to contact first.
