How the contact finder works
Drop in a list of websites. Get back a clean spreadsheet with one contact email per site, found four different ways. No half-rows, no guesses, no made-up addresses.
A look under the hood: the four places it looks, the order it looks in, and the strict rules that keep the output clean enough to drop straight into your pipeline.
The short version
You hand it a list of domains. For each one it runs the same four-step search, in the same order, and stops the moment it finds a real email: it reads the site itself, then checks Google, then the company's Facebook page, and finally a contact database for business sites. The result is a two-column sheet, Website and Email, with exactly one row per domain you gave it. If a site genuinely has no findable email, that row gets a single slash, never a blank and never a guess.
That's the whole job. The rest of this page is what each step does, and why the output is as strict as it is.
The black path is the fallthrough: each step only runs if the one before it came up empty. The green path is the exit. The very first real email wins, and the search for that domain stops.
Four places to look, in a fixed order
The order isn't arbitrary. It goes from the most reliable and cheapest source to the last resort, so the best answer is usually found early and the expensive checks only run when they're needed.
1. The site itself
This runs for every domain and it's where most emails come from. It reads the pages people actually put contact details on: the homepage, the contact page, the about page, and the footer of each. It's built to find addresses even when they're hidden, the "name at company dot com" tricks, encoded characters, addresses split up in code, and the standard ways sites try to dodge scrapers. If a site is genuinely contactable, this step usually catches it.
2. Google
If the site didn't surface an address, the next stop is a plain Google search for that domain's email. Often the answer is sitting right there in the search result snippet, with no need to visit another page. It reads the snippet, takes the email if it's there, and moves on.
3. The Facebook page
Plenty of small and local businesses keep a fuller contact block on their Facebook page than on their own site. So the third step finds the official Facebook page for the domain and reads the public "about and contact" section. It's a single, bounded look, no login and nothing intrusive, just the public info the business chose to post.
4. A contact database, for business sites only
The last resort is a professional contact database, and this is the one step that doesn't run for everyone. It's reserved for sites that are clearly a company, a software product, or a business selling something, the kind of domain such a database actually covers. For a personal blog, a news site, or a hobby page, this step is skipped on purpose, because it wouldn't have the answer and the lookup would be wasted. Those domains simply come back with a slash.
The shape that makes it trustworthy: whatever goes in comes back the same length. Five hundred domains in, five hundred rows out, each one accounted for.
The output is locked on purpose
The result is two columns and nothing else: the website, and one email. The format is deliberately rigid so it drops straight into your next step without any cleaning. Strictness here is a feature, because a contact list you have to tidy up by hand isn't really finished.
So the rules are firm. The website column is normalised to a plain domain, no https, no www, no trailing slash. The email column holds a single best address, picked sensibly when a site has several, a real company address over a generic free inbox, an editorial address for a publication. And when nothing is found, the cell holds one slash. Not "not found", not "N/A", not an empty space you can't tell apart from a mistake. Just a slash, so you can see at a glance which sites need a human's attention.
Two more guarantees hold the list together. Every domain you submit appears in the output exactly once, with no duplicates and nothing quietly dropped. And the addresses are sanity-checked along the way, so the obvious junk, placeholder addresses like "you at example dot com", image filenames that look like emails, throwaway no-reply boxes, gets rejected rather than passed off as a real contact.
A contact list is only worth anything if you can trust every row. So this one is built to hand you a clean slash where it found nothing, instead of a confident guess.
The dials: scale and reach
The waterfall itself is fixed, that's the point of it, but a few things around it can be tuned to your volume and how hard you want it to push.
| Dial | What it controls | Turn it up for |
|---|---|---|
| Batch size | How many domains are worked in parallel at once. The default fans the list out into chunks so a big list doesn't run one-at-a-time. | Clearing a large list faster |
| Patience on slow sites | How long it waits on sites that fight back (the heavily protected ones) before giving up on that page. | Squeezing more out of stubborn sites |
| Database reach | How aggressively the business-database step is used, which trades a little cost for a few more found emails on company sites. | Higher coverage when the list is mostly companies |
What you get, and where it stops
You get one clean spreadsheet, every domain accounted for, ready to use. What you don't get is anything you didn't ask for: no extra columns, no opinions about the sites, no outreach. It does one job completely, and then it hands the list back to you.
That narrow focus is the whole design. By refusing to also filter, score, personalise, or send, it stays simple enough to be reliable, and predictable enough that you can build the rest of your process on top of it. The machine does the patient, four-way searching across hundreds of sites. You decide what to do with the contacts it finds.