Clean your email list — validate, dedupe, and spot role accounts

Paste an email list and get a clean, deduplicated list back, plus a row-by-row report of every invalid, duplicate, or role address removed.

🔒 100% client-side · zero server upload

What was removed

Malaysian rules & edge cases

Syntax first, mailbox second. This cleaner checks RFC-style syntax (one @, a dotted domain, a TLD of at least two letters) and lowercases everything, because ALI@Gmail.com and ali@gmail.com are the same mailbox. It cannot check whether a mailbox actually exists without sending mail — that check would need a server, which this tool never uses.

RuleWhat happensTypical Malaysian case
Invalid syntaxxxx, xxx@, @gmail.com are dropped and reportedCRM exports with truncated fields and half-typed addresses
DuplicatesCase-insensitive dedupe: Ahmad@KEDAI.com = ahmad@kedai.comProgramme lists merged from Shopee buyers and walk-in sign-ups
Role accountsadmin, info, hello, sales, support, noreply and similar are flagged; optionally removedBroadcast lists full of company inboxes nobody reads
Domain statsCounts per domain: gmail.com, yahoo.com, outlook.com, .my domainsSeeing that 80% of a Malaysian customer list is free mail
CSV modeOutputs email,domain,is_role for spreadsheet reviewHandover to a mail tool like SifuMail business email hosting

Empty lines are dropped and reported, CRLF line endings from Excel and Notepad are handled automatically, and a trailing newline at the end of the file does not create a phantom blank row. Everything runs in your browser: no upload, no server, no account.

Before and after

Before

Ali@GMAIL.com
admin@kedai.com.my
xxx@
ali@gmail.com

Sara@Yahoo.com

After

ali@gmail.com
admin@kedai.com.my
sara@yahoo.com

How it works

  1. Paste your email list into the INPUT box, or press "Load sample data" to see a Malaysian example.
  2. Choose whether to remove role accounts and whether to output plain lines or CSV with domain stats.
  3. Press Run. The OUTPUT box holds the clean list, and the report below lists every invalid, duplicate, or role address that was removed and why.

FAQ

Does this upload my email list to a server?

No. The whole tool is static JavaScript that runs in your browser. You can confirm zero requests in your browser Network tab when you press Run, which matters for customer email lists.

Can it prove a mailbox actually exists?

No. It validates syntax, deduplicates, and flags role accounts. Proving a mailbox exists requires a mail server check, which would need to upload your data. For business sending, use a proper hosting provider.

Which duplicates are kept?

The first occurrence. Every later case-variant of the same address is removed and reported by line number, so you can trace exactly what disappeared.

What counts as a role account?

Local parts like admin, info, hello, sales, support, noreply, contact, billing and similar shared inboxes. They are flagged by default and only removed when you tick the option.