CSV Deduplicator
Duplicates sneak into CSV exports in annoying ways: repeated webhook deliveries, two reports concatenated by hand, or a join that fanned out rows you did not expect. This deduplicator hashes each data row and keeps only the first occurrence, so the output preserves your original row order while quietly dropping the copies. The header row is optional, flip the toggle if your file starts directly with data.
How the deduplication works
-
1
Paste the CSV
Include or exclude the header row; use the checkbox to tell the tool which it is.
-
2
Each row is hashed
Rows are parsed into arrays and an MD5 of their JSON representation is used as the uniqueness key.
-
3
First seen wins
The first row with a given hash is kept. Later rows with the same content are skipped silently.
-
4
Header preserved
If header mode is on, row 1 is always passed through without being deduplicated against the data.
What counts as a duplicate
The deduplicator uses full-row equality. Two rows are duplicates when every cell matches, position by position, after standard CSV parsing.
Things that still count as different
| Row A | Row B | Treated as |
|---|---|---|
Alice,30,Paris |
Alice, 30, Paris |
Different (extra spaces) |
Bob,25 |
Bob,25, |
Different (trailing empty cell) |
"Jane Smith",42 |
Jane Smith,42 |
Same (quoting is parser-level) |
TRUE,1 |
true,1 |
Different (case sensitive) |
When a column-level dedup would be more appropriate
Full-row matching is strict, which is usually what you want, but sometimes you actually want “one row per email regardless of other columns”. In that case, first use the CSV Column Extractor to reduce the file to just the key column, dedup that, and use the result as a lookup. Or reach for SQL: SELECT DISTINCT ON (email) * FROM users ORDER BY email, created_at DESC; in PostgreSQL, or a GROUP BY with MIN() aggregates elsewhere.
Practical tips
- Normalise before you dedup. Trim whitespace and standardise casing on the key columns first, otherwise
ALICE@EXAMPLE.COMandalice@example.comwill both survive. - Sort, then dedup, for auditable results. If you need to know which copy was kept, sort the CSV by your preferred tie-breaker (most recent timestamp, lowest ID) before running the deduplicator.
- Check the row count. Use the CSV Row Counter on the original and output to confirm how many duplicates were removed.
Frequently Asked Questions
No, it hashes full parsed rows. For single-column uniqueness, narrow the CSV down to that column first using the Column Extractor and then run the deduplicator.
The first occurrence in the file. Sort the CSV beforehand if you want a specific copy (the newest record, the lowest ID, etc.) to win.
Yes. Rows are parsed with standard CSV rules, so "Jane, Smith" stays a single cell and is compared as such.
The CSV is sent to our server to compute the deduplication. It is not stored or shared, and it is not added to the page link.
Related Tools
Word to Markdown Converter
Convert a Word DOCX file to clean Markdown in your browser. Keep headings, lists, links and simple tables, then copy or download the editable .md file.
Subtitle Converter
Convert SRT subtitles to WebVTT or VTT captions to SRT locally. Validate cue timings, preserve multiline text, then copy or download the result.
Excel Sheet Merger
Combine XLSX, XLS, XLSM, XLSB or ODS files locally. Keep source sheets separate or append rows with matching headers, then download an XLSX.
M4A to MP3 Converter
Convert M4A audio to MP3 for wider playback support. Upload an .m4a file and download a compatible .mp3 copy.
CSV to Excel
Convert CSV data to a single-sheet XLSX workbook in your browser. Review delimiters, preserve identifiers, infer safe numbers, and keep file contents local.
Archive Extractor
Inspect ZIP, JAR, XPI, DOCX, XLSX, PPTX and ODT containers locally in your browser, then download individual files without uploading the archive.
Tool available in other languages
- CSV-dubblettrensare [SV]
- Deduplicador de CSV [PT]
- Usuwanie duplikatów wierszy CSV [PL]
- โปรแกรมกำจัดข้อมูลซ้ำในไฟล์ CSV [TH]
- CSV重複削除ツール [JA]
- Trình loại trùng dữ liệu CSV [VI]
- Eliminador de duplicados CSV [ES]
- CSV-Deduplicator [DE]
- Penghapus Baris Duplikat CSV [ID]
- CSV Yinelenen Satır Temizleyici [TR]
- Dédupliqueur CSV [FR]
- CSV去重工具 [ZH]
- CSV 중복 데이터 제거 도구 [KO]
- CSV-duplicatieverwijderaar [NL]
- أداة إلغاء تكرار ملف CSV [AR]
- Удалитель дубликатов в CSV-файлах [RU]
- Deduplicatore CSV [IT]