Classify the columns first
Flag obvious columns such as name, email, phone, address, account_id, customer_id, employee_id, patient_id, date_of_birth, IP address, notes, and comments.
Do not assume generic headers are safe. A column called value, text, response, or metadata may contain complete messages or nested records.
Inspect representative values
Look across the whole file or a statistically useful sample, not only the first few rows. Sensitive data may appear only in exceptions, notes, rejected records, or older entries.
Search for email patterns, international phone formats, URLs, dates, long IDs, postal addresses, and free-text descriptions.
Choose deletion, masking, or generalization
Delete a column when it is unnecessary. Mask values when the field location matters. Generalize ages, dates, locations, and amounts when analysis needs a category rather than an exact value.
Consistent pseudonyms preserve grouping but may still enable re-identification when combined with other data. Use them carefully.
Verify the exported copy
Compare headers, row count, delimiter, quoting, encoding, and line breaks with the source. Open the cleaned file in a spreadsheet application and inspect random rows.
Keep the original in an approved location and share only the verified anonymized copy.
Final review checklist
- Unnecessary columns removed
- Free-text columns reviewed manually
- All rows or a meaningful sample scanned
- Quoted commas and line breaks preserved
- Clean copy opened and checked