π§ Extract Emails From Text (Free Email Address Extractor)
By Shihab Mia Β· Updated 2026-07-13
Paste some text and press Extract emails.
To extract emails from text, paste your content into the box and press Extract emails. This free email extractor scans the text with an email pattern, pulls out every address such as [email protected], removes duplicates automatically, and hands you a clean list you can copy in one click. It works on web pages, chat logs, spreadsheets, signature blocks, code, and PDFs you paste in, and it runs entirely in your browser so nothing you paste is uploaded or stored. Choose newline or comma output, lowercase every address, or sort the list alphabetically, then copy the deduplicated result straight into a spreadsheet, script, or the BCC field of your email client.
What is the Email Extractor?
Every email address follows the same predictable shape defined by the internet standard RFC 5322: a local part, an at sign, and a domain that ends in a top-level part such as com, org, or io. In [email protected] the local part is jane.doe, the domain is example.com, and the top-level part is com. Because that structure is so consistent, one text pattern (a regular expression) can scan any amount of text and reliably find the addresses inside it, even when they are buried in sentences, tables, HTML, or source code. The common extraction pattern is a run of letters, digits, and the symbols dot, underscore, percent, plus, and hyphen, followed by an at sign, a domain of letters, digits, dots and hyphens, and a top-level part of at least two letters.
The extractor reads your text from start to finish and collects every substring that fits that email shape. It then deduplicates the matches. Two entries that differ only in letter case, for example [email protected] and [email protected], point to the same mailbox, so the tool treats them as one and keeps the first form it sees, or the lowercased form if you tick the lowercase option. The counters report how many addresses were found in total, how many are unique, and how many duplicates were removed, so you always know exactly how much the tool cleaned up.
The separator option controls only the layout of the output, never its contents. Newline gives you one address per line, which drops cleanly into a spreadsheet column, a text file, or a script that reads line by line. Comma gives you a comma-separated list that pastes straight into the To, CC, or BCC field of Gmail, Outlook, or Apple Mail. Sorting alphabetically groups addresses from the same domain together and makes long lists far easier to scan, compare against another list, or hand off to a teammate.
Extracting an address is not the same as validating it. This tool confirms that a string matches the syntax of an email address, but it cannot tell whether the mailbox actually exists, accepts mail, or belongs to a real person. Syntax and deliverability are two separate checks. A perfectly formatted address like [email protected] is valid in shape yet may bounce, so treat the extracted list as raw input for a verification service, not as a confirmed sending list.
There is also a responsibility layer that matters as much as the technical one. Pulling addresses out of text does not grant you permission to email the people behind them. Anti-spam laws such as the US CAN-SPAM Act and the EU GDPR restrict how you may collect and use personal contact data, and mailbox providers penalize senders who message people who never opted in. Use this extractor to clean up lists you already have the right to contact, to deduplicate recipients, or to pull addresses from your own exports, not to build cold outreach lists from scraped pages.
When to use it
- Cleaning up a copied web page, directory, or PDF to grab just the contact addresses without the surrounding clutter.
- Turning a pasted block of email signatures or chat messages into a tidy, deduplicated mailing list.
- Pulling the unique recipients out of a long forwarded email thread so nobody gets messaged twice.
- Extracting addresses from a CSV, log, or database export when the column structure is inconsistent or broken.
- Deduplicating two contact lists by pasting both and comparing the unique counts before a merge.
- Auditing a document or codebase to see which email addresses are exposed in plain text.
How to use the Email Extractor
- Paste or type the text that contains email addresses into the input box.
- Press Extract emails to scan the text and list every address found.
- Read the counters to see total found, unique addresses, and duplicates removed.
- Pick a separator: newline for one address per line, or comma for an inline list.
- Optionally lowercase every address or sort the list alphabetically for easier scanning.
- Press Copy results to put the cleaned, deduplicated list on your clipboard.
Formula & method
Worked examples
A short note containing three addresses, one of them repeated.
- Input: "Email [email protected] or [email protected]. CC [email protected]."
- Pattern finds 3 matches: [email protected], [email protected], [email protected]
- Deduplicate: [email protected] appears twice, so 1 duplicate is removed
- Unique list: [email protected], [email protected]
Result: Total found 3, unique 2, duplicates removed 1
A pasted signature block where two addresses differ only in case.
- Input contains [email protected] and [email protected]
- Both reduce to the same key [email protected] when compared without case
- With Lowercase all ticked, the kept form is [email protected]
- Comma separator joins the result for a To field
Result: Output: [email protected] (1 unique, 1 duplicate removed)
A messy HTML snippet copied from a contact page.
- Input: "<a href=\"mailto:[email protected]\">[email protected]</a> and [email protected] (billing)"
- The pattern ignores the tags and the mailto prefix, matching only the address text
- Matches found: [email protected], [email protected], [email protected]
- Deduplicate the two identical [email protected] entries into one
Result: Total found 3, unique 2 ([email protected], [email protected]), duplicates removed 1
Parts of an email address using [email protected]
| Part | Value | What it is |
|---|---|---|
| Local part | jane.doe | The mailbox name, before the at sign |
| At sign | @ | The separator between mailbox and domain |
| Domain | mail.example.com | The mail server domain, after the at sign |
| Top-level part | com | The final segment, such as com, org, or io |
Separator options and where each one fits best
| Option | Output style | Best for |
|---|---|---|
| Newline | One address per line | Spreadsheets, scripts, text files |
| Comma | Addresses joined by commas | To, CC, or BCC fields in email clients |
What the extractor catches and what it skips
| Text in your input | Extracted? | Why |
|---|---|---|
| [email protected] | Yes | Standard, valid email syntax |
| mailto:[email protected] | Yes | The address inside the link is matched, prefix ignored |
| jane [at] example [dot] com | No | Obfuscated, not valid email syntax |
| jane@example | No | Missing a top-level part such as com |
| @example.com | No | Missing the local part before the at sign |
Common mistakes to avoid
- Expecting it to validate that an address is real. The tool checks that text matches the shape of an email address. It cannot confirm the mailbox exists or accepts mail. Always verify deliverability with a separate service before a real send.
- Pasting addresses written with at or dot spelled out. Addresses obfuscated as "jane [at] acme [dot] com" do not match the pattern, since they are not real addresses. Convert them back to standard form first, then extract.
- Assuming duplicates survive a case change. [email protected] and [email protected] are the same mailbox and count as one. If you genuinely need both forms kept, do not rely on the deduplication step.
- Sending to extracted lists without consent. Pulling addresses out of text does not grant permission to email them. Bulk messaging people who never opted in can breach anti-spam laws such as CAN-SPAM and GDPR and damage your sender reputation.
- Trusting a trailing dot or bracket that got included. If an address sits right against punctuation like "[email protected]." the trailing period is not part of the address. Scan the results for stray characters before you use them.
- Missing addresses hidden inside images or PDFs that were not pasted as text. The extractor only reads text you paste. An address shown in a screenshot or a scanned PDF is not selectable text, so it will not be found until you run OCR or type it in.
Glossary
- Email address
- A string of the form local@domain that identifies a mailbox, such as [email protected].
- Local part
- The portion of an address before the at sign, naming the specific mailbox at the domain.
- Domain
- The portion after the at sign that identifies the mail server, such as example.com.
- Top-level domain
- The final segment of the domain, such as com, org, net, or io, that sits after the last dot.
- Deduplication
- Removing repeated entries so each unique address appears only once in the list.
- Regular expression
- A text pattern used to find strings that follow a defined shape, here the shape of an email address.
- RFC 5322
- The internet standard that defines the format of an email address and its local and domain parts.
- Email validation
- Checking whether an address is correctly formatted and, separately, whether the mailbox can actually receive mail.
Frequently asked questions
How do I extract email addresses from a block of text?
Paste the text into the input box and press Extract emails. The tool scans the text with an email pattern, lists every address it finds, removes duplicates, and shows counts for total, unique, and duplicates removed. Then copy the list with one click.
Is this email extractor free to use?
Yes, it is completely free with no sign-up, no limits, and no watermark. Paste as much text as you like and extract addresses as many times as you need. Everything runs in your browser at no cost.
Does the extractor remove duplicate addresses?
Yes. It deduplicates the matches without regard to letter case, so [email protected] and [email protected] are treated as one address. The counters show exactly how many duplicates were removed.
Can I get the results separated by commas instead of new lines?
Yes. Choose the Comma option to get a comma-separated list that pastes straight into a To, CC, or BCC field, or choose Newline for one address per line that fits a spreadsheet column or script.
Is my pasted text private?
Yes. The extraction runs entirely in your browser using JavaScript. Nothing you paste is uploaded to a server or stored anywhere, so sensitive text stays on your device.
Does it check whether the email addresses actually work?
No. The tool confirms that text matches the shape of an email address, but it cannot tell whether a mailbox exists or accepts mail. Verify deliverability with a dedicated email verification service before sending.
Why are some addresses in my text not picked up?
Addresses written in obfuscated forms such as "jane at acme dot com", addresses missing a top-level part like jane@example, or text shown inside an image are not valid or readable email syntax, so they do not match the pattern. Convert them to standard text form first, then run the extraction.
Can I extract emails from a PDF or Word file?
Yes, indirectly. Open the file, select the text, and paste it into the input box. The extractor reads whatever text you paste. Scanned PDFs and images have no selectable text, so run OCR on them first before pasting.
Can I extract emails from a web page or its HTML source?
Yes. Paste the visible page text or the raw HTML and the tool matches only the address strings, ignoring tags, mailto prefixes, and surrounding markup. It returns the clean, deduplicated addresses.
Is it legal to use extracted email addresses for marketing?
Extracting addresses is legal, but emailing people who never opted in can violate anti-spam laws such as the US CAN-SPAM Act and the EU GDPR. Only contact addresses you have permission to reach, and always honor unsubscribe requests.