CSV Cleaner
CSV Cleaner is a free data tool that runs directly in your browser with no account required.
About this tool
Clean a messy CSV in one pass: trim every cell, drop empty rows, remove duplicate rows, normalize headers to snake_case, and prune empty columns. A per-column quality profile shows missing-value counts and unique values, and you can download both the cleaned CSV and a JSON quality report.
How to use
- Upload a .csv file or paste data into the Input area.
- Toggle Normalize headers, Remove duplicate rows, and Keep empty columns to match your needs.
- Review the metrics and the column profile table (missing, unique, example values).
- Download cleaned.csv or the csv-quality-report.json.
Frequently asked questions
What does Normalize headers do?
It converts each header to lowercase snake_case ("Sign-up Date" becomes sign_up_date) and de-duplicates repeats by appending a number, which makes the file friendlier to databases and scripts.
How are duplicate rows detected?
After trimming, rows with identical values in every kept column are considered duplicates; the first occurrence stays and later copies are removed when Remove duplicate rows is checked.
What counts as an empty column?
A column with no header and no non-blank values in any data row. These are dropped unless you check Keep empty columns; the metrics report how many were removed.
What is in the quality report?
A JSON file with row and column counts, how many empty rows, duplicate rows, and empty columns were removed, total missing cells, and a per-column profile with missing rate, unique-value count, and an example value.
Does it handle quoted commas and multiline cells?
Yes. The parser supports RFC-style quoting, so values containing commas, doubled quotes, or line breaks are preserved intact through cleaning.
Is my CSV uploaded to a server?
No. The file is read and cleaned entirely in your browser, so datasets with personal or business data never leave your device.