GTM Engineering

Clay waterfall enrichment:how to get more coverage for less cost

Clay waterfall enrichment stacks data providers to maximise contact coverage without blowing your budget. Here's how to set it up properly.

Most B2B teams treat data enrichment like a single-vendor problem. You pick a provider, pay for credits, and accept whatever coverage rate they give you. But no single provider covers everyone. Every email finder has gaps: contacts one provider misses, another one has. Clay waterfall enrichment fixes this by stacking providers in sequence until you get a match.

The waterfall approach is available on paid Clay plans. It's not complicated to set up, but most teams configure it wrong and burn credits on redundant lookups. This guide walks through how to structure a waterfall that maximizes contact data enrichment coverage without wasting budget.

What Clay waterfall enrichment actually does

A waterfall in Clay runs multiple data enrichment providers in order, stopping as soon as one returns a valid result. You define the sequence. Clay checks the first provider. If it finds the contact, it stops. If it doesn't, it moves to the next provider in the stack.

This matters because provider coverage varies by geography, company size, and role. No single provider wins everywhere. A finder that's strong on one segment can be weak on another, so stacking providers like Prospeo, Datagma, Findymail, and the rest lets each one fill the gaps the others leave.

The waterfall approach gets you higher coverage without paying for every provider on every contact. You only burn a credit when a provider actually returns data.

How to structure your waterfall sequence

Provider order determines cost. Two rules keep it efficient.

First, start with the providers you already have API access to. If you hold direct API keys with a provider, those lookups draw down credits you've already paid for instead of consuming Clay credits. Put them at the top of the waterfall so you exhaust existing API budget before Clay starts billing you.

Second, order the rest by cost per row. Cheaper providers run first; the most expensive runs last, only on the contacts everyone else missed. SMARTe, at 6 Clay credits per row, is always last. Clay only calls it when every other provider in the stack has failed.

Prospeo is a preferred provider in our stack: dependable coverage at a low per-row cost, so it sits near the top once your own-API providers are exhausted.

Here are the providers we use and their current cost per row in Clay credits.

Provider

Cost per row (Clay credits)

Icypeas

0.2

Enrow

0.2

LeadMagic

0.3

Hunter

0.4

Datagma

0.4

Findymail

0.5

Prospeo

0.5

Wiza

0.5

Kitt

1.0

Dropcontact

1.0

SMARTe

6.0

Sequence these cheapest-first, placed after any providers you're accessing through your own API keys, and keep SMARTe at the bottom.

Setting up the waterfall in Clay

Open your Clay table and add an enrichment column. Select "Find contact email" or "Find contact phone" depending on what you're sourcing. Clay lists all available providers. Instead of picking one, select "Use waterfall."

You'll see a draggable list of providers. Reorder them to match the logic above: own-API providers first, then cheapest to most expensive, SMARTe last. Clay will execute them in the order you set.

Under advanced settings, configure your match criteria. This tells Clay what counts as a valid result. For email, you typically want "verified" or "catch-all" emails included. For phone, decide whether you want mobile-only or accept landlines.

Turn on "Stop on first match." This prevents Clay from continuing down the waterfall after it finds a result. Without this, you'll burn credits on providers you don't need.

Validate every result through NeverBounce

A waterfall gets you emails. It doesn't guarantee they're deliverable. Providers return results at different confidence levels, and catch-all domains in particular pass through as "found" without being confirmed as real, working inboxes.

Run every email your waterfall produces through an email validator, like NeverBounce, before you use it. Add a NeverBounce validation step after the enrichment column, or export and validate in NeverBounce, then keep only the addresses that come back valid. This holds your bounce rate down, protects sender reputation, and stops you from paying downstream sequencer costs on addresses that were never going to land.

Treat validation as a required step, not an optional one. Waterfall output is raw material; NeverBounce is what makes it safe to send.

Budget control with credit caps

Waterfalls improve coverage, but they can also blow your budget if you run them on large lists without limits. Set a per-provider credit cap in Clay's workspace settings.

