Brand Logo

Your First Prospecting Workflow Shouldn't Start With 50,000 Contacts

2026-09-30 · Julian Hartwell

Small lists aren't a handicap. They're the whole strategy.

If your first prospecting workflow starts with a 50,000-record export, you've optimized for the wrong number. Volume is a scaling decision, not a starting decision.

I run outbound operations at a B2B services company — which, in practice, means I'm the person pulled into the room when the quarter is three weeks from closing and the pipeline has a hole in it. I've done 30-something of those end-of-quarter scrambles in six years. Two were genuinely ugly: 11 business days to cover a $400K gap.

Every one of them traced back to the same root cause. A list nobody had verified, nobody had enriched, and nobody had actually thought about beyond row count.

So here's my position, and the rest of this piece is me defending it: small lists are not a limitation. They are the only sane place to start.

Argument 1: Deliverability punishes volume faster than anything else

Most teams treat email verification as a cleanup step. It's not. It's the load-bearing wall.

Per Google's bulk sender guidelines (effective February 1, 2024), bulk senders must keep spam complaint rates below 0.3% and support one-click unsubscribe. Yahoo published parallel requirements the same month. Thresholds have been revised since — verify current numbers in Google's Postmaster Tools documentation rather than trusting a blog post. Including this one.

Now run the arithmetic on a dirty list. If 12% of a 10,000-record list is undeliverable, that's 1,200 hard bounces leaving your sending domain. Some ESPs will throttle you before you hit that. Some won't, and you'll find out the hard way when your next legitimate campaign lands in spam. Hard bounces don't just cost you a send — they cost you the domain reputation you spent two quarters building.

I learned that one the stupid way. Back in 2023, we had a 900-record list we'd pulled about six months earlier. I knew I should re-verify it. I thought, 'what are the odds it's gone stale?' The odds were roughly 15%, which is exactly how we ended up with a 15% bounce rate and an awkward call with our ESP's deliverability team. Re-verifying would have cost us maybe 90 minutes. The cleanup took four days and a temporary sending pause.

So how can a B2B sales team verify email addresses properly?

Five checks, in this order:

  1. Syntax and domain/MX check. Free, instant, catches typos and dead domains. Do this before anything else touches the record.
  2. SMTP handshake. Asks the receiving server whether the mailbox exists. Catches most dead addresses, but servers block and greylist aggressively, so a 'risky' result isn't always a bad address.
  3. Catch-all detection. Some domains accept everything. No verifier on earth can confirm a catch-all address is real — the server answers yes to every name you throw at it. Route these separately and treat them as unverified.
  4. Role-based addresses (info@, sales@, admin@). Deliverable but low-reply. Decide your policy once rather than arguing about it per campaign.
  5. Age check. Anything older than 90 days gets re-verified before it enters a sequence. No exceptions.

Here's the part people get backwards: verify before you enrich, not after. Enrichment costs money per record. Paying to append revenue data to a dead mailbox is paying for a prettier corpse.

And ignore anyone promising 100% accuracy. The honest answer is that a good verifier gives you a probability, not a guarantee. If a vendor guarantees deliverability, they're selling confidence, not data.

Argument 2 (the counterintuitive one): enrichment pays off most on the smallest lists

Conventional wisdom says data enrichment is a volume play — enrich everything, sort it out later. I think that's backwards, and it's the hill I'll die on.

Waterfall enrichment works by querying multiple data providers in sequence until a field resolves. Because you stop at the first hit, your average cost per resolved record drops — but your total spend still scales linearly with list size. Enrich 30,000 records and you've made a real financial bet on accounts you haven't qualified yet.

Do it on 300 accounts you've already researched, and the math changes completely. A concrete example: we run enrichment through okki go's first prospecting workflow, where the waterfall chain queries providers in sequence and logs which source resolved each field. On a 280-account list last quarter, we resolved direct-dial and verified email for about 84% of records (as of early 2025, at least — provider coverage shifts). More importantly, we only paid for 280 records instead of 30,000.

Before you buy a single enrichment field, ask three questions. Does it change who you contact? Does it change what you say? Does it change when you send? If a field does none of those, you bought trivia.

To be fair, there are cases where enriching at scale genuinely makes sense — usually when you're re-segmenting an existing customer base rather than prospecting into a cold market. Your situation may differ, and if you're sitting on 50,000 inbound leads you never touched, your calculus is not mine.

Argument 3: The best enrichment source is one you already own

Teams spend real budget on third-party intent data while ignoring the highest-signal source sitting on their own screen: LinkedIn.

LinkedIn outreach gets treated as a channel. It's also a data source. Job changes, headcount growth, hiring patterns, what a buyer posts about — that's behavioral enrichment you can read in public, for free, and it goes stale slower than you'd think. A job change is one of the few triggers that reliably resets a conversation.

Three signals worth tracking weekly: a champion moving to a new company (warm intro, new budget). A target account hiring for a role your product supports (timing signal). A prospect posting about a problem you solve (context you can reference without being weird about it). In that order.

The second source you already own is your own reply data. Every bounce, out-of-office, and 'not the right person, try X' is enrichment that no platform can sell you. If your CRM isn't capturing that, you're paying twice for the same information.

Where I might be wrong

Objection one: 'We don't have time to enrich 300 accounts properly.' You don't have time to redo it either. I've watched teams spend three days scrubbing a 12,000-record list and come out with 400 usable contacts. Same output, three extra days.

Objection two: 'Per-record enrichment costs add up.' It does. So does the cheap alternative. We saved roughly $600 by going with a bulk data dump instead of a pay-per-record enrichment platform, then spent the better part of a week cleaning it and ultimately rebuilt the list from scratch. Net loss: somewhere north of $1,800 and a very annoyed SDR team.

Objection three: 'This only works for small markets.' Fair — I'm speaking from a mid-market B2B context with a defined ICP and an addressable market in the low tens of thousands. If you're selling into a genuinely enormous total addressable market with a sub-$500 ACV, the arithmetic changes and volume might be the right call.

Two things I'll flag before you take any of this as gospel. I'm not a deliverability engineer — I can't explain how Gmail weights engagement signals internally, and I don't pretend to. What I can tell you from an ops seat is how bounce rates correlate with domain reputation, which is enough to make decisions. And if you're emailing into the EU or UK, GDPR legitimate-interest assessments and opt-out mechanics are not my area. Talk to counsel before you scale anything, not after.

Restating the point

A 400-account list you can defend will out-perform a 40,000-record list you can't, every quarter, in every market I've tested.

Small isn't the same as unimportant. A tiny prospect list is a signal that someone qualified it — and that's worth more than scale. Start with 200 to 400 accounts. Verify every email before it enters a sequence. Enrich only the fields that change your message. Read the public signals sitting on LinkedIn for free. Keep a human approving the sends, because automation that drafts is useful and automation that fires unsupervised is a reputation risk.

Then, and only then, scale the thing that's working. Not the other way around.