Email extractor for link building outreach
Paste the prospect websites you are writing to and get the contact addresses each one publishes, with the exact page each address came from and the checks we ran on it.
Find the email addresses a website publishes
How it works
This email extractor reads what a site publishes about itself. It does not guess at addresses, and it does not go looking for sites on your behalf.
Paste the websites you are writing to
One domain or URL per line. You name every site that gets read, and the tool reads nothing else.
The crawler reads the site's own pages
Home, contact, about, team, author, write-for-us, advertise and press pages, plus the links in the footer, a little at a time, with at least a second between requests to the same host. A page that blocks the crawler is reported as blocked, never worked around.
Read one row per address, or take the CSV
Each address comes back with the page it was found on, the page type, and the checks we ran on it. The whole batch downloads as a CSV file.
What the labels mean
Every row carries the labels below. We check the format of the address, and whether the domain publishes an MX record that accepts mail. That is all the labels describe. It does not tell us whether one particular mailbox exists, and we do not test one: nothing here connects to a mail server.
- Valid format
- The address is a syntactically valid email address.
- Domain accepts mail (MX found)
- The domain publishes an MX record, so it is set up to receive mail.
- Domain has no MX, A record found
- No MX record, but the domain resolves to an A record.
- No mail server found
- No MX record and no A record, so there is nothing there to receive mail.
- Invalid format
- The address fails the syntax check, so it is shown but not usable as written.
- Disposable domain
- The domain is on a list of throwaway mailbox providers.
- Role address
- The local part is a shared mailbox such as info or sales, not a person.
- Free-mail address
- The domain is a consumer mail provider, so the address may be a personal one.
- Personal name
- The local part looks like a person's name.
How we crawl, and what we never do
The crawler obeys robots.txt on every host it visits, and it identifies itself as OutreachEmailFinderBot. What it is and why it is on a site is on the bot page.
- It sends nothing to a found address. There is no follow-up mail, no sending tool and no list sold on.
- It reads only the domains you paste in. Nothing is discovered by a search engine, by a name, or by following links off your list.
- A page robots.txt disallows is skipped and reported as blocked by robots.txt, never dropped in silence.
- It never connects to a mail server to test an address, and it never works around a bot wall. A page a site has deliberately hidden behind protection is skipped, not unscrambled, and a site that blocks the crawler is reported as blocked.
- What you do with the contacts you find is the terms of use line above the button, and the terms.
Plans by the domain
The free plan covers 5 domains a day per IP address, with no signup. Pro is $19 a month for 1,000 domains. Agency is $49 a month for 5,000. There is no trial to start and no credits: the free plan is the trial, and one domain is the only unit we charge in. Every address a domain publishes, with its checks, is included.
Frequently asked questions
What counts as a domain?
A domain counts when the crawler fetched at least one of its pages and read what the site published. It does not count when the line is not a readable public hostname, when the same domain appears twice in one batch, when the host is refused by the safety guard, when the domain does not resolve, or when robots.txt blocks every page we would have read. A request refused for a rate limit is never charged.
How long are the results kept?
Results from a batch you filed while signed in, and results from an API batch, are deleted 30 days after the batch runs. Results from a request with no account are deleted after 24 hours. Each row keeps the page it was found on for as long as the row lives, which is what answers a data request, and results are never pooled across users into a shared contact database.
Why do you not call an address verified?
We check the format of the address, and whether the domain publishes an MX record, which says the domain is set up to receive mail. Neither check can see inside a mailbox, so we label exactly what we measured and put no accuracy figure on it. Nothing here connects to a mail server to test an address, and nothing is ever sent to a found address.
Does the crawler obey robots.txt?
The crawler obeys robots.txt on every host it visits. A page robots.txt disallows is skipped and reported as blocked by robots.txt, never dropped in silence. It identifies itself as OutreachEmailFinderBot, and it reads only the domains you paste in: nothing is discovered by a search engine, by a person's name, or by following links off your list.
How does someone get their address out of the results?
Every result links to a public opt-out form. An address sent there goes on a suppression list kept only as a SHA-256 hash, and we never return it again. We rely on legitimate interest for business contact discovery, on pages a site publishes itself, and the privacy page sets out that reasoning. An EU sender is responsible for their own notice to the people they contact.
Do the paid plans include the API?
The REST API is on the paid plans: Pro at $19 a month covers 1,000 domains, and Agency at $49 a month covers 5,000. The API runs the same batches as the site, and a request refused for a rate limit is never charged.