Free tools / Email extractor
Free email extractor: pull every address out of text
Published November 6, 2026. Comparison data: 688,330 addresses in 45 Sales.co business email lists, counted between September 3 and October 21, 2026. Your text stays in your browser.
Paste any text below and the extractor pulls out every email address, including spelled-out ones like jane [at] firm [dot] com. It removes repeats, sorts by domain and splits business addresses from free-mail and role inboxes, then sets your free-mail share beside the 36.5% median of our business lists, based on 688,330 addresses. It is free, with no signup.
For marketers, recruiters and small business owners with a messy page, thread or document. The tool is free. If you need contacts for a whole industry, Sales.co's business email lists are $295 one time each.
Your free-mail share: 14.3% (1 of 7). The median Sales.co business list is 36.5% free-mail (45 lists, 688,330 addresses, counted between September 3 and October 21, 2026).
| Address | Domain | Type |
|---|---|---|
| carla@brightpathlaw.example | brightpathlaw.example | Business |
| office@brightpathlaw.example | brightpathlaw.example | Role inbox |
| jane.sample.salon@gmail.com | gmail.com | Free-mail |
| info@harborviewdental.example | harborviewdental.example | Role inbox |
| owner@harborviewdental.example | harborviewdental.example | Business |
| mike@peakroofingco.example | peakroofingco.example | Business |
| dave@ridgelinehvac.example | ridgelinehvac.example | Business |
The extractor needs JavaScript to read your text. The example above shows what it returns.
What this page adds: it reads spelled-out addresses that a plain pattern match skips, and it tells you whether the result looks like a business list. Across 688,330 addresses in 45 Sales.co lists, the median list is 36.5% free-mail, so a pasted page far above that is likely full of personal addresses.
How to read the result
- Business: a named person on a company domain.
- Free-mail: Gmail, Yahoo, Outlook, AOL, iCloud, Comcast and the other domains we count on our own lists.
- Role inbox: an address for a job, such as info@ or office@. On a free-mail domain it counts toward the free-mail share too.
- Repeats removed: the same address twice, capital letters ignored.
Worked example
The text in the box is a short thank-you note from an event. It holds 8 addresses, one of them spelled out (mike [at] peakroofingco [dot] example) and one repeated. The extractor keeps 7 unique addresses across 5 domains: 4 business, 2 role inboxes and 1 free-mail. The free-mail share is 1 of 7, or 14.3%.
What to do next
- Run the result through the email list cleaner to catch typos and repeat Gmail inboxes.
- Check signups with the disposable email checker.
- Use the email format finder when you have a name and a domain and no address.
Method and sources
The tool matches the common shape of an address, then reads [at], (at) and the same forms of dot. Free-mail domains are the same 38 domains we use to count our lists. Comparison data: 688,330 addresses in 45 Sales.co lists, counted between September 3 and October 21, 2026, as printed on the list cleaner. Read November 6, 2026.
FAQ
How do I extract email addresses from text?
Paste the text into the box and press Extract. The tool lifts every address, removes repeats and sorts the rest by domain. Download the result as a CSV or copy it.
Can it read addresses written as name [at] company [dot] com?
Yes. It reads [at] and (at), and the same forms of dot, so addresses spelled out to dodge scrapers come through. The example above has one.
Does my text leave my browser?
No. The extractor runs in your browser, so the text you paste stays on your device.
Is the email extractor free?
Yes. It is free with no signup and reads up to 5 million characters at a time.
Can I email the addresses I extract?
Check the rules first. In the US, CAN-SPAM covers commercial email and requires a working opt-out and a real postal address, and other countries are stricter. An address published on a page is not permission to email it in every country.