Column-based cleanup · Runs in your browser

CSV Cleaner & Deduplicator

Clean CSV records locally: select columns for duplicate checks and whitespace trimming, remove empty records, then copy or download the complete CSV.

1. CSV input and columns

Your text and files are not uploaded or automatically saved in browser storage. Do not enter passwords, API keys or other secrets.

Up to 2 MB input (2,000,000 UTF-8 bytes), 20,000 data records, 100 columns and 8 MB output. A line break inside a quoted cell does not start a new record.

Imported CRLF/CR line breaks inside quoted cells are preserved until you edit the source. Pasted or edited text uses the line breaks delivered to the input field.

Clean records, not physical lines

A product note can contain a comma or a line break without creating a new record. This tool reads quoted CSV cells before applying cleanup rules. Numeric-looking identifiers remain strings rather than becoming rounded JavaScript numbers.

How to use it

  1. Paste CSV or import a UTF-8 file. Choose comma or tab and confirm whether the first non-empty record contains column names.
  2. Select Inspect columns. Column numbers distinguish empty or repeated names.
  3. Choose trimming and duplicate-comparison columns separately. Run cleanup and review the counts and complete output.
  4. Copy or download CSV. Editing input or options clears the previous result, so run cleanup again.

Processing order

Trim selected cell edges → remove fully empty records → deduplicate selected values, cell presence and record width → protect formula-like output cells and quote CSV.

Headers are not trimmed or deduplicated. If empty-record removal is off, their original cell counts remain. Uneven non-empty records cause an error instead of being padded or cut. Whitespace-only cells are not empty unless the selected trimming rule makes them empty.

Same ID, different notes

Consider the fictional records 0012,Ada,first enquiry and 0012,Ada,follow-up. Comparing every column keeps both. Comparing only the ID keeps the first record and its note. The strings 0012 and 12 remain distinct. This is not a note-merging tool, so choose the comparison columns carefully.

Before importing the result

Output is UTF-8, comma-delimited CSV with every cell quoted and CRLF record separators. It is not byte-identical to the source file. Potential formula starters receive an apostrophe, which can also turn negative numbers into text. Spreadsheet re-saving and automatic number detection are outside this tool’s control.

Questions and limits

Can I save an empty result?

Yes. If no data records remain, the result contains the header alone or is a zero-byte file without a header. This is a valid cleanup result, not a processing error.

Can I upload an Excel workbook or use another encoding?

XLSX and XLS are not supported. Export UTF-8 CSV from the original program. Other encodings, including CP949, are not guessed or silently replaced with damaged text. Files are read locally, not uploaded.

Is the error record number a screen line number?

No. It counts logical records, including headers and empty records. Quoted line breaks can make it different from a physical line number.

CSV format reference · CSV formula risks and limits · Feature and format reference checked:

한국어 CSV 도구

Content basis and verification

· Calculations run in your browser. Check the formula and assumptions on this page, and confirm important financial, tax, medical or legal decisions against current official guidance.
Maintained and reviewed by: Easynivo · Report a correction or source change