I ran the same 350 B2B prospects through four different waterfall configurations last month. Same list. Same target criteria (VP/Director level, 50-500 person SaaS companies in the US). Four different enrichment setups.
The results killed some expensive assumptions I'd had about stacking data providers.
What "waterfall enrichment" actually means in practice
You query Provider A for an email. If it returns nothing — or returns a result you can't verify — you automatically fall through to Provider B. Then C. You stop when you get a hit, or when you've exhausted your stack.
Every platform selling enrichment right now claims 90%+ coverage. The math only works if you run a waterfall. But nobody tells you which order to stack providers, what the real marginal gains look like after provider #3, or how fast the cost-per-verified-contact climbs as you add layers.
So I ran the test.
The four configurations I tested
Config 1 (baseline): Apollo only. Single-provider, no fallback.
Config 2: Apollo → People Data Labs. Two-provider waterfall with API calls sequenced manually.
Config 3: Apollo → People Data Labs → Hunter.io. Three-provider, still manual.
Config 4: Four-provider waterfall built in Clay, sequencing Apollo → People Data Labs → Hunter.io → Snov.io, with ZeroBounce verification at the end.
I defined a "hit" as: email found + passes ZeroBounce verification as valid (not catch-all, not risky). Bounce rate measured on a 60-email sample sent through a warmed domain.
The actual numbers
| Config | Providers | Verified Email Find Rate | Bounce Rate (60-email sample) | Cost per Verified Contact |
|---|---|---|---|---|
| Config 1 | Apollo only | 61% | 8.3% | ~$0.04 |
| Config 2 | Apollo → PDL | 72% | 9.1% | ~$0.09 |
| Config 3 | Apollo → PDL → Hunter | 79% | 11.2% | ~$0.14 |
| Config 4 | Clay 4-provider | 83% | 13.8% | ~$0.31 |
The find rate curve flattens fast. Going from 1 to 2 providers buys you 11 points. From 2 to 3 is another 7 points. From 3 to 4 is 4 points — and you're spending twice as much per contact.
The bounce rate pattern surprised me more. Single-provider Apollo had the lowest bounce rate. As I added layers, bounce rate climbed. My working theory: the contacts that no single provider can confidently find are probably harder to reach for a reason — job changes, outdated records, abandoned inboxes. The tail of a waterfall tends to be stale data.
Order matters more than tools
I ran a second test with the same 3-provider stack but reordered: People Data Labs → Apollo → Hunter.io.
Find rate dropped to 74%. Same providers, different order, 5 points worse.
Why? Apollo has far better coverage for US SMBs in the 50-500 employee range — which was my entire list. PDL is broader and excellent for large enterprises and international contacts, but on this specific ICP it was missing contacts that Apollo had. Starting with the provider that best matches your ICP's profile is the single highest-leverage configuration decision.
The general ordering heuristic I use now:
- ICP-specific database first. For US SMB SaaS: Apollo. For enterprise, EU, or data-science-heavy companies: PDL. For agency/consultant targeting: Hunter.io.
- Broad API second. PDL or Clearbit (RIP live API, but Clearbit data is now in HubSpot). Gets you contacts your primary database misses.
- Niche third. Whatever fills your specific segment gaps — Lusha for phone, Hunter.io for domain-pattern inference on small companies, RocketReach for executives.
The cost math most guides skip
Everyone talks about find rates. Nobody publishes cost-per-verified-contact at scale.
At 10,000 contacts/month:
- Config 1 (Apollo single): ~$400 in API credits. 6,100 verified emails. ~$0.066/verified
- Config 3 (3-provider manual): ~$1,400 across Apollo + PDL + Hunter plans. 7,900 verified emails. ~$0.177/verified
- Config 4 (Clay 4-provider): ~$3,100 (Clay subscription + provider credits). 8,300 verified emails. ~$0.373/verified
Clay's waterfall gives you 2,200 more verified emails than going Apollo-only — but at $2,700 extra. That's $1.23 per incremental verified contact. For most outbound sequences, a verified email is worth $1.23 only if your reply-to-booking rate is high and your ACV justifies it.
At 50,000 contacts/month, the math shifts because Clay's pricing tiers down significantly. Under 10,000/month, you're often better off with a 2-provider stack and putting the savings into better copy.
When waterfall doesn't save you
Three situations where stacking providers underperformed:
1. Non-SaaS B2B. My 350-person test list was SaaS-only. I ran a 100-person test against manufacturing companies afterward. Apollo single-provider dropped to 41%. Adding PDL got me to 53%. Hunter.io got me to 59%. Still miserable. Industrial and manufacturing companies are chronically underrepresented in commercial databases. No waterfall fixes thin underlying data.
2. Companies under 20 employees. Enrichment vendors cover decision-makers well. They cover the founder of a 6-person startup poorly. If your ICP skews very small, Phantombuster + LinkedIn is often more reliable than any commercial database stack.
3. EMEA mid-market. GDPR compliance requirements mean EU databases have less data on individuals. Cognism is notably better here than Apollo or PDL for UK and DACH contacts — but you can't tack it onto a US-configured waterfall and expect it to fill EU gaps. EU lists need a separate enrichment flow entirely.
The verification step most people skip
I've seen teams build elaborate waterfalls and skip email verification because "we're already paying for verified data."
That's the wrong mental model. No provider verifies at the moment you query — they return their best guess based on when they last crawled. ZeroBounce and NeverBounce both run SMTP checks in real time. Run every email through verification after your waterfall and before sending. I keep my threshold at "valid" only — not "catch-all," not "risky." That alone drops my bounce rate from the 12-14% range down to under 3%.
The verification cost (~$0.003/email at volume) is one of the highest-ROI spends in the entire stack.
What I actually use
For most lists: a two-provider stack — Apollo first, People Data Labs second — with ZeroBounce verification. Covers 70-75% of a typical US SaaS list at around $0.10/verified contact. The marginal gain from a third provider rarely justifies the cost for sequences under 5,000 contacts.
For high-volume lists (20,000+ contacts/month) or clients who need maximum coverage: Clay with a 4-provider waterfall. The time savings on orchestration alone justify the platform cost at that scale.
For phone numbers specifically: Lusha and Kaspr are my primary sources. PDL's phone data is solid for US enterprise but thinner for mid-market. Cognism wins for European mobile numbers — nothing else is close.
For contacts sourced from Twitter or Facebook — leads from social OSINT, community lists, or manual prospecting off social profiles — Ziwa enrichment has outperformed PDL's direct API on this specific use case, probably because the underlying data is indexed differently.
One thing I stopped doing: starting with the cheapest provider first. The logic of "get the easy ones cheap, pay for fallback" sounds reasonable but kills your bounce rate. Put your highest-confidence provider first. Let price efficiency be a tiebreaker between providers of equal quality — not the primary ordering logic.
Top comments (0)