Waterfall Lead Enrichment — Clay Alternative, Emails & Phones avatar

Waterfall Lead Enrichment — Clay Alternative, Emails & Phones

Pricing

from $3.20 / 1,000 person resolved (profile)s

Go to Apify Store
Waterfall Lead Enrichment — Clay Alternative, Emails & Phones

Waterfall Lead Enrichment — Clay Alternative, Emails & Phones

Clay alternative for list enrichment: upload a CSV with whatever you have (emails, LinkedIn URLs, names with a company website, or just company domains) and get every row back enriched: profile, email, mobile number, headcount, industry, HQ and funding. Misses are free.

Pricing

from $3.20 / 1,000 person resolved (profile)s

Rating

0.0

(0)

Developer

B2B Enrich Search

B2B Enrich Search

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

5 days ago

Last modified

Share

Enrich a list the way Clay does, without a seat or credits. Upload the CSV you already have: emails, LinkedIn URLs, names with a company website, or just company domains. Every row comes back enriched, and you pay only for the rows that were found.

What does Waterfall Lead Enrichment do?

It takes a spreadsheet with whatever columns you happen to have and fills in the rest. Each row is answered by the strongest key it carries, falling through to the next one when a cell is empty or malformed:

  1. email address
  2. LinkedIn profile URL
  3. social handle (GitHub, X/Twitter, Facebook)
  4. full name, plus the company website when the row has one
  5. company website alone: the row is a company, not a person

A person row comes back with the profile (current title, company, location, career and education) and, with contacts on (the default here), the email address and mobile number that reach them today.

A company row comes back with the company's LinkedIn page, headcount, industry, country, HQ, founding year and last funding round.

One file can mix both. A CRM export where some rows have a contact and some only an account domain works as it is.

Why "waterfall"

Table-enrichment tools chain several lookups and keep the first one that answers. This Actor does the same over one database: email first, then the profile URL, then the handle, then name + company website. You do not have to clean the file or split it by column first. A cell that is not usable is skipped and the next key is tried, and a row with nothing usable comes back as a free invalid row that says why.

Input

{
"csv": "email,full_name,company_website\nsatya.nadella@microsoft.com,,\n,Sundar Pichai,google.com\n,,stripe.com",
"contacts": true
}

csv: upload a file, paste rows or link a CSV (up to 50,000 rows). Recognized columns: email, profile_url / linkedin_url, github, twitter, facebook, full_name (or first_name + last_name), and domain / website / company_website. Other columns are ignored.

contacts: on by default. Adds the email address and phone that reach the person today. Off, person rows ship as profiles at the lower price.

mustHave: deliver and pay only for people who have all of these (email, personalEmail, workEmail, currentWorkEmail, phone, github, twitter, facebook). A person who lacks one is a free missing_required row that names nobody. Company rows are not affected.

compact: a short row for AI agents (about 2 KB per person instead of 10+ KB). Same price.

Output

One row per input row, tagged with its CSV record number in _input.row (the header is record 1), so the result joins back onto your file. Values below are made up.

A person row with contacts:

{
"_status": "found",
"_input": { "row": 3, "full_name": "Jane Doe", "domain": "acme.example" },
"_tier": "contacts",
"fullName": "Jane Doe",
"jobTitle": "VP Sales",
"companyName": "Acme",
"profileUrl": "https://www.linkedin.com/in/jane-doe-example",
"location": "Austin, Texas, United States",
"email": "jane.doe@acme.example",
"emailType": "work",
"phone": "+15550100123"
}

A company row:

{
"_status": "found",
"_input": { "row": 4, "domain": "acme.example" },
"domain": "acme.example",
"companyName": "Acme",
"linkedinUrl": "https://www.linkedin.com/company/acme-example",
"employeeCount": 240,
"employeeRange": "201-500",
"industry": "Software Development",
"country": "US",
"hqLocality": "Austin",
"founded": 2014,
"hasFunding": true,
"lastRoundType": "series_b",
"lastRoundDate": "2025-03-12"
}

Every row that is not a result is free and says why in _note or _error: not_found, ambiguous (a name several people share, or a website several unrelated companies claim), invalid, profile_removed, duplicate (the same person or website twice in your file, answered once) and missing_required.

The Output tab has four views: Overview (people and companies in one table), Career & education, Contacts & signals and Company details.

Pricing

EventPriceWhen
Person resolved$0.0032a row resolved to one person, profile delivered
Person resolved with an email or phone$0.008contacts on and a contact that reaches the person today
Company resolved$0.0055, $0.0044 on higher Apify plansa company-only row resolved to one company
Not found, ambiguous, invalid, duplicate, missing_required$0always free, with a reason

A person whose only addresses are at earlier employers ships at the profile price. A charge fires only after the row is in your dataset, and a long run that the platform moves to another server resumes where it stopped instead of billing a row twice.

How it compares with Clay

Clay is a workspace: tables, many data providers, credits per enrichment and a seat price. This Actor does one part of that job: it fills a list from a single database, on Apify, pay per found row, with no account to set up. When you need the rows in a workflow, run it from n8n, Make, Zapier or the API, or let an AI agent call it. This Actor is not affiliated with Clay.

Use it with AI agents and MCP

Add it to Claude, ChatGPT, Cursor or any MCP client through the Apify MCP server:

https://mcp.apify.com?tools=b2bsearch/waterfall-lead-enrichment
  • The agent pays only for results. Every miss is a free row. Cap what one call may spend with maxTotalChargeUsd.
  • Rows explain themselves. _status says what happened, and _error or _note says why a row is not a result.
  • Compact rows for a context window. "compact": true keeps identity, current role, recent positions and contacts. Same price.

Which Actor in this family?

ActorInput → output
Waterfall Lead Enrichment (this one)any CSV of people and companies → profiles, emails, phones, firmographics
Bulk People EnrichmentCSV of people only → profiles, at the same prices
Company Enrichment by Domainlist of domains → company records
LinkedIn to Phoneprofile URLs, emails or names → mobile numbers
Decision Maker Email Findercompany domains → decision makers with emails
B2B Leads Finderfilters → new leads with emails

Large volumes

Paid Apify plans lower the per-result price on their own. Pulling more than 100,000 rows a month, or missing a field or filter you need? Open an issue titled Volume with the monthly count and the fields you want (no names or emails needed) and we answer in the thread.

Free Apify plan

A run started from a free Apify plan delivers the first 100 results and stops; the run's status line says so. Any paid Apify plan lifts the cap. The rows are the same rows a paid run returns.

Feedback and reviews

How did it go? A rating in the Reviews tab of this Actor tells the next buyer what to expect; we read every word, good or bad. Got a wrong or stale row? Open the Issues tab with the run ID. Issues are public, so leave out emails, phones and names; the run ID is enough for us to find the row. We check every report, fix what is ours to fix and answer in the thread.

Disclaimer

This Actor is an independent product. It is not affiliated with, endorsed by or sponsored by Clay, LinkedIn, GitHub, X/Twitter or Facebook. It does not access, crawl or scrape any of them at run time: answers come from our own database of publicly available professional data, and the network names only describe the kind of data it covers. To have a person's data removed, open an issue on this Actor with only the profile link — nothing else is needed, and it is removed from every listing.