CSV CLEANER
Clean a CSV file
Remove duplicate and empty rows, trim stray spaces and review every change before you download. Free, no account, and your file stays in this browser tab.
CLEANING PREVIEW
Cleaned data
- Removed row
- Extra spaces removed
- Empty cell filled
Removed records are left out of this view and your download.
COMPARISON PREVIEW
What changed?
A inventory-september.csv vs B inventory-october.csv Sample data Change files ↓
Values show before → after. Added rows appear only in B; removed rows appear only in A. Reports protect cells that could run as spreadsheet formulas.
| Lines | Status | sku | product | price | stock |
|---|---|---|---|---|---|
| A 2 · B 3 | Changed · 1 cell | A-100 | Canvas tote | 24.00 | |
| A 4 | Only in A | A-102 | Linen apron | 32.00 | 18 |
| A 6 · B 2 | Changed · 1 cell | A-104 | Wool throw | 7 | |
| B 6 | Only in B | A-105 | Cedar coasters | 18.00 | 40 |
What this CSV cleaner does
Open a file, or start from the example above: 11 rows become 8, with 3 cells trimmed, 2 empty rows removed and 1 duplicate removed. Review changes lists each one by line, so you can see what was removed and why before you download.
The clean-up steps
- Trim extra spaces from the start and end of each cell.
- Remove empty rows, including rows that contain only spaces.
- Remove duplicate rows by the entire row or by one column, optionally ignoring case, keeping the first or the last copy. Rows with an empty key are never treated as duplicates. See the duplicate rules with examples.
Every step can be switched off. To convert a file without changing any values, turn them all off.
Problems it stops at
Rows shorter than the header are filled with empty cells and marked. A row with more filled cells than the header pauses the download, because those values have no column to go in, and so does a broken quote. Ten broken files show what is and is not caught.
Download formats
Save with a comma, semicolon, tab or pipe, or as JSON with one object per row. Changing the separator keeps quoted cells and decimal commas in one column. CSV downloads are UTF-8 with a byte order mark; here is what that means. Starting from a text file? Five TXT layouts, tested.
Values stay as written
Every cell is kept as text: 02134 stays 02134, and long IDs keep every digit. For spreadsheets, “Protect against spreadsheet formulas” adds an apostrophe before cells that could run as formulas, and shows how many it affects. Turn it off for database or API imports.
Limits
CSV, TSV or delimited text up to 15 MB. The table previews the first 400 rows and the download includes every row. Excel workbooks are not read: save the sheet as CSV first.
Cleaned two versions of a file? Compare them by ID.