Free email list tools: clean, dedupe and fix a list before you send
No code. Paste a list or drop in a CSV and get a clean file back in seconds, right in your browser.
Email list tools prepare a list before you send to it: they pull addresses out of files and text, remove duplicates, filter role, free and disposable addresses, fix typo domains and check syntax. These run in your browser, so the list never leaves your device. Whether a mailbox exists still takes an SMTP check.
Most bounces come from a short list of causes: duplicates that inflate counts, typos like gmial.com, addresses at domains that cannot receive mail, and mailboxes that closed when someone changed jobs. The tools below catch the first three for free, in that order. The fourth needs a mailbox check.
A sensible order for a fresh export: extract, deduplicate, fix typos, filter what you do not want (role, free or disposable addresses), then verify what is left. See how to clean an email list for the full routine.
188 email list tools
Email checker
Check whether one email address exists with a live SMTP mailbox check, plus catch-all and disposable detection.
List health check
Upload a CSV or paste emails for a list quality score: duplicates, bad syntax, typo domains, disposable and role addresses, dead domains and the free vs business split, in your browser.
Email permutator
Turn a name and company domain into the likely email formats, most common first, and check the top ones live.
Disposable email checker
Check whether an address or domain belongs to a known disposable (temporary) email provider.
Email extractor
Paste a thread, a web page's HTML or a messy export, or upload a CSV. Every address is extracted, deduplicated and ready to download. Runs in your browser.
Remove duplicate emails
Case-insensitive deduplication for a pasted list or a whole CSV, keeping every other column. Merge a second list, subtract a suppression list, optional Gmail dot and +tag matching. Runs in your browser.
Bulk email syntax checker
Paste or upload any number of addresses and get the exact format error on each one, with the RFC rule it breaks and a fix for typo domains. Syntax only, in your browser.
Email list cleaner
Paste "Name <email>" lists, Outlook recipients or messy CSV rows and get email, first name and last name columns, trimmed, lowercased, typo-fixed (gmial.com to gmail.com), invalid rows removed and deduplicated. In your browser.
Extract emails from Excel
Upload an Excel, Google Sheets export or CSV file and pull every address from every sheet and cell, deduplicated, with where each was found. Runs in your browser.
Role-based email filter
Flag or remove role-based addresses in bulk, using 148 prefixes in three groups, with your CSV columns kept. Runs in your browser.
Business email filter
Split a list into company addresses and free ones (Gmail, Outlook.com, Yahoo, ISP mail) using 158 free mailbox domains, and download each part.
Bulk email permutator
Upload names and domains and get the likely address formats for every row, most common first, as a CSV ready to verify. Runs in your browser.
Extract domain from email
Turn a list of addresses into its domains: a domain column for each row, unique domains with counts, and company versus free mail. Runs in your browser.
Compare email lists
Paste a send list and a suppression list and get A minus B, the overlap and the union, matched case-insensitively with your CSV columns kept. Runs in your browser.
Email typo fixer
Paste a list or upload a CSV to correct misspelled webmail domains, .con endings and formatting slips, with each fix shown for you to accept or reject. Runs in your browser.
Gmail address normalizer
Turn [email protected] and [email protected] into one canonical address, grouped and counted, without deleting rows. Runs in your browser.
Extract emails from PDF
Drop a PDF to pull every email address from every page, including mailto links, deduplicated with page numbers. The file is read in your browser.
Name from email
Bulk-guess first and last names from address patterns like john.smith@, with a confidence for each and role addresses left blank, ready for a mail merge.
Free email domains list
Search or download the 158 freemail and ISP domains our own filters use, as CSV, JSON, TXT or a JavaScript Set.
CSV merger
Merge up to 20 CSVs, match columns by header name even when each export spells them differently, and drop duplicate emails. Runs in your browser.
SHA-256 email hasher
Applies each platform's normalisation rules (lower case, trimmed, E.164 phones, Gmail dots for Google) then SHA-256, in the browser, with an upload-ready CSV.
Email regex tester
Runs your addresses through four standard patterns and your own, shows where they disagree, and gives code that behaves the same in JavaScript, Python, PHP and Go.
VCF to CSV converter
Reads vCard 2.1, 3.0 and 4.0 exports, including accented names and multiple emails or phones per contact, and writes a CSV for Excel, a CRM or Google Contacts.
Split full name
Separates prefix, first, middle, last, suffix and nickname, reads Last, First order, keeps van and de la with the surname, and flags companies and one-word names.
MBOX to CSV
Drop an .mbox or .eml export and get every From, To and Cc address with names, message counts and dates, as a CSV. The file never leaves your browser.
Email list sampler
Draw a seeded random sample (500 rows by default) from a list or CSV, keep every column, and turn the sample's bounce count into a range for the whole list.
Email list formatter
Converts between one-per-line, comma and semicolon separated lists, strips names, brackets and mailto:, removes duplicates and splits into batches per message.
Email list template
Download a CSV template with the headers each platform expects, then check your own file for a missing email column, bad header row or the wrong separator.
LinkedIn connections to email list
Reads Connections.csv as LinkedIn exports it, skips the notes at the top, keeps the connections that shared an email and splits work from personal addresses.
Email list segmenter
Groups a list or CSV by domain, mailbox provider family, company vs free vs ISP mail, or country-code TLD, with a CSV per segment and every other column kept. In your browser.
Bulk disposable email checker
Paste a list or upload a CSV. Each address is checked against a list of disposable domains and its domain's MX records, then you download the list without them.
Signup email risk checker
Paste or upload signup emails. Each one is checked for disposable, parked, brand-new or dead domains, typos and role addresses, with the reason for every flag.
Website email extractor
Enter a website. Its page and up to four linked contact, about or team pages are read, where robots.txt allows, and every published address is listed with its page.
Bounce rate estimator
Paste a list or enter counts and get a bounce rate range from the problems visible in the addresses and their domains. Clearly an estimate, not a verification.
Email list splitter
Split a list or CSV by rows per file or number of files, in order or dealt in turn so each file gets a mix, with the header row and columns in every part.
Email and phone extractor for CSV
Every cell of every row is searched; each row gets clean email and phone columns, with your original columns kept, plus unique lists of each. In your browser.
Email verifiability checker
Paste a list and see, domain by domain, whether a mailbox check can give a definite answer, will come back risky, or is on a domain with no MX record, before you check anything.
Extract emails from Word
Drop a Word file to pull every email address from its text, links, headers, footers, footnotes and comments, listed once each and ready to download as CSV.
CSV import formatter
Upload any export, match its columns to the fields the sending tool expects, and download a UTF-8, comma-separated file with custom variables named the way that tool writes them.
Bulk MX lookup
Paste addresses or domains and get each domain's MX hosts and provider, with domains that can't take mail (no MX, null MX, not registered) flagged and their addresses ready to copy.
Email list A/B splitter
Deal a list or CSV into 2 to 5 random test groups plus an optional holdout, with Gmail, Outlook and company addresses spread evenly and the same inbox kept in one group.
Email list sorter
Sort addresses or a whole CSV by domain, mailbox provider, domain ending (.de, .co.uk) or address, in either direction, with the rows' other columns kept and a group column added.
Invisible character remover for emails
Shows and removes the characters you can't see in a pasted list or CSV: zero-width spaces, no-break spaces, bidi marks, full-width @ and dots, smart quotes and mailto: wrapping, naming each one by code point.
Bulk Gravatar checker
Hash each address in your browser and ask Gravatar whether an avatar exists for it, 500 a run, with thumbnails, profile links and a CSV. A Gravatar shows someone set the address up once.
Email and name match checker
Compares each row's address with its first and last name: full match, first name only, last name only, initials, role inbox or no match, with the pattern found. Catches enrichment mix-ups before a send.
Email address splitter
Adds username, username without the +tag, the tag, domain, subdomain, registrable domain (acme.co.uk) and domain ending columns to every row of a list or CSV.
Email list overlap checker
Compare up to six lists or CSVs: an overlap count for every pair, addresses on every list or on only one, and a merged deduplicated download with which lists each address came from.
Gmail address checker
Asks Google's own mail servers whether a gmail.com or googlemail.com mailbox exists, without sending anything, and shows the one inbox dotted and +tagged spellings reach.
Outlook email checker
Checks outlook.com, hotmail.com, live.com and msn.com addresses for syntax, typo domains, mail servers and disposable or role use, and says plainly that the mailbox isn't confirmed while Microsoft refuses our checks.
Yahoo email checker
Runs a live mailbox check on yahoo.com, ymail.com, rocketmail.com and aol.com addresses, catch-all test first, and explains why Yahoo often returns risky instead of a clear answer.
ICloud email checker
Checks icloud.com, me.com and mac.com addresses for syntax, typo domains, mail servers and disposable or role use, then asks Apple's mail server whether the mailbox exists.
Business email checker
Says whether an address is on a company domain or a free mailbox service, names the mail host from MX, flags shared inboxes like info@, then runs a live mailbox check.
Google Workspace email checker
Confirms from MX that a company domain's mail runs on Google, then asks Google's server about the one mailbox, catch-all test first, without sending anything.
Microsoft 365 email checker
Confirms from MX that a company domain runs on Exchange Online, then asks Microsoft's server about the one mailbox, catch-all test first, without sending anything.
Zoho email checker
Checks zoho.com and zohomail.com addresses and company domains whose MX points at Zoho, with a live mailbox check that tests for a catch-all address first.
Proton Mail email checker
Checks proton.me, protonmail.com and pm.me addresses and custom domains on Proton, and says plainly when Proton's server doesn't confirm the mailbox.
AOL address checker
Checks aol.com, aim.com and aol.co.uk addresses for syntax, typo domains, mail servers and disposable or role use, and says plainly that AOL's servers won't confirm a single mailbox.
GMX address checker
Checks gmx.com, gmx.net, gmx.de, gmx.at and gmx.ch addresses for syntax, typo domains, mail servers and disposable or role use, and says plainly when GMX refused the mailbox check.
Yandex address checker
Asks Yandex's own mail server whether a yandex.ru, yandex.com or ya.ru mailbox exists, without sending anything, after syntax, domain, disposable and role checks.
Mail.ru email checker
Checks mail.ru, inbox.ru, list.ru, bk.ru and internet.ru addresses for syntax, typo domains, mail servers and disposable or role use, and says plainly that Mail.ru's server won't confirm a single mailbox.
WEB.DE email checker
Checks a @web.de address for syntax, typo domains, mail servers and disposable or role use, then asks WEB.DE's mail server about the mailbox and says plainly when WEB.DE turned the check away.
Comcast email checker
Checks comcast.net (Xfinity) addresses for syntax, typo domains, mail servers and disposable or role use, and says plainly when Comcast refused the mailbox check.
AT&T email checker
Checks att.net and the legacy AT&T domains (sbcglobal.net, bellsouth.net, pacbell.net and more) for syntax, typo domains, mail servers and disposable or role use, and says plainly that AT&T's Yahoo-run servers won't confirm a mailbox.
EML to CSV converter
Drop any number of .eml files and get one CSV with a row per message: date, sender, recipients, subject, attachment names and, if you want it, the plain-text body. Nothing is uploaded.
Will this email bounce?
Asks the address's mail server whether the mailbox exists, without sending anything, and answers yes, likely, unlikely or can't tell, with the reason and what to do.
Bulk email checker
Paste a list of addresses and get every check that needs no mail server for all of them, plus a live mailbox check on 10, without an account.
CSV email verifier
Finds the email column in any CSV, removes bad syntax, duplicates, typo and dead domains and disposable addresses, keeps your other columns, then checks 10 mailboxes live.
Excel email verifier
Reads an .xlsx or cells pasted from Excel, checks format, duplicates, typo and dead domains and disposable addresses, and checks 10 mailboxes live. No formulas or macros needed.
Google Sheets email verifier
Paste cells copied from Google Sheets (or upload the CSV download) to check format, duplicates, typo and dead domains and disposable addresses, then 10 live mailbox checks.
Mailchimp list cleaner
Reads Mailchimp's subscribed export, removes what Mailchimp would only find by bouncing (typo, dead and disposable domains), takes off your cleaned and unsubscribed contacts, then checks 10 mailboxes.
Apollo export email checker
Reads an Apollo CSV, counts its Email Status values, flags bad syntax, duplicates, dead and disposable domains, and sends the rows not marked Verified to a live mailbox check first.
HubSpot email list checker
Reads a HubSpot contacts export (CSV or .xlsx), flags what HubSpot only learns by bouncing, removes contacts on your bounced or unsubscribed export, and checks 10 mailboxes live.
Cold email list checker
Checks a lead CSV before it reaches your sequencer: syntax, duplicates, typo and dead domains, disposable and role addresses, your do-not-contact list, then 10 live mailbox checks.
Verification results cleaner
Reads a results CSV from any email verifier, maps each status (valid, catch-all, unknown, do_not_mail, spamtrap, accept_all...) to send, retest or remove, and gives you a file for each.
Bounced email extractor
Pulls every bounced recipient out of pasted bounce messages, .eml or .mbox files and bounce logs, sorts each by its SMTP code into remove, retry or fix-your-sending, and builds a suppression CSV.
Verifier comparison
Matches two verifiers' results files by address, maps each status to valid, risky or invalid, and lists every row where they disagree with the likely reason: catch-all policy, unknown answers, role flags or a real conflict.
Google Contacts to email list
Reads the Google CSV that Google Contacts exports, pulls every address out of the E-mail 1, 2, 3 Value columns (including cells joined with :::), removes repeats and marks each work or personal.
Outlook contacts to email list
Reads an Outlook CSV export of contacts (E-mail, E-mail 2, E-mail 3 Address) or of a mail folder (From, To and CC addresses), skips Exchange /O= paths, removes repeats and marks each address work or personal.
Split multiple emails in one cell
Finds every address in a cell, whether separated by semicolons, commas, spaces or line breaks, and gives one row per address with the other columns copied, one column per address, or the first address only.
Remove emails by domain
Takes your list and your exclusion rules (a domain and its subdomains, an ending such as .edu or .gov.uk, a name on any ending such as acme.*, or single addresses) and splits the list into kept and removed, with the rule that matched each.
Email list by country
Gives each address a country hint from its domain ending (.de, .co.uk, .com.br) or a home-country mail provider (web.de, orange.fr, libero.it, seznam.cz), groups them into EU, EEA, UK, Switzerland and rest of world, and marks .com and Gmail as no signal.
Job title normalizer
Rewrites every spelling of a role into one form (VP of Sales or Vice President of Sales, CEO or Chief Executive Officer), spells out Sr., Mgr, Mktg and Exec, removes the company after " at " or "@", extra roles after a "|", emoji and bracketed notes, and fixes ALL CAPS while keeping acronyms like HR and SEO.
Country name normalizer
Rewrites every spelling of a country (USA, U.S., America, Deutschland, Holland, UK, England) as one form: the English name, the ISO 3166-1 two-letter code or the three-letter code. Reads locations like "Austin, TX, United States" or "Toronto, ON" from the last part, and flags rows it can't read.
State abbreviation converter
Turns a state or province column into two-letter codes or full names: US states, DC and territories, Canadian provinces and territories, Australian states. Reads AP-style abbreviations (Calif., Mass., N.Y.), uses the row's country column for shared codes like WA, and leaves other countries' regions alone.
Lead scoring tool
Gives every row a score from rules you set: seniority read from the title (founder, C-level, VP, director, manager...), target departments, title keywords, excluded words, company vs free webmail, role addresses like info@, and target countries. Grades A to D, sorted highest first, with every point listed per row.
LinkedIn URL cleaner
Rewrites every LinkedIn link as https://www.linkedin.com/in/<name> (or /company/, /school/), removing ?trk= and ?originalSubdomain= tracking, uk. and de. subdomains, trailing /details/ and /recent-activity/ pages and mixed case, marks rows that are the same person, and flags Sales Navigator, post and lnkd.in links that can't be converted.
CSV fill rate checker
Counts filled, blank and placeholder cells (n/a, -, null, #N/A, test) in every column, with distinct and most common values, and marks each column safe as a merge field (98%+ filled), needing a fallback, too empty to personalise with, or the same value everywhere. Download the report or the rows with gaps.
Bounce rate by list source
Reads a send or activity export (one row per recipient with a status column) and splits hard bounces, soft bounces, blocks, complaints and unsubscribes by any column (lead source, list, tag, campaign, import date) or by the recipient's mailbox provider. Flags groups at 2% hard bounces or 0.1% complaints; downloads the breakdown and the rows of flagged groups.
Repeat soft bounce finder
Counts, per address, the distinct sends (by date or campaign) with a soft bounce (4.x.x, mailbox full, deferred, timed out). Addresses over your threshold with no delivery since go on a suppression list; ones that delivered after their last soft bounce are marked recovered; hard bounces are listed too.
Feedback loop report parser
Reads pasted ARF reports (RFC 5965: Feedback-Type, User-Agent, Source-IP, Original-Rcpt-To and the reported message) and Amazon SES complaint notification JSON. Lists each complaint, counts redacted recipients, groups by subject, Feedback-ID, sending IP and up to five headers of yours, and builds a suppression list.
Remove blank rows from CSV
Finds the three kinds of blank row a spreadsheet export leaves (empty lines, ,,,, lines and space-only lines), optionally N/A and dash placeholders, and rows where a chosen column such as email is empty. Keeps the delimiter and row order; downloads the clean file and a log of what was removed.
Find and replace in CSV
Runs one or more find-and-replace rules on the columns you tick (all columns if none): plain text or regular expressions with $1 groups, match case and whole-cell options, header row optional. Shows the count per rule and every changed cell; downloads the file and a change log.
CSV column editor
Lists every column with its first value; move it up or down, rename it, delete it or restore it, add a new column with one value for every row, rename all headers to snake_case, Title Case or lower case, and put the email column first. Warns about blank and repeated column names.
Count unique values in CSV
Distinct count, frequency and share per value for any column, most frequent first; case-insensitive by default with spaces ignored; optional split of multi-value cells on ; , | or line breaks; blank count; case-only variants flagged. Downloads the counts and the distinct list.
JSON to CSV
Takes a JSON array, an API response with the records under data, results, items, contacts or similar (picked automatically or by path) or JSON Lines; nested objects become dot-path columns, lists of plain values are joined with ; and lists of objects get numbered columns up to a limit. Email columns are found for the next step.
Split address into columns
Reads each address from the end: country, postal code (US ZIP and ZIP+4, Canadian, UK, Australian), state or province, then city; unit lines such as Suite 200 or Apt 4B go in their own column. Works with and without commas; rows it had to guess are flagged. Other CSV columns are kept.
CSV to Excel (keep leading zeros)
Scans every column for values Excel changes when it opens a CSV (leading zeros, numbers over 15 digits, 1-2 read as a date, 1E5, a leading +, =, TRUE/FALSE, 1,234) and writes a real .xlsx with those columns stored as text, or every column. Bold, frozen header row; nothing uploaded.
Excel to CSV converter
Reads every sheet of an .xlsx, .xlsm or .ods file (or cells pasted from Excel), lets you pick one, and writes a UTF-8 CSV with comma, semicolon or tab delimiters. Date cells become YYYY-MM-DD, leading zeros and long IDs are kept, blank rows dropped. Runs in your browser.
CSV VLOOKUP (match two files)
Pick a main file and a lookup file, match them on email (found automatically) or any column, and copy the columns you choose across. Case and spaces ignored, repeated keys first-wins or combined, rows with no match kept, filtered or listed separately. Runs in your browser.
Company name cleaner
Removes legal suffixes (Inc., LLC, Ltd, GmbH, Pty Ltd, S.A. and dozens more), taglines after a | or dash, bracketed notes and trademark signs, fixes ALL CAPS while keeping short acronyms like IBM, leaves deliberate casing like eBay alone, and swaps blanks, n/a, self-employed and stealth for a fallback.
Extract domain from URL
Turns https://www.example.com/about?utm=x, example.com/contact or an email address into example.com in bulk, with the root domain for subdomains (read from the Public Suffix List, so co.uk and com.au work), and flags rows that have no company domain: social profiles, link-in-bio pages, Shopify, Wix and other hosted subdomains, IPs and names.
PayPal customers to email list
Reads PayPal's Activity download CSV, keeps the From Email Address of incoming payments, skips your own address, payments you sent, transfers, fees, conversions and holds, merges repeat buyers with payments and totals, and marks refunds.
Wix contacts to email list
Reads the Regular CSV from Wix Contacts > Import / Export > Export, sorts each contact by its email subscriber status (subscribed, never subscribed, unsubscribed), sets aside unsubscribes, merges repeats and keeps name, phone, company and labels.
Squarespace contacts to email list
Reads the subscribed CSV from a Squarespace mailing list export (Lists & Segments > Export) or a contacts/profiles export, reads Accepts Marketing or a subscription column when there is one, merges repeats and keeps names and lists.
BigCommerce customers to email list
Reads the customers CSV from BigCommerce (Customers > Export, Bulk Edit template), reads a newsletter, marketing or Receive Review/Abandoned Cart Emails? column when the file has one, sets aside opt-outs, merges repeats and keeps company, phone and customer group.
Clover customers to email list
Reads the customer CSV from the Clover web dashboard (Customers > Export), splits cells that hold several addresses into one row each, reads a marketing-allowed column when the file has one, sets aside opt-outs and merges repeats with phone kept.
Hunter export to email list
Reads a Hunter leads export or bulk results CSV, reads Verification status (valid, accept-all, unknown, invalid), keeps the confidence score as written, sets aside invalid and role addresses, merges repeats and flags webmail, typos and domain mismatches.
Snov.io export to email list
Reads a Snov.io prospect list CSV or XLSX, reads Email status (valid, unknown, not valid), sets aside not-valid and role addresses, keeps Email 2 out unless asked, merges repeats and flags webmail, typos and emails off the company website's domain.
Cognism export to email list
Reads a Cognism list CSV, reads an email quality or verified column (verified, unverified, invalid), sets aside invalid and role addresses, merges repeats and flags personal webmail, typos and emails on a domain other than the company website.
GoHighLevel contacts to email list
Reads a HighLevel contacts CSV, sets aside contacts with DND on (a blank or false DND is never read as consent), reads Additional Emails when asked, merges repeats with their tags combined and flags role addresses and likely domain typos.
Freshsales contacts to email list
Reads a Freshsales contacts export, sets aside unsubscribed contacts (never reading a blank as consent) and those with an Email status of bounced or invalid, splits the Emails cell into one row per address, merges repeats and flags role addresses and typos.
Lemlist leads to email list
Reads a lemlist leads CSV, reads lastState or status (bounced, unsubscribed, interested, not interested, replied) and emailStatus, sets aside bounced and unsubscribed always, replied and not-interested by choice, merges the same lead across campaigns.
Instantly leads to email list
Reads an Instantly leads CSV, reads Lead Status (bounced, unsubscribed, replied, completed), Interest Status (interested, meeting booked, not interested) and Verification Status (invalid, risky, catch-all), and splits it into reusable leads and a suppression file.
Smartlead leads to email list
Reads a Smartlead leads CSV: status (completed, stopped, blocked), lead category (Interested, Meeting Request, Not Interested, Do Not Contact, Wrong Person), is_unsubscribed and reply_count; bounced and unsubscribed always set aside, replied and not-interested by choice.
Reply.io contacts to email list
Reads a Reply.io People CSV: status (Active, Finished, Replied, Bounced, Opted out), Opted out and Bounced columns when present, reply category; bounced and opted out always set aside, replied and not-interested by choice.
Woodpecker prospects to email list
Reads a Woodpecker prospects CSV: status (ACTIVE, BOUNCED, INVALID, OPT-OUT, BLACKLIST, REPLIED, AUTOREPLIED) and interest level (INTERESTED, MAYBE_LATER, NOT_INTERESTED); bounced, invalid and opted out always set aside, replies by choice.
Saleshandy prospects to email list
Reads a Saleshandy prospects CSV: status (Active, Replied, Bounced, Unsubscribed, Finished), outcome (Interested, Meeting booked, Not interested) and verification status (Valid, Risky, Invalid); bounced, unsubscribed and invalid always set aside.
Salesforce contacts to email list
Reads a Salesforce Contacts or Leads report (Details Only CSV) or Data Loader file: Email Opt Out / HasOptedOutOfEmail read only as an opt-out, Email Bounced Reason or Date set aside, Other Email optional, repeats merged.
Pipedrive contacts to email list
Reads a Pipedrive People CSV or .xlsx: Email - Work first, Email - Home and Email - Other optional, Marketing status Unsubscribed set aside (Subscribed and No consent never read as consent), Person - prefixes stripped, repeats merged.
Zoho CRM contacts to email list
Reads a Zoho CRM Contacts or Leads CSV (Setup > Data Administration > Export): Email Opt Out true, Unsubscribed Mode or Unsubscribed Time set aside, never read as consent when blank or false; Secondary Email optional; repeats merged.
Close CRM leads to email list
Reads a Close contacts or leads CSV: contact email (or primary contact email), extra emails optional, several addresses in one cell split, unsubscribed / do-not-email read only as an opt-out, lead name kept as company, repeats merged.
HubSpot contacts to email list
Reads a HubSpot contacts CSV or .xlsx: Unsubscribed from all email and Opted out of email columns set aside, Email hard bounce reason, Invalid email address and Email address quarantined set aside, additional emails optional, repeats merged.
Keap contacts to email list
Reads a Keap contacts CSV: the email status sorted into opt-outs (Opt-Out, List Unsubscribe, Reported SPAM, Non-marketable), bounces (Hard Bounce, Invalid) and contacts you can still email; Email 2 and Email 3 optional, repeats merged.
Mailchimp audience to email list
Reads a CSV from Mailchimp's audience export ZIP: Email Address, names and TAGS kept, repeats merged; rows from the unsubscribed file (UNSUB_TIME) or the cleaned file (CLEAN_TIME) are set aside, so the same tool builds a suppression list.
Klaviyo profiles to email list
Reads a Klaviyo list or segment CSV: Email marketing consent sorted into subscribed, never subscribed and unsubscribed; any Email suppressions value sets the profile aside even when consent says Subscribed; repeats merged.
Kit subscribers to email list
Reads a Kit subscriber CSV: Status sorted into confirmed (kept), unconfirmed (kept as unknown), unsubscribed (set aside) and bounced, complained or blocked (always set aside); tags kept, repeats merged.
MailerLite subscribers to email list
Reads a MailerLite subscriber CSV: Status sorted into active (kept), unconfirmed (kept as unknown), unsubscribed (set aside) and bounced or junk (always set aside); groups kept as labels, repeats merged.
GetResponse contacts to email list
Reads a GetResponse contacts CSV or XLSX: one row per address with list names kept as labels and repeats across lists merged; a status or unsubscribe-reason column, when present, sets removed, unsubscribed and bounced contacts aside.
Copper CRM contacts to email list
Reads a Copper People export (.xlsx or CSV): Work Email as the address, Personal and Other Email optional, a custom Do Not Email, opt-out or unsubscribed column read only as an opt-out, an email status of bounced set aside; repeats merged.
Apollo contacts to email list
Reads an Apollo contacts CSV: Email first, Secondary and Tertiary email when asked; Email status read as verified, risky (Unverified, Catch-all, User-managed, Update required) or invalid; a TRUE in Email bounced sets the address aside; repeats merged, role addresses set aside.
Omnisend contacts to email list
Reads an Omnisend contacts CSV: Email subscription status sorted into subscribed (kept), non-subscribed (kept as unknown) and unsubscribed (set aside, which in Omnisend also covers bounces and spam complaints); tags and total spent kept, repeats merged.
Drip subscribers to email list
Reads a Drip people CSV: the status column (active or unsubscribed) decides what is kept, tags are kept as labels and repeats merge; Drip's own columns such as created_at, confirmed_at and lead_score are recognised.
Flodesk subscribers to email list
Reads a Flodesk subscriber CSV, which holds every status: Active kept, Unconfirmed kept as unknown, Unsubscribed and Archived set aside, Bounced, Complained (marked spam) and Cleaned always set aside; segments kept as labels, repeats merged.
ZoomInfo export to email list
Reads a ZoomInfo contacts CSV, keeps the main email and (if asked) supplemental emails, merges repeats, carries the Contact Accuracy Score through, flags role addresses, personal webmail, likely typos and emails on a domain other than the company website.
Lusha export to email list
Reads a Lusha CSV, uses the work email as the send address (private emails only when asked), reads an email confidence grade (A+ and A as verified, B and below as risky), merges repeats and flags role addresses, webmail and domain mismatches.
RocketReach export to email list
Reads a RocketReach list export, uses the recommended (professional) email as the send address, reads the email grade (A as verified, A- and B as risky, invalid set aside), merges repeats and flags role addresses, webmail and domain mismatches.
Seamless.AI export to email list
Reads a Seamless.AI CSV (Clean, Raw or Custom download), uses Email 1 as the send address, reads its validation (Valid as verified, Accept All as risky, Invalid set aside), carries the Total AI score, merges repeats and flags role addresses, webmail and domain mismatches.
Clay table to email list
Reads a Clay table CSV, finds the work email column (personal email only when asked), reads a validation column (valid, catch-all, invalid), counts rows where enrichment found nothing, merges repeats and flags role addresses, webmail and domain mismatches.
Sales Navigator leads to email list
Reads a Sales Navigator lead list exported through your CRM or the enrichment tool that found the emails, reads its email status column (valid, catch-all, risky, invalid), merges repeats and flags role addresses, webmail and emails on a domain other than the company website.
Whova attendees to email list
Reads a Whova attendee list (.xlsx or CSV), merges people with several tickets, reads check-in, marks speakers, exhibitors and sponsors from the ticket or category, sets aside opt-outs and keeps affiliation and title.
Cvent attendees to email list
Reads a Cvent Invitee Details report or attendee list export, sorts invitee status (accepted, waitlisted or pending, no response or visited, cancelled, declined or denied), reads check-in and registration type, honours an opted-out column and merges repeats.
Constant Contact contacts to email list
Reads a Constant Contact contacts export, sorts each contact by its email permission status (explicit, implicit, pending, unsubscribed), sets aside unsubscribes and bounces, merges repeats and keeps name, company, lists and tags.
Brevo contacts to email list
Reads a Brevo contacts export (comma or semicolon separated), sets aside contacts marked blocklisted or unsubscribed, reads FIRSTNAME/LASTNAME or PRENOM/NOM, merges repeats and keeps phone and lists.
ActiveCampaign contacts to email list
Reads an ActiveCampaign list export with its Status column, keeps Active contacts, sets aside Unsubscribed and Bounced ones, marks Unconfirmed as unknown, merges repeats and keeps phone, organization and tags.
AWeber subscribers to email list
Reads an AWeber subscriber CSV, keeps subscribed contacts, sets aside unsubscribed, deleted and complained ones, marks unconfirmed as unknown, merges repeats across lists and keeps name and tags.
Circle members to email list
Reads the member CSV Circle emails to admins, sorts members by their email marketing preference, sets aside the unsubscribed, merges repeats and keeps name and tags.
Mighty Networks members to email list
Reads the member list Mighty Networks emails to hosts (.xlsx or CSV), merges repeated members, keeps names and plans as labels, counts rows with no email and reads a marketing opt-in column if the file has one.
Webinar registrants to email list
Reads a registrant or attendee report from GoTo Webinar, Webex, Microsoft Teams, Livestorm, WebinarJam or Demio (every table in the file), marks who attended and for how long, leaves out organizers and panelists, reads a marketing opt-in question and merges repeats.
LDIF to CSV converter
Turns an .ldif file from Thunderbird, macOS Contacts or an LDAP directory into a CSV: one row per person with name, every email and phone, company, title and address; base64 (::) values decoded, folded lines joined, mailing lists counted and skipped.
Mail merge field checker
Reads the {{first_name}}, {FirstName} and *|FNAME|* tags in your template, matches each to a CSV column, and lists every row where a tag would render blank or as a placeholder like n/a, plus tags with no column and unclosed braces.
Job title seniority filter
Reads the job title column and gives every row a seniority level (owner or founder, C-level, VP, director or head, manager, senior IC, IC, intern) and a department, then splits the list by the levels you tick. Sr., Mgr, SVP and VP spellings are understood.
Duplicate contact finder
Groups rows by first and last name plus company (the company column, or the domain after the @), and by Gmail dot and +tag variants, then keeps one row per person: the work address over Gmail or Outlook, or the first in the file.
Calendar guests to email list
Reads an .ics file (every ATTENDEE with its name and RSVP), Google Calendar's guest responses sheet saved as CSV, or a guest list pasted from the invite. Rooms and resources are left out, repeats across events merge, and you keep the responses you tick.
Square customers to email list
Reads the customer export from the Square Dashboard, sorts each customer by Email Subscription Status (Subscribed, Unknown, Unsubscribed; older files' Email Unsubscribed column too), sets aside unsubscribes, merges repeats and keeps phone, visits, spend and groups.
CSV encoding fixer
Reverses UTF-8 text that was read as Windows-1252 (José to José, O’Brien to O’Brien), re-reads Excel ANSI files as Windows-1252 so accents aren't lost as �, strips zero-width and no-break spaces from addresses, and saves UTF-8 with an optional BOM for Excel.
Limit contacts per company
Groups your list by company domain, keeps the first N per company (ranked by job title keywords such as founder, CEO or VP when there's a title column) and sets the rest aside, with a count of rows per domain.
First name cleaner
Fixes JANE and jane to Jane, strips Dr., emoji and (she/her), and replaces blanks, initials, placeholders like test or n/a and company names with a fallback such as "there", or a name read from the email address.
Inactive subscriber finder
Reads the last open, last click or last activity dates in a Mailchimp, Klaviyo, Kit or other export, and sorts every subscriber into active, cooling off, inactive, never engaged, or new with no activity yet, with one CSV per group.
Email address masker
Turns [email protected] into j******[email protected], ***@example.com, a numbered placeholder or a SHA-256 hash, keeps every other column, and can shorten names to initials and phone numbers to their last two digits.
Slack members to email list
Reads Slack's Export member list CSV (status, billing-active, userid, fullname), a Microsoft Teams member list or a Google Groups export. Each member is sorted into owner, admin, member, guest or bot, deactivated accounts and bots are set aside, and guests can be split out.
Luma guests to email list
Reads a Luma guest list CSV (approval_status, checked_in_at, ticket_name), a Meetup attendee download or a RingCentral Events / Hopin registration export. Guests are sorted into going, pending, waitlist, invited or declined, check-ins are counted, and several events pasted together fold into one row per person.
Gumroad customers to email list
Reads a Gumroad sales CSV (Purchase Email, Item Name, Sale Price, Refunded?, Disputed?, Giftee Email), a Lemon Squeezy orders export, Paddle transactions or a Payhip sales file. Sales fold into one row per buyer with purchases, products and spend; refunded, disputed or failed sales add nothing to spend, and buyers with only those are set aside.
Patreon members to email list
Reads Patreon's member CSV (Patron Status, Free Member, Tier, Pledge Amount, Lifetime Amount, Last Charge Status), a Ko-fi supporters download or a Buy Me a Coffee export. Each member is sorted into active paid, declined, free or former; former members are set aside, and tier and lifetime amounts are kept for segmenting.
Notion database to email list
Reads a database CSV from Notion (Export > Markdown & CSV), Airtable (Download CSV), ClickUp or monday.com. The email column is found by its values, cells with several addresses or mailto links are split, Notion page links are stripped from names, repeats merge with tags kept, and rows with a ticked Unsubscribed or Do not email box are set aside.
Kajabi contacts to email list
Reads a Kajabi contacts export (Products, Tags, Subscribed), Teachable or Thinkific students, Skool members or Podia customers. Rows fold per address with products or courses joined and tags kept; people who unsubscribed from marketing and staff accounts (owner, admin, instructor, moderator) are set aside, and buyers can be split from free opt-ins.
Form responses to email list
Reads a responses export from Google Forms, Typeform, Jotform, Tally or Microsoft Forms, finds the email question by its answers, merges repeat submissions, reads a consent or newsletter question, and sets test submissions aside.
Calendly invitees to email list
Reads a Calendly meetings export (or Cal.com and Acuity bookings), one row per booking, and gives one row per invitee with bookings, cancellations, no-shows, event types and the latest date. Guest emails are split out and the host is never included.
Facebook lead ads to email list
Reads the leads CSV from Meta Business Suite or Ads Manager (UTF-16 tab-separated files included), or a LinkedIn or TikTok lead form export. Strips Meta's l:/c:/p: prefixes, merges repeat leads across forms and campaigns, reads a separate work email question, and sets test leads aside.
Newsletter subscribers to email list
Reads a subscriber export from Substack, beehiiv, Kit (ConvertKit), Ghost or MailerLite and sorts every row into active, unconfirmed, unsubscribed, bounced or complained from that platform's own status columns. Only active subscribers are kept by default; paid subscribers are marked.
WooCommerce customers to email list
Reads the WooCommerce Customers or Orders download (or an order-export plugin file, or a WordPress users export) and gives one row per billing address with orders, paid orders, total spent and last order. Failed, cancelled and refunded orders don't count as paid; staff accounts can be set aside.
QuickBooks customers to email list
Reads a QuickBooks Online or Desktop customer export (title rows and TOTAL lines skipped), Xero contacts (EmailAddress and Person1Email…Person5Email), FreshBooks or Wave clients. Cells holding several addresses are split, CC columns read, an address shared by several customers kept once, inactive customers set aside.
Shopify customers to email list
Reads the Shopify customers export (or an orders export, one row per line item) and gives one row per customer: name, country, Accepts Email Marketing, total spent, orders and tags. Subscribers and non-subscribers download as separate files.
Stripe customers to email list
Reads unified_customers.csv or unified_payments.csv from Stripe. Customers with the same email (Stripe doesn't deduplicate customers by email) become one row with the IDs listed, total spend and payment count added, delinquent and subscription status kept.
Eventbrite attendees to email list
Reads an Eventbrite attendee or orders export (CSV or Excel), one row per ticket, and gives one row per address with tickets, events, ticket types and check-in. Buyer emails can be added; refunded tickets and no-shows can go to a separate file.
Zoom attendee report to email list
Reads a Zoom webinar attendee or registration report, which is several tables in one CSV (Host, Panelist, Attendee, Other Attended), or a meeting participants export. One row per address with attended yes or no, minutes in session added across rejoins, organization and job title.
CRM export to email list
Reads a contacts or leads export from Salesforce, HubSpot, Zoho CRM, Pipedrive or another CRM, finds the opt-out, bounce and marketing-status columns by name, and splits it into a send list and a set-aside file with the reason per address. Repeats merged; an opt-out on any copy wins.
Suppression list merger
Takes any number of suppression files (CSV, Excel, or the Mailchimp audience export .zip) and pasted addresses, labels each address unsubscribed, bounced, spam complaint or suppressed, and merges them with every source named. Optionally removes them, and Gmail dot or +tag versions of them, from a send list.
Bulk Gmail checker
Checks many Gmail addresses at once: merges the same inbox written with dots, +tags or googlemail.com, flags username-rule breaks and typo domains, and asks Google about 10 mailboxes live.
Bulk Outlook email checker
Checks many outlook.com, hotmail.com, live.com and msn.com addresses at once: typo domains like hotmial.com, duplicates and +tag repeats flagged, and says plainly what Microsoft lets a checker confirm.
Bulk Yahoo email checker
Checks many yahoo.com, ymail.com and rocketmail.com addresses at once: typo domains like yaho.com, duplicates and Yahoo disposable addresses that share one inbox flagged, with what Yahoo can't confirm said plainly.
Bulk iCloud email checker
Checks many icloud.com, me.com and mac.com addresses at once: typo domains, duplicates, Sign in with Apple relay addresses and the same name at two Apple domains flagged, and 10 mailboxes checked live.
Bulk AOL email checker
Checks many aol.com, aim.com and aol.co.uk addresses at once: typo domains like aoll.com, duplicates and +tag repeats flagged, with why AOL's servers can't confirm a single mailbox said plainly.
Fake email checker
Flags addresses that look invented from their text alone: keyboard runs like asdf, placeholders like test@, reserved domains such as example.com, and random strings. Runs in your browser.
Email format finder
Reads a few name and address pairs, tells you which of 14 common formats fits, then builds addresses for other names at the same domain, or every common pattern when you know none. Guesses, flagged unverified. In your browser.
Email validation code generator
Copy-paste snippets for the input, a browser-side typo hint and a server-side mailbox check in Node.js, Python, PHP or cURL, with a choice of what to do when the verdict is risky.
International email checker
Finds non-ASCII domains and names in a list, shows each domain's punycode (xn--) form, flags names that need SMTPUTF8 and warns about domains that mix alphabets. In your browser.
Shopify email list checker
Reads a Shopify customers CSV, flags bad syntax, duplicates (including Gmail dots and +tags), typo, dead and disposable domains, and removes your unsubscribed list. Domains go to DNS; addresses stay in your browser.
Klaviyo list cleaner
Reads a Klaviyo profiles CSV, flags bad syntax, duplicates, typo, dead and disposable domains, and takes off your suppressed profiles. Domains go to DNS; addresses stay in your browser.