Remove duplicate rows from CSV

Find and remove repeated rows in a CSV. Match on the whole row, or only on the columns that identify a record, such as email or order ID.

Loading the tool…

How to use it

  1. Drop or paste the CSV.
  2. Pick the key columns that define a duplicate (none selected = whole row), and whether to ignore case and surrounding spaces.
  3. Review the removed rows, then download the cleaned CSV or just the duplicates.

Private by design

The conversion runs as JavaScript in this tab. Your data is not uploaded, logged or stored. There is no account and no file-size paywall.

Which rows count as duplicates?

“Duplicate” depends on what you compare. Toggle the rules and watch the same five rows collapse differently. Struck-through rows would be removed.

#emailnamecompared asresult
1ada@example.comAda Lovelaceada@example.com | Ada Lovelacekept
2Ada@Example.comAda LovelaceAda@Example.com | Ada Lovelacekept
3ada@example.com␣Ada Lovelaceada@example.com | Ada Lovelacekept
4alan@example.comAlan Turingalan@example.com | Alan Turingkept
5alan@example.comA. Turingalan@example.com | A. Turingkept

0 of 5 rows removed.

What counts as a duplicate

Two rows are duplicates when their key columns hold the same values. “Ada@Example.com ” and “ada@example.com” are different strings to a computer; with ignore case and trim switched on they match, which is usually what you mean with email lists and names.

Keep first or keep last

Keep first preserves the earliest occurrence and is right for most lists. Keep last is useful when later rows are newer versions of the same record, such as an export appended over time.

Questions

Is my file uploaded anywhere?

No. The file is read by JavaScript in this tab and never leaves your device. You can load the page, switch off Wi-Fi and it keeps working.

Can I see which rows were removed?

Yes. The removed rows are listed and can be downloaded as their own CSV for checking.

Does row order change?

No. Remaining rows stay in their original order.

Can I dedupe across two files?

Merge them first with the CSV merger (tick remove duplicates), or use Compare CSV to see which rows are in both.

Related tools