Choose what to fix
Cleaning
Duplicates
Find and replace
Columns
| Keep | Rename | Detected | Case | Numbers | Dates | Key |
|---|
Remove duplicates, trim spaces, fix dates and numbers, find and replace, then download a tidy file. Everything happens in this tab.
| Keep | Rename | Detected | Case | Numbers | Dates | Key |
|---|
Drop a CSV, TSV, JSON or .xlsx file, or paste cells. The delimiter and text encoding are detected for you.
Every fix is a switch. The preview and a count of what changed update as you go, so nothing happens silently.
Save CSV, TSV or JSON. Your original file is never touched.
Remove whole-row duplicates or match on key columns such as email, with optional case-insensitive matching. See a sample of what was removed.
Trim and collapse spaces, replace non-breaking spaces, strip zero-width characters and control codes that break lookups.
Convert mixed date formats to YYYY-MM-DD with a day-first or month-first choice, and turn "$1,200.50" or "(75)" into plain numbers. Unclear values are left unchanged and counted.
Drop empty rows and columns, and blank out placeholders like N/A, null or NaN.
Rename, remove or snake_case columns. Duplicate header names are made unique.
Plain text or regular expressions, on one column or all of them.
For each column: detected type, unique values, empty cells and ambiguous dates.
Reads .xlsx values (choose the sheet), UTF-8, UTF-16 and Windows-1252 text, with a note when it had to guess.
Optional protection against spreadsheet formula injection, and an optional byte-order mark for Excel.
Save your settings as a small JSON file to document what you did.
This page has no server-side code for your data and no analytics, ads, cookies or third-party scripts. Its security policy (connect-src 'none') tells your browser to block network requests made by the page, so it cannot send your file anywhere. To verify: open your browser's developer tools, go to the Network tab, clean a file, and watch that nothing is sent. You can also turn off your internet connection after the page loads and it keeps working. Your data lives in this tab's memory until you close it or choose "Clear data".
Files are parsed as plain text and shown as text, never run as code. Downloads are created in your browser.
No. Your browser reads the file and this page processes it in memory. See "Privacy you can check" above for how to verify it.
CSV, TSV, TXT with a delimiter, JSON arrays of objects, and .xlsx workbooks (values of one sheet at a time). Old .xls and .ods files are not supported; save them as .xlsx or CSV first.
Either whole-row matches or matches on the key columns you tick, optionally ignoring letter case. Matching happens after cleaning. The first occurrence is kept.
The file probably is not UTF-8. This tool falls back to Windows-1252 and tells you. If it still looks wrong, re-save the source as UTF-8. When opening the result in older Excel, tick the byte-order mark option.
No. You download a new file.
Yes. There is no account, trial or usage limit beyond your own computer's memory.