Skip to Content
RowSlice

Free CSV Tool

Remove Duplicate Rows from a CSV File

Clean repeated records out of mailing lists, CRM exports and merged reports. Compare whole rows or just the columns that identify a record.

  • No file size limit
  • Never uploaded
  • Free, no sign-up

How to Remove Duplicates from a CSV

  1. Choose or drag in your CSV file and check the preview.
  2. Decide what makes two rows the same: every column matches for exact copies, or these columns match to compare only key columns like email.
  3. Tick Ignore upper and lower case and Ignore spaces if the data was typed by people.
  4. Press Remove Duplicates and download the cleaned file.

Whole-Row Duplicates vs. Key-Column Duplicates

Exact duplicate rows usually come from the same export being run twice, or from merging files whose date ranges overlap. Comparing every column removes those and nothing else, so it is the safe default.

Duplicate records are different: the same customer signed up twice with a different phone number, or the same product appears with two prices. The rows are not identical, so a whole-row comparison keeps both. Compare only the column that should be unique — the email address, the order number, the SKU — and the tool keeps the first row for each.

emailnamesignupEvery columnEmail only (ignore case)
ann@shop.comAnn2026-01-04KeptKept
ann@shop.comAnn2026-01-04RemovedRemoved
Ann@Shop.comAnn B.2026-03-18KeptRemoved
bob@shop.comBob2026-02-11KeptKept

Why Not Use Excel's Remove Duplicates?

Excel's Data › Remove Duplicates works well for files that fit on a sheet. It cannot help once the file has more than 1,048,576 rows, because Excel never loads the rest. It also changes values as the CSV is opened — leading zeros disappear from codes, long numbers are rounded — so two IDs that were different in the file can become identical in Excel and one of them gets deleted.

This tool reads the raw text of your CSV, so 00123 and 123 stay different values. It streams the file and keeps only a small fingerprint per unique row in memory, so it can clean files with tens of millions of rows on an ordinary laptop, and your data never leaves it.

Last updated .

FAQ

Frequently Asked Questions

Which copy of a duplicate row is kept?

The first one. Rows are kept in their original order, and any later row that matches a row already seen is removed. If you want to keep the most recent record instead, sort the file newest-first before removing duplicates.

How do I remove duplicates based on one column, like email address?

Choose these columns match and tick only the column that identifies a record, such as email or customer_id. Two rows then count as duplicates when that column matches, even if other columns differ. Tick several columns to match on a combination, such as first name + last name + date of birth.

Will “John@Example.com” and “john@example.com ” be treated as the same?

Only if you ask for it. Tick Ignore upper and lower case and Ignore spaces at the start and end of values to treat them as duplicates. The row that is kept is written exactly as it was in the file.

Can I see which rows were removed?

Yes. Tick Also save the removed rows to a separate file. You then get a second CSV with the header and every removed row, which is a good way to check the result before deleting anything.

How accurate is it on millions of rows?

To handle files larger than your computer's memory, the tool remembers a 64-bit fingerprint of each row instead of the row itself. Two different rows would have to produce the same fingerprint to be confused, and the odds of that are about 1 in 3.7 billion for a file with 100,000 unique rows, and about 1 in 370,000 for 10 million unique rows. For any file that fits in Excel, you can treat the result as exact.

Can I de-duplicate a mailing list without uploading it to a website?

Yes, that is the point of this tool. Duplicates are found by code running in your own browser and the cleaned file is written to your own disk, so a list of real names and email addresses never leaves the machine it is already on. No account, no server-side copy, and nothing retained after you close the tab.

Guides

More Tools

More CSV Tools