Duplicate Line Remover
Clean a list down to its unique entries — and see exactly how many repeats you removed.
What the duplicate Line Remover does
This tool treats your text as a list of lines and keeps only the first appearance of each one. It is the fastest way to clean an email list pulled from two overlapping exports, collapse a log file down to its distinct messages, or check whether a keyword list has drifted out of shape.
Five options change what counts as a duplicate. Ignore letter case treats
Alpha@example.com and alpha@example.com as the same entry — usually
what you want for email addresses and domain names, rarely what you want for passwords or
case-sensitive identifiers. Trim spaces strips leading and trailing whitespace
before comparing, which catches the very common case of an item that only looks unique because it
carries a stray tab from a copy-paste. Drop blank lines removes empty rows
entirely. Sort reorders the output alphabetically using natural numeric ordering,
so item2 comes before item10.
The fifth option inverts the whole job. Show only the duplicated items gives you the entries that appeared more than once, rather than the deduplicated list — useful when the repeats are the thing you are investigating, such as finding which order IDs got processed twice. The counters underneath tell you how many lines went in, how many came out, and how many were removed, so you have a quick sanity check on whether the result is plausible before you use it.
How to use it
- Paste your list into the left-hand box, one item per line.
- Set the matching options. Leaving case-insensitive and trim-whitespace on suits most real-world lists.
- Read the counters to confirm the result looks right, then copy it or download it as a .txt file.
A worked example
A subscriber export merged from two sources:
alpha@example.com
beta@example.com
alpha@example.com
Gamma@example.com
gamma@example.com
beta@example.com
With ignore letter case on, six lines in becomes three lines out and three removed:
alpha@example.com
beta@example.com
Gamma@example.com
Note that the first spelling wins — Gamma@example.com survives and the later
lowercase version is dropped. Turn ignore letter case off and you get four lines instead,
because the two spellings of gamma are then treated as different people. Which
behaviour is correct depends on your system; email addresses are case-insensitive in practice, so
the default is usually right.
Frequently asked questions
Does it keep the first or last occurrence of a duplicate?
The first. The original order of your list is preserved, minus the repeats, unless you tick the sort option. If you specifically need the last occurrence, reverse your list before pasting it in and reverse the result afterwards.
Can I deduplicate a comma-separated list instead of lines?
Not directly — this tool works line by line. Use the Whitespace & Line-Break Formatter first to convert your separators into line breaks, deduplicate here, then convert back if you need to.
How large a list can it handle?
Lists of a few hundred thousand lines process in under a second because deduplication uses a hash map rather than repeated scanning. Very large files may be limited by how much text your browser will hold in a textarea, typically several megabytes.
Is my list uploaded anywhere?
No. All comparison happens in JavaScript on this page. Email lists and log extracts frequently contain personal data, which is exactly why this tool does not have a server component at all.