B2B List Building: Target Situations, Not Demographics
Mitchell Keller
Founder & CEO, LeadGrow · Managed 3,626+ cold email campaigns. 6.74% average reply rate. Booked 2,230+ meetings in 2025.
TL;DR
- **Start with 100K+ companies, end with 5K to 8K monthly contacts.** The funnel from total market to contactable pool is where most teams mess up.
- **Layer signals on top of firmographics.** Demographics get you in the building. Signals get you to the right door at the right time.
- **Minimum viable market: 30K companies, 5K to 8K monthly contactable.** Below that, you'll burn your list in 3 to 4 months and have nowhere to go.
By Mitchell Keller, Founder & CEO, LeadGrow. Managed 3,626+ cold email campaigns. 6.74% average reply rate. 2,230+ meetings booked in 2025.
Most prospect lists are just filtered databases
Pull up Apollo. Set industry to "B2B SaaS." Company size 50 to 200. Title contains "VP of Sales." Geography: United States. Export.
Congratulations. You just built the same list as 10,000 other companies running cold email this month. Same people, same inboxes, getting the same types of messages.
This is how most teams build prospect lists. Filter a database by demographics and call it targeting. The problem isn't that the data is wrong. The problem is that everyone has access to the same data and the same filters.
We've managed 3,626+ cold email campaigns and booked 2,230+ meetings in 2025. The teams that consistently get 8%+ reply rates aren't using better databases. They're layering situation signals on top of firmographic data to find people who are in a buying moment right now.
The list building funnel (real numbers)
Here's what the funnel actually looks like for a typical B2B campaign:
Layer 1: Total Addressable Market (TAM)
All companies that could theoretically buy your product. This is your universe. For most B2B products, this is 30,000 to 500,000+ companies.
Layer 2: Ideal Company Profile (ICP filter)
Apply firmographic filters. Industry, company size, geography, tech stack, revenue range. This typically cuts your TAM by 60 to 80%. From 100,000 down to 20,000 to 40,000.
Layer 3: Situation filter
Apply signal combinations that indicate a buying moment. Hiring patterns, funding events, tech stack changes, content engagement. This cuts another 50 to 70%. From 30,000 down to 8,000 to 15,000.
Layer 4: Contact quality filter
Find verified emails for the right contacts at those companies. Email verification waterfall. This typically yields 40 to 60% match rate. From 10,000 down to 4,000 to 6,000 verified contacts.
Layer 5: Monthly contactable pool
Factor in send limits, domain rotation, and sequence length. You need 5,000 to 8,000 fresh contacts per month to sustain a healthy campaign. This is your operational number.
Most teams skip Layers 3 and 4 entirely. They go from TAM to export and wonder why their reply rate is 1.5%.
The 30K minimum rule
Before building any list, do the math on total addressable market. You need a minimum of 30,000 companies in your universe.
Here's why. If your TAM is 10,000 companies, after ICP filtering you're down to 3,000 to 4,000. After situation filtering, maybe 1,500. After contact verification, maybe 800 verified emails. That's less than two months of sending at reasonable volume.
When you burn through a small list, you have three bad options: re-contact the same people (spam), lower your targeting quality (worse results), or stop sending (no pipeline).
With 30,000+ companies, you can sustain 12+ months of outbound while keeping targeting tight. The math works. Below that, it doesn't.
If your market is genuinely under 30K companies, cold email might not be your primary channel. Consider supplementing with LinkedIn, events, and partnerships to create enough touchpoints without burning the list.
Step-by-step list building process
Step 1: Map your total market
Start in Apollo or a similar firmographic database. Cast a wide net. Don't add situation signals yet.
Filters at this stage:
- Industry or vertical (broad)
- Company size range (headcount or revenue)
- Geography (if relevant)
- Company type (exclude non-profits, government, etc. if they don't buy)
The goal is to see the full universe. If this number is under 30K, your market might be too small for sustained cold email. If it's over 500K, you probably need to tighten industry or geography.
Step 2: Apply ICP filters
Now layer in your ideal company profile. These are the firmographic characteristics that correlate with your closed/won deals.
Common ICP filters:
- Revenue range: $1M to $50M ARR (adjust to your product's price point)
- Employee count: 10 to 200 (adjust to your buyer)
- Tech stack: Companies using specific tools (BuiltWith, Wappalyzer)
- Funding stage: Seed through Series B (if relevant)
- Growth rate: Headcount growth > 20% in 12 months
Pro tip: look at your closed/won deals from the last 12 months. What do those companies have in common? That's your ICP, not what your sales deck says. We break down all 34 filters you can apply in our prospect list building filters guide.
Step 3: Layer situation signals
This is where most teams stop too early and where the real targeting advantage lives.
For each situation you've defined (see our situations framework), identify the data sources that reveal those signals:
Hiring signals
Source: LinkedIn Sales Navigator, Apollo job postings, Indeed
What to look for: New roles in specific departments, first sales hire, leadership changes
Example: "Company just posted their first SDR role" indicates they're building outbound from scratch
Funding signals
Source: Crunchbase, Lead Magic, PitchBook
What to look for: Round size, investor type, time since raise
Example: "$5M Series A closed 60 days ago" indicates growth pressure and available budget
Tech stack signals
Source: BuiltWith, Wappalyzer, job descriptions
What to look for: Tools added or removed, competitor tools, missing tools
Example: "Using HubSpot but no outbound tool" indicates potential for outbound infrastructure
Engagement signals
Source: Trigify, Phantom Buster, LinkedIn
What to look for: Engagement with competitor content, industry events, thought leaders
Example: "Liked 3 posts about sales automation this week" indicates active interest in the topic
Company news signals
Source: Google Alerts, press releases, Lead Magic
What to look for: Product launches, partnerships, regulatory changes, expansion
Example: "Announced expansion into European market" indicates need for new go-to-market infrastructure
Step 4: Identify the right contacts
You've got the right companies. Now find the right people. This is where most teams default to "VP of Sales" and call it done.
The right contact depends on your product's price point and buying process:
Under $25K annual deal: Individual contributor or manager who feels the pain daily. They can expense it or push it through without a committee.
$25K to $100K annual deal: Director or VP level. They have budget authority but still feel the operational pain. They can champion and approve.
$100K+ annual deal: C-suite or VP. These deals involve multiple stakeholders. Start with the person who controls the budget, not just the person who likes the product.
For each company on your list, find 2 to 3 contacts. Not just the obvious title. The person who owns the problem, the person who controls the budget, and (if different) the person who evaluates solutions. Our decision maker identification guide covers how to map org charts and identify budget authority.
Step 5: Run the email verification waterfall
Raw email addresses from databases are wrong 20 to 40% of the time. Sending to bad emails kills your domain reputation. You need a verification process.
Our waterfall:
- Primary source: Pull emails from Apollo or your primary data provider
- Verification layer 1: Run through a verification tool (ZeroBounce, NeverBounce, MillionVerifier). Remove any that bounce.
- Verification layer 2: Cross-reference with a second data source for catch-all domains. Catch-all domains accept all emails whether the address exists or not. These need extra validation.
- Enrichment: For contacts with no email found, use Clay or Dropcontact to find alternative addresses.
- Final filter: Remove all addresses that didn't pass at least one verification. A smaller, verified list always outperforms a larger, dirty list.
Target: under 2% bounce rate on every campaign. If you're above that, your verification process is broken or your data source is bad. Our email verification tools comparison covers the best options for every budget.
Step 6: Calculate your monthly contactable pool
This is the number most teams never calculate, and it's the number that determines whether your outbound is sustainable.
The formula:
Monthly contactable = Verified contacts / Number of months you want to run
If you have 24,000 verified contacts and want to run for 12 months, that's 2,000 contacts per month. For most campaigns, you need 5,000 to 8,000 per month to test multiple situation buckets and generate enough volume for statistical significance.
If your monthly contactable pool is under 5,000, you either need to expand your TAM, loosen your ICP filters slightly, or supplement with inbound and LinkedIn to reduce the volume pressure on cold email.
The 30/50 refill rule
Lists aren't static. You need a refill process.
Our rule: Start refilling when a campaign has sent to 30% of its list. Complete the refill by 50%. This means you always have fresh contacts queued before the current batch runs dry.
The refill process:
- Pull new contacts matching the same situation signals
- Exclude everyone already in your CRM or sent list
- Run through the same verification waterfall
- Add to the campaign before the current batch is exhausted
If you wait until a campaign runs out of contacts to build a new list, you'll have a gap in sending. Gaps hurt domain warmth, pipeline consistency, and team momentum.
Data sources: where to find what
Here's our stack for list building, organized by what each tool does well:
Firmographic data (who they are)
- Apollo: Company info, contact data, basic tech stack. Primary database for most campaigns.
- LinkedIn Sales Navigator: Org charts, job changes, relationship mapping. Essential for identifying the right contacts.
- ZoomInfo: Enterprise-grade contact data. Better for large companies. Expensive.
Signal data (what they're doing)
- Trigify: LinkedIn engagement signals. Who's engaging with competitor content, thought leaders, and industry topics. Our most used signal source.
- Lead Magic: Funding alerts, company news, hiring changes. Good for event-based triggers.
- BuiltWith: Tech stack data. Which tools they use, when they added or removed them.
- Crunchbase: Funding rounds, investor info, growth metrics.
Enrichment (filling the gaps)
- Clay: Our enrichment hub. Combines multiple data sources, runs AI enrichment, handles waterfall verification. We use this for almost every campaign.
- Dropcontact: Email finding and verification. Good for European contacts (GDPR compliant).
- Clearbit: Company enrichment. Good for adding firmographic data to partial records.
Verification (keeping it clean)
- ZeroBounce or NeverBounce: Email verification. Run every address through this before sending.
- MillionVerifier: Budget option for high-volume verification. Good for secondary validation.
Processing at scale
When your list building involves tens of thousands of contacts, the tools you choose matter. We've processed lists of 1M+ leads for larger campaigns. At that scale, traditional enrichment tools choke.
For context: a 1M lead enrichment job that takes 27 hours in Clay takes under 4 seconds with our Claude Code pipeline (272K rows per second). You don't need that kind of processing power for most campaigns, but it illustrates why we invest in custom tooling alongside standard platforms.
For most teams, Clay handles list building fine up to about 50,000 contacts. Our Clay tutorial walks through the full setup from account creation to situation-based campaigns. Beyond that, consider whether custom scripts or a more technical solution makes sense for your volume.
Common list building mistakes
Mistake 1: Building one giant list instead of situation buckets
If all your prospects are on one list with one message, you've lost the targeting advantage. Build separate lists for each situation. 3 lists of 2,000 will outperform 1 list of 6,000 every time because each list gets messaging matched to its situation.
Mistake 2: Skipping verification
I cannot overstate this. Sending to unverified emails is the fastest way to destroy your domain reputation. Every email that bounces hurts your sender score. Keep bounce rates under 2%. No exceptions.
Mistake 3: Not calculating sustainability
A list that lasts 6 weeks isn't a list. It's a campaign. Think in 12 month horizons. If you can't sustain 5,000+ contacts per month for a year, your market might be too small for cold email as the primary channel.
Mistake 4: Over-filtering to a tiny list
The opposite extreme. Some teams add so many filters that their list drops to 500 people. That's not targeted, that's anemic. You need volume for testing. Our sprint phase tests 12 variants across 3 angles. You can't do that with 500 contacts.
Mistake 5: Using stale data
A list built 6 months ago is garbage. People change jobs, companies pivot, situations evolve. Build fresh lists monthly at minimum. The signal combinations that made someone a good prospect in January might be irrelevant by March.
The monthly rhythm
Here's how list building fits into your monthly campaign operations:
Week 1: Pull fresh signal data. Check which situation buckets are performing. Build or refresh lists for top-performing situations.
Week 2: Run verification waterfall on new contacts. Enrich any missing data points. Load into campaigns.
Week 3: Monitor 30/50 refill trigger. Start sourcing new contacts for campaigns approaching 30% sent.
Week 4: Analyze which situation buckets generated the most replies and meetings. Double down on winners. Test one new situation angle.
This cycle keeps your lists fresh, your campaigns fed, and your targeting sharp. It's not a one-time build. It's an ongoing process.
We run this cycle for every client, every month. It's one of the reasons we've been able to book 2,230+ meetings in 2025. The list quality never degrades because we never stop building.
Frequently Asked Questions
Related Articles
Want us to run this playbook for you?
Book a strategy call and we'll show you how these frameworks apply to your business.
Book Strategy Call