Word Counter
Count words, characters, sentences and paragraphs as you type, with reading and speaking time alongside.
Remove duplicate lines from a list while keeping the first copy of each in its original position. The tool also shows how many lines went in and how many came out.
Updated
Your browser is preparing the tool. It runs 100% locally.
Paste a list and the tool removes duplicate lines. It keeps the first occurrence of each and leaves everything in its original order. Lines are compared on their trimmed text, so two lines that differ only in surrounding spaces count as the same, and the comparison is case-sensitive. You also see how many lines went in and came out. The list never leaves your browser.
Give the tool a block of lines and it returns only the unique ones. A line is kept the first time it appears, later identical lines are dropped, and the kept lines stay in the order you had them.
It cleans up a list of email addresses, URLs, names or log lines where the same entry has crept in more than once. Your data is not sorted or rearranged.
The tool reads your text line by line and remembers each line it keeps. When it meets a line it has already kept, it skips it. Lines are compared on their trimmed content, so leading and trailing spaces don't prevent a match.
Because it works through the lines in order and keeps the first of each, your original ordering survives. The line counts before and after tell you how many duplicates were removed.
for each line, compare its trimmed text to the lines already kept
first time seen → keep it
seen before → drop it (order of the kept lines is preserved)apple / banana / apple / cherry → apple / banana / cherry (4 lines in, 3 out)The first occurrence is kept and the order is preserved. Matching ignores surrounding spaces but is case-sensitive, so Apple and apple count as different lines.
For a plain list the result is exact. Each unique line appears once, in order, and every later duplicate is gone. The two line counts show how many repeats were removed.
Matching is case-sensitive. Apple and apple count as two different lines and both are kept. Convert the text to lower case first if you want case ignored.
Lines are compared on their trimmed content, so two lines that differ only in leading or trailing spaces count as duplicates. The output keeps the spacing of the first one.
Only whole-line duplicates are removed. Repeated words inside a line, near-duplicates and lines that differ only by punctuation are all kept as separate lines and need a different cleanup step.
Remove repeated emails, URLs or names from a list.
Collapse repeated log entries to unique ones.
Drop duplicate rows pasted from several sources.
Make sure a list of values has no repeats before you import it.
To ignore case, convert the text to lower case first and then remove duplicates. To sort as well, run the result through a line sorter. Near-duplicates need a fuzzy-matching tool, because this one removes exact whole-line repeats only.
Lines are matched on their trimmed text and the match is case-sensitive. The first copy of each line stays where it was, and later repeats are dropped.
Count words, characters, sentences and paragraphs as you type, with reading and speaking time alongside.
Tidy messy spacing by collapsing repeated spaces and stacked blank lines. Single line breaks and paragraph gaps stay where they are.
Remove line breaks and join text into one flowing line.
Switch text between UPPERCASE, lowercase, Title Case, Sentence case, and aLtErNaTiNg with one click per case.
Generate placeholder Lorem Ipsum paragraphs, starting with the classic opening line or fully random.
Paste two versions of a text and see what changed line by line, with additions in green and removals in red.
Your file is processed on this device and never uploaded, and there's no account to create.