Order preserved
- Input
- b a b c
- Output
- b a c
The first occurrence of each line is kept, so a list ordered by relevance or date keeps its ordering. Keeping the last occurrence instead would silently reshuffle it.
This tool removes repeated lines from a list — email addresses, URLs, identifiers, log lines. It keeps the first occurrence of each rather than the last, which matters whenever the list is ordered by something: a ranked set of results, a prioritised backlog, a chronological log. It also reports what was duplicated, which is often more interesting than the cleaned list.
Runs entirely in your browser — nothing you paste is uploaded.
How to
One value per line. Paste from a spreadsheet column, a log file or a query result.
Exact matching compares lines literally. Trimmed ignores surrounding spaces, and case-insensitive treats Alice and alice as the same — which is usually right for email addresses.
The most frequently repeated values are listed with their counts, which often reveals the reason the duplicates exist.
Copy or download the result. The original order is preserved unless you ask for it to be sorted.
Examples
The first occurrence of each line is kept, so a list ordered by relevance or date keeps its ordering. Keeping the last occurrence instead would silently reshuffle it.
The domain part of an email address is case-insensitive and in practice the local part is too, so these are the same address. The first spelling is kept.
A trailing space from a copy-and-paste makes two lines differ. Trimmed matching treats them as one, which is almost always what was meant.
Why use it
The first occurrence is kept, so a list sorted by rank, date or priority is still in that order afterwards.
The duplicate report with counts frequently explains the underlying problem — a join fanning out, an export run twice.
Whitespace and case differences are usually noise, but not always, so how strictly lines are compared is up to you.
Lists of email addresses and customer identifiers are exactly the data you should not paste into a random website. This one does not transmit it.
Good to know
Summary
FAQ
Discover