Remove duplicate CSV rows

Remove repeated CSV rows or keep one row for each selected key value.

freeworks offlinenothing uploaded
ToolCSV Deduplicator
Input
Output
Put this on your own site

The frame below runs the same code as this page, in the reader's own browser. Nothing is sent to us, and nothing is sent to you.

Pick a dark background and the text and panels follow it, so the frame stays readable on a dark page.

Preview

How it works

Rows are parsed and keyed by the complete row or a chosen column. The first occurrence stays by default; keep-last replaces its earlier position before quote-aware serialization.

  • Whole-row matching avoids assuming a business identifier.
  • Keep-first preserves order; keep-last lets later corrections win.

Worked example

Remove exact duplicate rows from user data
Deduplicate a CSV with one fully repeated row ([email protected] appears twice)
Input
											email,name,plan
[email protected],Alice,pro
[email protected],Bob,free
[email protected],Charlie,pro
[email protected],Alice,pro
[email protected],Bob,enterprise
										
Output
												email,name,plan
[email protected],Alice,pro
[email protected],Bob,free
[email protected],Charlie,pro
[email protected],Bob,enterprise
											

When to use this

CRM cleanup removes repeats, event logs collapse duplicate IDs, and mailing lists keep one email record.

Edge cases

  • Same email with different names remains distinct under whole-row matching.
  • A delimiter inside quotes is part of the parsed key value.
  • Keep-last can move the surviving record to its later position.

References