Go to Settings > Integrations > [Provider Name] > Credit Cap. Define a monthly limit for each provider in the waterfall. Clay will stop using that provider once it hits the cap, even if the waterfall logic would call it.

This forces you to plan your list size against your budget. If you cap a top-of-waterfall provider like Icypeas at a set number of credits per month, Clay enriches against it until the cap, then moves down to the next provider in the stack. Scale your list pulls accordingly.

Credit caps also prevent runaway costs from bad configurations. If you accidentally set up a waterfall without "Stop on first match," the cap will limit the damage.

When to skip the waterfall and use a single provider

Waterfalls add latency. Each provider in the sequence takes time to query, even if it returns no result. For real-time enrichment workflows where speed matters more than coverage, use a single provider.

This applies to:

  • Website visitor identification tied to chat tools

  • Form fills that trigger instant Slack alerts

  • API-based enrichment inside your CRM for inbound leads

It also applies when you know your ICP sits entirely within one provider's strength. If a single provider reliably covers the audience you're targeting, a waterfall adds latency and complexity for little extra return. Test one provider against a sample of your list first; only build the waterfall if the single-provider match rate leaves a gap worth filling.

Common waterfall mistakes that waste credits

Running the waterfall on dirty data. If your input list has invalid domains, mismatched job titles, or outdated companies, every provider in the waterfall will fail. You'll burn a credit at each provider in the stack and get nothing back. Clean your list first. Use Clay's company enrichment to validate domains before running contact enrichment.

Not deduplicating before enrichment. If the same contact appears twice in your table, the waterfall runs twice. Clay doesn't dedupe automatically. Add a unique identifier column and filter duplicates before you enrich.

Using "contains" matching instead of "exact" matching on job titles. Loose matching inflates false positives. You'll enrich contacts who don't fit your ICP, then filter them out later, after you've spent the credits. Tighten your matching logic upstream.

Skipping validation. Waterfall output is not verified email. If you push it straight into a sequencer without running NeverBounce, you'll bounce on catch-all and stale addresses and damage sender reputation. Validate first.

Ignoring provider-specific rate limits. Some providers throttle API requests during peak hours. If your waterfall hits a rate limit, Clay pauses the entire table until the limit resets. Spread large enrichment runs across off-peak hours or split them into smaller batches.

How Partner UP uses waterfalls in client work

We run a waterfall on every mid-market outbound build, and the ordering logic is always the same. Providers we already hold API credits with go first, then the rest cheapest to most expensive by Clay credit, with SMARTe reserved for last. Prospeo sits near the top for its coverage-to-cost ratio.

Every address the waterfall returns goes through NeverBounce before it reaches a sequencer. We would rather drop an unverified contact than bounce on it.

The point of the waterfall isn't to run every provider on every contact. It's to spend the cheapest credit that returns a valid, verified result, and to reach for expensive providers like SMARTe only on the contacts nothing else could find.

FAQ

Does Clay charge extra for waterfall enrichment?

No. You only pay for the credits consumed by each provider that returns data. If the first provider finds the contact, you pay that provider's rate. If it misses and the next one finds it, you pay the next provider's rate. There's no additional Clay fee for using the waterfall feature.

Can I use waterfalls with phone number enrichment?

Yes. The setup is identical to email waterfalls. Select "Find contact phone" instead of "Find contact email" and configure your provider sequence. Phone coverage is generally lower than email coverage across providers, so expect lower match rates than you'd see on an email waterfall.

How do I know which provider found each contact?

Clay logs the provider name in the enrichment column. Click into any enriched cell and you'll see which provider returned the data. You can also add a formula column that extracts the provider name for reporting and cost analysis.

Partner UP works with GTM and RevOps teams on GTM Engineering, including Clay table builds, data enrichment strategy, and integration with HubSpot and outbound sequencers like HeyReach and Lemlist. If you're running outbound at scale and need help structuring your data workflows, reach out at hello@partneruphq.com or book a call at calendly.com/eleilademir.

Lean GTM. Clean data. Built to run.

GTM systems designed to stay simple as teams and volume grow.

Certifications

Partners

© 2026 • Partner Up Consulting LLC

A partner of thegoodpeople.studio