Deduplicate and clean your lead list CSV entirely in your browser: every removed row gets an explainable reason and nothing is ever uploaded.
Up to 15 MB and 50,000 rows. The first row must contain headers. Comma, semicolon and tab delimiters are detected automatically.
Every scraped or exported lead list picks up the same problems: duplicated contacts, stray whitespace, malformed addresses and role based inboxes. This cleaner fixes them in one deterministic pass:
Every decision carries a code, a plain English reason and the original row number, so nothing disappears silently. For the full manual workflow behind these rules, read the guide on how to clean a cold email list before sending.
Cleaning fixes what is visible inside the file: syntax, formatting, duplicates and obvious hygiene issues. Verification asks the receiving mail server whether an address actually accepts mail. This tool deliberately does not run SMTP verification, so a syntactically perfect address can still bounce. After cleaning, push the kept rows through the bulk email verifier, or check a single address with the free email verifier.
Duplicates are matched with a strict priority order, and the first available key always wins:
Two people with different emails are never merged just because they share a name and a company. Within a duplicate group, the kept row is the one with the most filled fields; on a tie the first row survives. The losing rows land in the excluded file with a pointer to the winning row, so you can reverse any call.
Addresses like info@, sales@, support@ or billing@ belong to functions, not people. They convert poorly in cold email and often feed spam traps, but they can be legitimate targets for procurement or partnership plays. That is why the cleaner defaults them to needs review instead of deleting them. Disposable domains are different: a mailbox on a burner provider will be dead within hours, so those rows are excluded outright.
Parsing, rule evaluation and CSV generation all run locally in this tab. The file content is never uploaded, cell values never enter analytics events, and refreshing the page clears everything. You can confirm this yourself: open your browser network panel while cleaning and you will see no request carrying your data.
A good next move after cleaning: segment the cleaned list before writing a single email, and if you started from a raw company list, see how to turn a company list into verified contacts.
Cleaning is the first gate, not the last. Run the cleaned file through the bulk email verifier to catch dead mailboxes, then confirm the whole campaign setup with the campaign readiness checker before you send.
Customer reviews
Don't take our word for it