There's a reason Apollo and Clay have become the dominant lead list tools for serious B2B outbound teams. Apollo provides access to a database of over 275 million contacts with verified email addresses, direct dials, and firmographic filters. Clay takes those contacts and enriches them with real-time data from 75+ sources — LinkedIn activity, tech stack, funding history, headcount changes, job postings — and lets you use that data to write personalized outreach at scale.
Used together correctly, these two tools produce lead lists that land, resonate, and book meetings. Used incorrectly — or used separately without the right workflow — they produce expensive noise.
Here's the exact process we use when building lead lists for clients.
Step 1: Define Your ICP Filters Before Touching Either Tool
The most expensive mistake teams make with Apollo is opening the search screen and starting to filter without a precise ICP definition. You end up with a list that's roughly right — which is another way of saying mostly wrong.
Before you open Apollo, answer these questions in writing:
- Title: What specific titles do your best clients hold? Not 'marketing managers' — 'VP of Marketing', 'Head of Growth', 'Director of Demand Generation'. The more specific, the better the list.
- Company size: Employee count range. Headcount of 10–50 and headcount of 500–2,000 are completely different buyers — different budgets, different decision processes, different pain points.
- Industry: Which verticals convert for you? This is based on data, not hope. If your best clients come from SaaS and recruiting, build lists in those verticals first.
- Geography: US only? English-speaking markets? This affects which email domains are valid and which outreach sequences apply.
- Intent signals: What makes a company a good prospect right now? Recent funding, new leadership, specific technology in their stack, a job posting that signals a need for your service.
Step 2: Build the Base List in Apollo
With your ICP defined, Apollo becomes a precision tool rather than a firehose.
The filters we use on almost every list build:
- Job title — exact match first, then lookalike titles in a second pass
- Company headcount — set a tight range
- Industry — select 2–4 verticals maximum per list to keep messaging coherent
- Geography — country and sometimes region for market-specific campaigns
- Email verified — always check this filter; remove contacts without verified emails
- Technologies — if your offer is relevant to a specific tool (e.g. HubSpot users, Shopify stores), filter by tech stack
Build the list in Apollo and export to CSV. Aim for 500–1,500 contacts per campaign batch. Larger lists are harder to personalize meaningfully; smaller lists may not generate enough volume for a good test.
Apollo deliverability note: Apollo's built-in verification is solid but not perfect. Mark contacts as 'verified' and additionally flag 'catch-all' emails — catch-all domains accept any email address, which means you can't confirm the specific address is valid. Treat catch-alls as a secondary send tier, not your primary list.
Step 3: Enrich and Build Personalization Variables in Clay
This is where the magic happens. Import your Apollo CSV into Clay and start building the enrichment columns that will power personalized outreach.
The enrichment columns that generate the highest reply rates:
- LinkedIn profile scrape: Pull their current role, company description, and — crucially — any recent post activity. A message that references something they posted 3 days ago converts dramatically better than a generic opener.
- Company LinkedIn page: Recent company updates, funding announcements, hiring announcements — all usable as personalization hooks.
- Funding data: If they recently raised, their pain points and budget have both changed. This is a strong trigger for outreach timing.
- Job postings: A company posting for a 'VP of Sales' is building a sales team and may need outbound infrastructure. A company posting for a 'CRM Administrator' is investing in their tech stack. These are buying signals.
- Tech stack: Knowing they use Slack, Salesforce, and Marketo tells you what integrations matter and what tools they're accustomed to. Knowing they use GHL tells you they're already bought into the ecosystem you serve.
Once enrichment columns are populated, build a Clay formula column that generates your personalized opening line — for example: 'Saw [Company] recently posted a role for [role from job postings] — looks like you're building out the [department] side of things.' That one sentence, generated automatically, makes your outreach feel hand-written.
Step 4: Secondary Verification Before Send
Before any email address goes into a sending sequence, run the full list through a dedicated verification tool. Apollo verification is step one. ZeroBounce or NeverBounce is step two.
- Valid — send
- Catch-all — send in a separate lower-volume batch
- Invalid / risky — remove from list entirely
- Disposable / spam trap — remove immediately
Target: bounce rate under 1% when sequence goes live. A 3%+ bounce rate will damage your sending domain's reputation faster than any other single factor.
Step 5: Format for Your Outreach Tool and CRM
Export your enriched, verified list from Clay with all personalization columns intact. Your outreach tool (Instantly, Smartlead, Lemlist, or Apollo's built-in sequences) will use these columns as variables in your email copy.
Simultaneously, push the list into your CRM — GHL, HubSpot, or whatever you're running — so that when a reply comes in, the contact record is already there, the pipeline stage is set, and the follow-up automation fires automatically.
The companies that don't do this step lose replies in their email inbox and never connect them to their sales process. A 10% reply rate means nothing if 40% of replies never make it into a pipeline.
Common Mistakes When Using Apollo and Clay
- Building lists too large: A 5,000-contact list that isn't meaningfully segmented produces generic outreach. Better: three lists of 500 with different angles.
- Skipping enrichment and sending raw Apollo data: Raw data produces generic copy. Generic copy produces sub-1% reply rates.
- Over-automating the personalization: Clay-generated personalization that feels robotic is worse than no personalization. Test every generated line before sending at scale.
- Not verifying before send: Apollo's data is good but not perfect. Skipping secondary verification will cost you domain reputation.
- Building one massive list instead of multiple segmented lists: A list of 'tech companies with 10–500 employees' is not a list — it's a category. Split by role, by vertical, by trigger, and write different copy for each.
What a Good List Produces
A well-built Apollo + Clay list with proper enrichment, verification, and personalized copy should produce:
- Open rate: 45–65% with proper deliverability setup
- Reply rate: 5–15% depending on ICP fit and copy quality
- Positive reply rate (interested prospects): 2–8% of sends
- Meetings booked: 1–4% of sends over the full sequence
On a 1,000-contact list, that's 10–40 booked meetings from a single campaign. That's the range a well-executed Apollo + Clay build can produce — consistently, repeatably, without ad spend.
Want us to build your next lead list?
We build Apollo + Clay lists for clients every week — verified, enriched, CRM-ready, and connected to outreach sequences that book meetings.
Explore Lead Generation →