AM Jarvis

Email Extractor: Pull Email Addresses From Text and Files

Paste text or drop files and get a clean, deduplicated list of email addresses with counts, domain filters and a CSV export.

Or drop files here TXT, CSV, HTML, DOCX, XLSX or PDF, up to 50 MB each

    Runs in your browser. Text and files are never uploaded. This tool reads only what you paste or drop in; it does not visit or scrape websites. Mail only people who agreed to hear from you.

    In short

    Paste text into the box or drop TXT, CSV, HTML, DOCX, XLSX or PDF files, and the extractor lists every email address it finds as you type. Duplicates are removed and addresses are lowercased by default. Filter by domain, drop role addresses like info@, then copy the list or download it as CSV. Nothing is uploaded.

    On this page
    1. How to extract email addresses
    2. A real example
    3. What the extractor finds, and what it skips
    4. Options at a glance
    5. Jobs this handles well
    6. Supported files and limits
    7. The CSV download
    8. Use extracted addresses legally
    9. Before you send: check the list

    Email addresses end up buried everywhere: a long reply-all thread, a trade show export with twelve columns, a supplier price list saved as PDF, the HTML source of a contact page you copied, a Word document someone sent with "the list". Copying them out by hand takes forever and you always miss one or paste one twice.

    This email extractor reads the text you paste and the files you drop, finds every address in them, and gives you a clean list. It runs in your browser, so the text and files stay on your device. It does not visit websites or crawl anything; it only reads what you give it.

    How to extract email addresses

    1. Paste your text into the left box. It can be plain text, a whole email thread, CSV rows or HTML source. The result box on the right updates as you type.
    2. Or drop files onto the box under it: TXT, CSV, HTML, DOCX, XLSX or PDF, up to 50 MB each and up to 50 files at a time. Each file shows in a list, and you can remove one with the Ă— button.
    3. Pick your options. Remove duplicates and Lowercase are on by default. Turn on Exclude role addresses if you only want named people.
    4. Use Sort to order the list by first appearance, A to Z, by domain or by how often each address was mentioned.
    5. Filter by domain if you need to: choose Only these domains or Skip these domains and type one or more domains separated by commas. You can also click a domain chip under Top domains.
    6. Click Copy emails, Download CSV or Download TXT.

    The separator setting changes how the copied list looks: one address per line for spreadsheets and email tools, commas for most "To" fields, and semicolons for Outlook, which uses semicolons between recipients.

    A real example

    The box loads with a short message so you can see the behavior before you paste anything. It holds these lines:

    What the text containsWhat the extractor returns
    Dana Ortiz <dana.ortiz@harborlane.com>dana.ortiz@harborlane.com
    Wholesale@HarborLane.comwholesale@harborlane.com (lowercased)
    press [at] northfieldgoods [dot] copress@northfieldgoods.co
    <a href="mailto:mark%40oakandpine.store">mark@oakandpine.store (the %40 is decoded)
    dana.ortiz@harborlane.com a second timeCounted twice, listed once
    logo@2x.pngNothing: it is an image file name, not an address

    The result is six unique addresses from seven mentions across five domains. Turn on Exclude role addresses and wholesale@, returns@ and press@ drop out, which leaves the three addresses that belong to named people.

    What the extractor finds, and what it skips

    An address is matched when it has a local part, an @ sign and a domain that ends in a real looking extension of 2 to 24 letters, such as .com, .co.uk, .store or .com.br. Plus addressing like orders+shopify@brand.com is kept as written, because the plus part is how many people sort their mail.

    Hidden and disguised addresses

    People and websites hide addresses from spam bots in a few common ways. The extractor undoes the ones that are safe to undo:

    • HTML entities such as &#64; for the @ sign, which you see when you paste page source.
    • URL encoding in mailto links, such as mailto:name%40brand.com.
    • Bracketed words: name [at] brand [dot] com, name (at) brand (dot) com and the same with curly brackets.
    • Spaced words, like name at brand dot com, but only when a "dot" also appears, so ordinary sentences such as "meet at noon" are not turned into addresses.

    You can switch this off with the Read "name [at] site [dot] com" option if you only want addresses written in the normal form.

    False matches it filters out

    Retina image names like hero@2x.jpg and asset names like icon@3x.webp look like addresses to a simple pattern. The extractor drops any match whose "domain" ends in an image, script, style, font or video extension. It also strips trailing dots, so an address at the end of a sentence comes out clean.

    Options at a glance

    OptionWhat it doesDefault
    Remove duplicatesLists each address once. Matching ignores upper and lower case.On
    LowercaseShows every address in lowercase. Email domains are not case sensitive, and almost no mail server treats the part before the @ as case sensitive either.On
    Exclude role addressesDrops shared inboxes such as info@, sales@, support@, admin@, noreply@, billing@ and about 70 more.Off
    SortOrder found, A to Z, by domain, or most mentions first.Order found
    Domain filterKeep only, or skip, addresses at the domains you list. Subdomains count, so brand.com also matches mail.brand.com.Off
    SeparatorNew line, comma, or semicolon in the result box and the copied text.One per line

    The stat boxes show mentions found, unique addresses, how many are in the current result, the number of domains and how many role addresses the list holds. The top 15 domains appear as chips with a count, which is a quick way to see that 40 of your 300 contacts are at one company.

    Jobs this handles well

    Cleaning a CRM or event export

    Exports from booking tools, webinar platforms and trade show scanners often put the email in a different column on every export, or mix it into a "notes" field. Drop the CSV in as it is. In one test with a Word vendor list, a two-page PDF brochure, an XLSX lead sheet and an HTML snippet, plus the sample text, the extractor found 17 mentions and 16 unique addresses across 10 domains, 6 of them role addresses, in under two seconds. No column mapping was needed.

    Pulling contacts out of a long email thread

    Forwarded threads carry addresses in the From, To and Cc lines and in signatures. Select the whole thread in your mail app, copy it and paste it. Sort by Most mentions first to see who is actually active in the conversation, then copy the list with semicolons to start a new Outlook message to the same group.

    Finding every supplier address in your documents

    Store owners keep supplier contacts in price lists, invoices and catalogs. Drop all of those files at once, then use Skip these domains with your own store domain and gmail.com to keep only supplier company addresses. The source column in the CSV tells you which document each address came from.

    Checking a page for exposed addresses

    If you run a website, paste its source to see which addresses a spam bot could collect from it. Anything listed here can be collected by scrapers too, including the [at] and [dot] style, which simple bots now decode as easily as this tool does. For inboxes that get flooded with spam, a contact form with a captcha is the safer choice, and a role address that you can filter or retire is better than a personal one.

    Supported files and limits

    FileWhat is readNotes
    TXT, CSV, TSV, LOG, VCF, EML, MBOX, JSON, MDAll textUTF-8, UTF-16 and Windows-1252 encodings are detected
    HTML and XMLThe full source, including mailto links and entitiesSave a page with Ctrl+S or paste its source
    DOCX (Word)Body text, tables, headers, footers, footnotes, comments and hyperlink targetsOld .doc files are not supported; save them as .docx first
    XLSX (Excel)Text cells on every sheet and hyperlink targetsOld .xls files are not supported
    PDFThe text layer of every page and link annotationsScanned PDFs have no text layer; run them through an OCR tool first

    Each file can be up to 50 MB. How fast it runs depends on your device; a 300 page PDF takes a few seconds on a recent laptop. Addresses that only appear inside images, such as a business card photo, cannot be read. For those, use the image to text tool first and paste the result here.

    The CSV download

    The CSV has one row per address in the current result, with these columns:

    • email: the address as shown.
    • domain: the part after the @, lowercased.
    • type: role for shared inboxes, free provider for Gmail, Yahoo, Outlook, iCloud and other consumer mail services, and business for everything else.
    • mentions: how many times the address appeared across all inputs.
    • source: which file or files it came from, or "pasted text".

    The file is saved as UTF-8 with a byte order mark, so Excel opens it with accented names intact. The type column makes it easy to split B2B contacts from consumer addresses with a filter. If you need the CSV in a different shape, the CSV to Excel converter turns it into a proper spreadsheet with a frozen header row.

    Use extracted addresses legally

    An extractor is a sorting tool. Whether you may email the people on the list depends on how you got their addresses and where they live, not on the tool. The rules below are a summary as of October 2026, not legal advice.

    • United States, CAN-SPAM Act. It covers all commercial email, including business to business. Every message needs accurate header information, a subject line that is not deceptive, a clear statement that it is an ad when it is one, a valid physical postal address, and a working way to opt out that you honor within 10 business days. The FTC's inflation-adjusted penalty is up to $53,088 for each email that breaks the rules. Sending to addresses collected by automated means from websites is treated as an aggravated violation.
    • European Union and United Kingdom, GDPR and the ePrivacy rules. An address that identifies a person, like dana.ortiz@company.com, is personal data. You need a lawful basis to store and use it, and marketing email to individuals generally needs their prior consent. The UK allows a "soft opt-in" for people who bought from you before.
    • Canada, CASL. Commercial messages need express or implied consent, plus sender identification and an unsubscribe link.

    Warning: This tool does not scrape websites and is not meant for building cold lists from pages you do not own. Use it on mail, exports and documents that you or your company already hold, such as your own customer records, event sign-ups, supplier contacts or a CRM export you need to clean.

    Before you send: check the list

    Old lists collect typos, closed mailboxes and dead domains. Sending to them raises your bounce rate, and mailbox providers notice. Paste the extracted list into the email validator to check syntax, catch typos such as gmial.com, flag disposable domains and look up whether each domain has a mail server. Remove what fails before you import the list into your email platform.

    If your goal is finding new local business customers in the first place, an extractor is the wrong starting point. Local Lead Finder Pro in AM Jarvis builds lead lists from public Google Maps business listings, checks each business website and writes outreach, and our guide to finding local SEO leads covers the process step by step.

    Frequently asked questions

    Is this email extractor free and private?

    Yes. It is free with no sign-up and no daily limit. Everything runs in your browser with JavaScript: the text you paste and the files you drop are read on your own device and are never uploaded to our server or anyone else's.

    Can it extract emails from a website URL?

    No. It does not visit or crawl websites. If you own the page or need the addresses from one page you are looking at, open it in your browser, view the page source, copy everything and paste it into the box. Mailto links and encoded addresses in the source are found too.

    How do I extract email addresses from a PDF?

    Drop the PDF onto the file box. The extractor reads the text layer of every page and the link annotations, so clickable mailto links are found as well. If the PDF is a scan, it has no text layer and nothing will be found; convert it with an OCR tool first and paste the text.

    Can I extract emails from an Excel or CSV file?

    Yes. CSV, TSV and TXT files are read as text, and XLSX files are opened directly: text cells on every sheet and any hyperlinks are scanned. The extractor does not care which column holds the addresses. Old .xls files need to be saved as .xlsx first.

    Why is an address missing from my results?

    The most common reasons: the address is inside an image, the PDF is scanned, the address is split across two lines, or it uses an unusual disguise such as "name at brand period com". Also check the domain filter and the role address option, which hide matches on purpose.

    What counts as a role address?

    A shared inbox that reaches a team rather than one person, such as info@, sales@, support@, contact@, hello@, admin@, billing@, careers@, press@, orders@ and noreply@. The tool checks about 80 common role names. Role addresses are fine for vendor contact but often perform poorly in marketing campaigns.

    Are duplicates detected if the capitalization is different?

    Yes. Dana.Ortiz@Brand.com and dana.ortiz@brand.com count as the same address. With Lowercase on, the list shows the lowercase form. With it off, the list keeps the spelling of the first mention. The mentions column in the CSV shows how often each address appeared.

    Is it legal to email addresses I extracted?

    It depends on how you got them and where the recipients are. In the US, CAN-SPAM requires a postal address and an opt-out in every commercial email and penalizes harvested addresses. In the EU and UK, marketing email to individuals generally needs consent. Only mail people who have a relationship with you or agreed to hear from you.