“Remove duplicates” is incomplete without defining what makes two rows equal. Extra spaces, dropped columns and empty values all affect the answer. SyntaxPad shows an explicit cleaning order so you can reproduce the result.
Start with four records
name,postal_code,team
Alex ,00123, Support
Alex,00123,Support
Sam,00456,Sales
,,Load the CSV Cleaner example. Keep Trim cells, Remove blank rows and Remove duplicate rows selected. Run the cleaner. Four data rows become two: Alex and Sam. The header is not counted as a data row.
What happens first
- Parse quoted CSV fields without guessing numeric types.
- Trim leading and trailing whitespace from cells, if enabled.
- Remove rows whose cells are all empty after that operation.
- Select and reorder columns, if a column list was supplied.
- Remove exact duplicate rows from the remaining cells.
In this sample, trimming makes the first Alex row equal to the second. Without trimming, both are kept. Case is significant: Alex and ALEX remain different. A cell containing 0 is not blank.
Column selection changes identity
Enter name,postal_code in the columns field to omit the team. If two original records differed only in team, they would now become identical and one could be removed. That may be useful for a mailing list, but wrong for a team-membership export. Keep identifying columns until you have defined the intended result.
The current column selector accepts exact header names separated by commas. Headers containing commas cannot be selected with that simple control; leave the selection field empty to keep all columns. A typo or duplicate selection is rejected instead of silently returning a different table.
Protect spreadsheet-bound exports
Spreadsheet formula protection is on by default. Formula-like string cells beginning with characters such as =, +, - or @ are prefixed with an apostrophe. This intentionally changes the cell text to reduce the chance of a spreadsheet interpreting it as a formula. Protection is not a universal guarantee across spreadsheet software or import settings.
If a downstream system requires the exact source text, understand its behavior before disabling protection. Always inspect the actual downloaded CSV and test import settings with a small sample. Postal codes still need a text column on spreadsheet import; export quoting alone does not force their type.
Verify the useful details
Check the row count, header order, postal codes, an example with a quoted comma, and any intentional whitespace. Keep an original copy outside the tool. Cleaning can be deliberate and still discard information; a readable preview helps you decide whether those changes match the task.
References: Papa Parse CSV parsing and export options; OWASP: CSV injection.
Try the same steps
Open CSV Cleaner and load the example to get started.