Skip to content
← BlogProspecting

How to build a cold email lead list that doesn't bounce

A lead list is a pipeline, not a purchase: write the ICP down, source by trigger, verify every address before it teaches Gmail who you are, and build small, specific segments.

By David Lara, Founder

Founder-reviewed ·How we research and correct articles

The fastest way to kill a new sending domain isn’t bad copy — it’s a bad list. Bounces over 2% and Gmail starts rejecting you; a scraped list with spam traps in it can blocklist a domain before the second campaign. And yet “buy 50k contacts, blast, pray” is still how most first campaigns die. Here’s the version that works, as a pipeline.

The lead list pipeline: define the ICP, verify every address, and divide the result into small, specific segments — with a reminder to re-verify before each campaign

Step 1 — write the ICP down (actually down)

Not “B2B SaaS companies.” A sentence with teeth:

Series A–B SaaS, 20–80 employees, US/EU, with at least two open sales roles — because that’s when outbound scales before the tooling does.

Four parts: industry, size, role, trigger. The trigger is the one most lists skip and the one that pre-writes your first line. If you can’t name the trigger, you’re not describing who has the problem — you’re describing who exists.

Where the language comes from: your last ten won deals, your support tickets, the exact words customers use. Voice-of-customer beats persona workshops every time.

Step 2 — source, in order of list quality

  1. Your own signals first. Trial signups that stalled, webinar attendees, closed-lost from two quarters ago, people who starred the repo. Warm-ish beats cold at any volume.
  2. Trigger-based sourcing. Job boards (hiring = budget), funding announcements, product launches, tech migrations visible in job posts. Small lists, pre-personalized by construction.
  3. Databases and enrichment tools. Fine as a starting universe — filtered hard by the written ICP, never imported wholesale.
  4. The permutation fallback. For named targets without a listed address: companies use ~14 patterns, and the email permutator generates them in frequency order — then verification tells you which one is real, and how to find anyone’s business email covers the whole workflow.

What’s not on this list: purchased mega-lists. You inherit every spam trap, every stale address and every prior sender’s reputation baggage, at a bargain price because the asset is a liability.

Step 3 — verify before Gmail does it for you

Every address goes through verification before the campaign, not after the bounce report: syntax, MX records, disposable-domain and role-account filters, known-hazard checks. Expect a fifth of a typical sourced list to fall out — that’s the fifth that would have taught Gmail who you are the expensive way. A month-old verification doesn’t count either: B2B contact data changes continuously, so re-verify per campaign, not per year.

Free ways to do it right now: single addresses or a whole file. On Norbelys, every import verifies automatically — no credits, no separate tool, with honest verdicts (we say “deliverable — unconfirmed” rather than pretending certainty nobody has).

Step 4 — segment small, win big

The counterintuitive data point comes from Woodpecker’s June 2026 analysis of 20M+ platform emails: campaigns to lists under 50 prospects replied at 5.8%; lists over 1,000 at 2.1%. Small lists force the thing that works — one shared pain, one specific message — and make rung-4 personalization affordable per prospect.

Practical shape: a 780-contact verified universe becomes ~12 segments of 30–80, each defined by one sentence of shared pain, each with its own message built for that pain. In Norbelys, segments are saved filters over your people — activity, attributes, imports — so “everyone at an agency who clicked but never replied” is a segment, not a spreadsheet afternoon.

Step 5 — maintain it like the asset it is

  • Suppression is sacred. Unsubscribes, bounces, “not interested” — out, permanently, enforced at send time.
  • Re-verify per campaign. Decay doesn’t announce itself; the bounce spike does.
  • Feed replies back. “Wrong person, talk to X” is free sourcing; triage replies and the list improves itself.
  • Watch the volume math. A great list still fails if you oversend per mailbox — the list and the sending infrastructure are one system.

A thousand raw names in, twelve sharp segments out, verified the same week they’re sent. That’s the whole trick — and it’s also why the math from 1,000 sends works at all.