Hunter.io is one of the most popular email finders for a good reason: it's fast, the UI is clean, and for a single named prospect at a known company it usually hands you a scored guess in a second. But "scored guess" is the phrase to sit with. The way Hunter finds an email is fundamentally different from crawling the company's site — and that difference, not price, is what should drive your choice. Let's pull the two engines apart.
Two engines, pointed opposite ways
How Hunter works: pattern + index + verify
Hunter maintains a crawled index of emails and, crucially, the pattern each domain uses — first.last@, flast@, first@, and so on. Ask it for "Jane Doe at acme.com" and it applies the known pattern to produce jane.doe@acme.com, attaches a confidence score, and runs a deliverability check. It is fast because the hard work is precomputed. The cost is epistemic: a high-confidence pattern guess is a probability, and for a person who uses a non-standard alias it can be confidently wrong.
How a contact crawler works: read what's published
A website-contact actor goes the other way. You give it domains; it visits the contact, about, team and support pages and extracts the addresses, phone numbers and social profiles the company has actually published. There's no inference — if support@acme.com is on the page, that's what you get. The trade is the mirror image of Hunter's: it finds real, published addresses, but it won't conjure a specific person's mailbox that the site never lists.
The monthly-cap problem
Hunter meters usage in monthly searches and verifications. Domain searches, finder lookups and verifications each draw on that allowance, and the free tier is modest. For steady, per-person research that's fine. But two situations break it:
- Volume. You scraped 8,000 business domains and want a contact for each. That can exceed a month's allowance, and you either upgrade a tier or split the job across months.
- Burstiness. You need nothing for three weeks, then a one-time pull. A monthly subscription means you pay through the quiet weeks to have headroom for the spike.
A pay-per-run actor sidesteps both: you pay for the domains you process this run, and a month with zero runs costs zero.
Feature-by-feature
| What you care about | Hunter.io | website-contact actor |
|---|---|---|
| Find one named person's email | Strong — pattern + score | Only if it's published on the site |
| Source of truth | Inferred pattern + crawled index | The live page, read at run time |
| Built-in verification score | Yes | No — returns what's published; verify downstream |
| Bulk domains → contacts | Capped by monthly searches | Native; pay per run |
| Pricing shape | Monthly search/verification quota | Per-run on Apify, no subscription floor |
| Pulls phones & socials too | Limited | Yes — emails, phones, social links |
| Good for a hands-off pipeline | Via API, within quota | Yes — the native use case |
Pick by the question you're answering
Reach for Hunter when…
- You already know who you want to email.
- You want a deliverability score before you send.
- Your volume is modest and steady, person by person.
- You value a polished UI for one-off lookups.
Reach for the crawler when…
- You have a big list of domains, not names.
- You want the real published address, not a guess.
- Your work is bursty and a monthly cap is wasteful.
- You also want phones and social profiles in one pass.
Crawling a batch of domains over HTTP
curl -X POST "https://api.apify.com/v2/acts/renzomacar~website-contact-finder/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"websites": ["acme.com", "notion.so", "smallshop.io"],
"maxDepth": 2,
"includePhones": true,
"includeSocials": true
}'
The response is one record per domain with the emails, phones and social links the site actually publishes. Add &format=csv to the dataset URL for a spreadsheet. Because it reads live pages, run it again next quarter and you'll catch the contact details that changed — without spending a search credit on every recheck.
Turn a list of domains into real, published contacts
No monthly search quota. Feed in websites, get back the emails, phones and socials they actually publish, as clean JSON or CSV. Pay per run on Apify — free credits to start.
Try the website-contact actor → Or get done-for-you leadsBe honest: it's not a verifier
One thing Hunter does that a crawler does not: tell you whether an address will bounce. If pre-send deliverability scoring is central to your workflow, that's a real point for Hunter, or for pairing the crawler's output with a dedicated verification step. The crawler's job ends at "here is what the company published" — clean input for whatever verification you run next. Use the right tool for the right half of the job, and you'll stop overpaying for the half you don't need.
Disclosure: the links to Apify on this page are affiliate links. If you create a paid account through them we may earn a commission, at no extra cost to you. We recommend Apify because we build and ship the website-contact-finder actor on it ourselves. Hunter.io's features and limits are described in general terms; check hunter.io for current plan allowances. Always honor anti-spam law and only contact people you have a lawful basis to reach.