Skip to content
SnapTools

Clean up a messy list

Runs in your browser

Paste your list below. Whitespace is normalised and duplicate lines are removed, keeping the first occurrence of each so the original order survives.

Why lists arrive dirty

A list pasted out of a spreadsheet, an email client or a web page brings trailing spaces, non-breaking spaces and occasionally HTML fragments with it. Those invisible differences are why an apparently duplicate row survives deduplication — the two lines are not actually identical. Normalising whitespace before comparing is what makes the deduplication reliable.

Order is preserved

The first occurrence of each line is kept and later repeats are dropped, so the sequence you had is the sequence you get back. That matters when the order encodes something — priority, chronology, or a matching order in another column.

A note on mailing lists

Deduplicating is a hygiene step, not a consent step. Having an address in a file is not permission to email it, and most jurisdictions treat that distinction as a legal one.

What deduplication cannot catch

Removing identical lines will not spot the same person listed twice under different addresses, nor addresses that differ only by a plus tag or a dot that some providers ignore. It also cannot tell a live address from one that stopped existing three years ago. Deduplication reduces obvious noise; genuine list quality comes from validation and from removing anyone who has not engaged, which no text tool can determine for you.

FAQ

Is my list uploaded?
No. Cleaning and deduplication happen in your browser. Nothing is transmitted or stored — worth knowing when the list is customer data.
Is the matching case-sensitive?
Yes. Alice@example.com and alice@example.com are treated as different lines. Lowercase the list first with the Case Converter if you want them merged, though be aware the local part of an address is technically case-sensitive.
Can I sort it as well?
Not yet — sorting is not currently a SnapTools capability. Deduplication here preserves your original order, which is usually what you want when the sequence is meaningful.

The tools behind this