CSV Cleaner
Fix a messy export before it breaks your import: wrong encoding, stray spaces, uneven rows, repeated records and mixed date formats. It reports every change, and rows it cannot place go to a separate file instead of being lost.
Click to choose or drag and drop
CSV, TSV or TXT up to 50 MB. Your file stays on this device.
What changed
Check these
Preview
Why a CSV file breaks, and what this tool leaves alone
CSV looks like a format with rules, but it mostly has habits. RFC 4180 describes the common form: fields holding a comma, double quote or line break go in double quotes, and a quote inside one is doubled. The RFC itself says it does not specify an Internet standard, which is why one program's export can trip up another's import. European spreadsheets often use semicolons, older Windows programs often write Windows-1252 rather than UTF-8, and a single unclosed quote can swallow the rows after it.
Values are treated as text unless you ask for a conversion, so ZIP codes keep their leading zeros and long IDs keep every digit. That matters after the file leaves here too. Microsoft says Excel has a maximum precision of 15 significant digits and that digits past the fifteenth are lost, so a 16-digit code needs to be imported as text. A value already saved as 1.23E+11 has lost its digits, and no tool can bring them back.
Spreadsheets can also run a cell as a formula. OWASP lists cells beginning with an equals sign, plus, minus or at sign, along with tab and line-break characters. If a file came from a web form or other outside source, tick the protect option before opening it in a spreadsheet. It adds an apostrophe to those cells, leaves ordinary numbers and phone numbers alone, and changes the data, so leave it off for a file going into a database.
Sources: RFC 4180, Microsoft Support on long numbers in Excel and OWASP on CSV injection. Last checked by us on October 31, 2026.
About the CSV Cleaner
Runs in your browser; nothing is uploaded. How we handle your data
The CSV Cleaner repairs the problems that make an import fail or quietly corrupt data. It detects the encoding and separator, trims stray spaces, repairs garbled accents such as "José", removes empty rows, and fills blank or repeated column names. You can also convert a column of dates to YYYY-MM-DD, normalize numbers, and remove repeats by the whole row or by chosen columns such as email.
It is deliberately cautious. Values stay text unless you ask for a conversion, so leading zeros survive. A date it cannot read for certain, such as 31/02/2026, is left as written and listed in the report, not guessed. A row with more cells than the header goes to a separate set-aside file with its reason and line number, because there is no way to tell which cell is the extra one.
Everything runs in your browser, so customer lists and financial exports are not uploaded. Before saving, the tool reads the finished file back and only offers it if it matches the table you previewed.
How to use it
- Choose a file, paste your data, or try the messy example.
- Check how the file was read. Change the encoding or separator if the summary looks wrong.
- Choose what to clean, and set a conversion for any date or number columns.
- Read the report and the preview, where changed cells are shaded. Hover a cell to see its old value.
- Choose the file format and download the clean file, plus the set-aside rows if there are any.
Common uses
- Preparing a customer list for a CRM or email tool that rejects bad rows.
- Fixing accents broken by a Windows export.
- Removing repeat contacts by email address while keeping the first of each.
- Turning mixed day-first dates into a form a database accepts.
- Reopening a European semicolon file in a program that expects commas, or the reverse.
Tips
- Keep your original file. Cleaning cannot recover digits a spreadsheet has already rounded, such as a value saved as 1.23E+11.
- Exact repeats are kept by default, because two identical rows can be real, such as two equal payments. Turn removal on only when you know they are mistakes.
- If every date in a column could be day first or month first, the tool cannot tell which from the values. Choose the order you know is right, and spot-check the preview.
- Choose UTF-8 for Excel when the file will be opened in Excel, and plain UTF-8 when a program or database will import it.
- To turn the clean file into JSON, use the CSV to JSON Converter.