ToollyX
no sign-up Β· instant Β· free

Extract Emails from Text

Paste any text, document, or HTML page source and instantly extract every email address as a clean deduplicated list. Handles plain text and HTML mailto links.

ToolEmail Extractor
ProcessedBrowser-local
SourceText or HTML
DedupAuto
Sign-upNever
728 Γ— 90 β€” Leaderboard Ad
πŸ“
Input Text
πŸ“§
Extracted Emails
πŸ“§
Paste text to extract email addresses
728 Γ— 90 β€” Leaderboard Ad

How to Extract Email Addresses from Text

1Paste your source content β€” text, HTML, CSV, or any document β€” into the left panel.
2Email addresses appear instantly in the right panel, one per line, deduplicated.
3Use options to include HTML mailto links or toggle case-insensitive matching.
4Click Copy All to copy the list or Download to save as a .txt file.

Features

Instant extraction
Email addresses found and listed as you paste content.
Auto-deduplication
Same address appearing multiple times appears once in output.
HTML source support
Extracts from mailto: href attributes as well as plain text.
Count display
Shows total email addresses found in the source.
Copy or download
Copy all to clipboard or download as a .txt file.
Browser-local
No data is sent anywhere β€” your content stays private.
728 Γ— 90 β€” Leaderboard Ad

The Email Regex Pattern Explained

Email address detection uses a regular expression that matches the pattern specified by RFC 5322, simplified to practical real-world email formats. The pattern looks for: one or more characters in the local part (letters, digits, dots, hyphens, underscores, plus signs), followed by the @ symbol, followed by one or more characters in the domain part (letters, digits, dots, hyphens), followed by a dot and a top-level domain of at least two characters.

The pattern correctly matches: simple addresses ([email protected]), addresses with dots ([email protected]), addresses with hyphens ([email protected]), plus-tagged addresses ([email protected]), and numeric addresses ([email protected]). It does not match intentionally obfuscated formats like user[at]example.com or mailto links with JavaScript obfuscation.

Worth knowing why the pattern is simplified rather than a literal implementation of the spec: the official RFC 5322 grammar, written out in full, is a regular expression thousands of characters long that supports quoted local parts, escaped characters, and comments embedded inside the address β€” features that exist in the standard but appear in essentially zero real email addresses anyone actually uses. A pattern that tried to match all of that would be slower, harder to reason about, and would match a pile of syntactically-legal addresses that no mail server would recognise in practice. The simplified pattern here targets the 99% case on purpose.

Common Use Cases for Email Address Extraction

The most common use case is compiling contact lists from documents. Annual reports, conference programmes, directory PDFs, and exported spreadsheets often contain dozens of email addresses mixed with other text. Extracting them manually by eye is slow and error-prone; this tool finds all of them in seconds. After extracting, use the Remove Duplicate Lines tool if you have already-cleaned lists to merge, and Sort Lines to alphabetise the result.

Web page auditing is another common use. Paste the HTML source of a page to see which email addresses are publicly visible β€” this is useful for privacy audits (checking if personal addresses are exposed to scrapers) and for webmasters verifying their contact page markup.

Researchers and journalists also use extraction when working through public filings, leaked documents, or large text dumps where addresses are one data point among many β€” pulling every email address out first, before reading the document in full, is often the fastest way to get a sense of who's involved before diving into the narrative content.

Privacy and Data Handling

Email addresses are personal data in most jurisdictions. When using extracted email addresses, make sure you have a legitimate purpose and proper consent or legal basis for processing the data. This tool processes everything locally in your browser β€” no email addresses are sent to ToollyX servers, stored, or logged. The data never leaves your device.

If you are extracting emails from web page source code to audit your own site, this is entirely appropriate. If you are auditing email exposure on a web page you maintain, this is a legitimate security review. Using extracted email addresses for unsolicited bulk email (spam) is illegal in most countries under laws including CAN-SPAM, GDPR, and CASL.

The distinction that matters legally usually isn't the extraction itself β€” pulling addresses out of a document you already have lawful access to is just text processing β€” it's what happens next. Scraping a site specifically to build a bulk-email list, or extracting addresses you found through unauthorised access, carries the legal exposure. Extracting from your own exported data, a document you were sent, or a page you're auditing for your own security purposes does not.

Finding an Address Isn't the Same as Confirming It Works

Extraction checks format, not deliverability. [email protected] matches the pattern perfectly and will appear in your results β€” the regex has no way to know whether that domain exists, whether it accepts mail, or whether that specific mailbox is still active. A list pulled from a three-year-old conference programme or an outdated staff directory will extract cleanly and still bounce heavily if you email it, because the addresses were valid when the source document was written, not necessarily now.

Obfuscated addresses are the other real gap. Content encoded as HTML entities (user@example.com), split across elements with CSS to defeat scrapers, or written as name [at] domain [dot] com specifically to avoid pattern matching like this won't be caught β€” which is the point of that obfuscation in the first place, and this tool doesn't attempt to defeat it.

If you genuinely need to know whether an extracted address is live rather than just well-formed, that's a separate verification step β€” checking MX records for the domain, or running the list through a dedicated email verification service before a real send. Extraction gets you from "buried in a document" to "a clean list of candidates" β€” it isn't a substitute for the deliverability check that matters before any address gets used for actual outreach.

Turning a Raw List Into Something Usable

A freshly extracted list is rarely ready to use as-is. Case differences ([email protected] vs [email protected]) are already handled by the built-in deduplication, but a list pulled from multiple sources often still has the same person listed under a personal and a work address, or an old address alongside a current one β€” that judgement call needs a human, not a regex. Formatting quirks slip through too β€” an address with a trailing punctuation mark picked up from the surrounding sentence, or a line break inserted mid-address by a PDF export, can produce something that looks plausible but isn't quite right; a quick visual scan of the output before using it catches these faster than trying to automate around every possible source-document quirk.

Once you have the raw list, Sort Lines makes it easy to scan alphabetically for near-duplicates and obvious typos, and Remove Duplicate Lines handles any repeats that survived if you're merging several extracted lists together. If the same source also contains web addresses you need, the Extract URLs tool runs the same kind of pass for links instead of addresses.

One more habit worth building in: before importing a cleaned list anywhere permanent β€” a CRM, a mailing list tool, a shared spreadsheet β€” spot-check a handful of entries against the original source document. Automated extraction is reliable at the pattern-matching part of the job, but it has no sense of context, so a sample check catches the rare case where something structurally email-shaped (a code fragment, a config value) slipped through simply because it happened to match the pattern.

Verified by ToollyX Team Β· Last updated July 2026

Frequently Asked Questions

728 Γ— 90 β€” Leaderboard Ad

Related Tools