Loading developer tools…
Loading developer tools…
Deduplicate any list with case sensitivity, sort, and trim options. Real-time output with duplicate count.
A merged email list, a scraped set of URLs, or a CSV export often ends up with the same entry repeated several times — sometimes with different casing or stray whitespace that makes it hard to spot by eye. This tool takes any list, one item per line, and filters it down to unique entries, with options to control case sensitivity, trim whitespace, drop blank lines, and sort the result. It runs entirely in your browser, so nothing you paste in is ever sent to a server.
8
Input lines
4
Unique lines
4
Duplicates removed
Output (deduplicated)
apple banana orange grape
Format, validate, and minify JSON with syntax highlighting and error detection
Decode and inspect JSON Web Token headers, payloads, and expiry claims
Encode text or files to Base64 and decode Base64 strings back to plain text
Convert Unix timestamps to human-readable dates and vice versa, in any timezone
Paste your list
Paste any list of items into the left panel — one item per line.
Configure options
Toggle 'Case sensitive' to treat 'Apple' and 'apple' as different (or the same). Toggle 'Trim lines' to strip leading/trailing whitespace. Toggle 'Remove empty' to skip blank lines.
Choose sort order
Select None to preserve original order, A → Z for ascending, or Z → A for descending.
Review the output
The right panel shows the deduplicated list in real time. The stats bar shows how many duplicates were removed.
Copy the result
Click 'Copy' to grab the deduplicated list.
The tool treats your input as a list of lines — whatever you paste in, split at every line break, is one item. It does not parse commas, tabs, or other delimiters within a line; two lines are only considered duplicates if the line text itself matches (subject to the options below). That makes it a good fit for lists that are naturally one-item-per-line already: email addresses, URLs, keywords, SKU codes, or rows exported from a spreadsheet where each row is a single value.
By default, comparison ignores case — "Apple" and "apple" are treated as the same entry, and only the first occurrence is kept. Turning on "Case sensitive" changes that, so differently-cased versions of the same word are kept as distinct lines. Separately, "Trim lines" strips leading and trailing whitespace before comparison, which matters more than it might seem — a copy-pasted list from an email client or a PDF often carries invisible trailing spaces that make otherwise-identical lines fail to match unless they're trimmed first. "Remove empty" drops blank lines entirely rather than counting them as a giant set of duplicate empty strings.
Conceptually, the underlying approach is straightforward: each line is checked against a running collection of lines already seen, and only the first appearance of each unique value is kept — the same pattern you'd get comparing against a Set for fast lookups, which keeps the process quick even on lists with thousands of lines, since checking whether a value has been seen before doesn't require re-scanning everything that came before it. Order is preserved by default; opting into A → Z or Z → A sort applies afterward, on the already-deduplicated list, so the "duplicates removed" count stays accurate regardless of sort choice.
Common uses include cleaning a mailing list before a send, deduplicating a CSV export where the same row was accidentally included twice, or merging two lists of URLs or keywords collected from different sources into one clean set. If your list also needs case normalization — converting everything to lowercase or uppercase rather than just comparing case-insensitively — run it through the Case Converter first or after deduplicating.
Unlike most online tools, Toolivon processes everything directly in your browser using the Web APIs built into Chrome, Firefox, Safari, and Edge.
Last updated:
Your data never leave your device
All processing runs directly in your browser using built-in Web APIs — the Canvas API, Web Audio API, and WebAssembly. Nothing is uploaded to any server. There is no account, no email, and no data retention. You can verify this yourself: open your browser's DevTools Network tab and watch zero outbound file requests while the tool processes your data.
GDPR-friendly · Works offline after page load · No file size limits beyond your device memory