Data Anonymizer

Anonymize sensitive PII in CSV or JSON data. Auto-detects names, emails, phones, SSNs, credit cards, and IPs. Deterministic mode available.

Updated

Share:
Home/utility-tools/Data Anonymizer

Data Anonymizer

Anonymize sensitive data in CSV or JSON. Auto-detects PII columns (names, emails, phones, SSNs, credit cards, IPs) and replaces them with realistic fake data.

Load Data

Drag & drop a CSV or JSON file, or click to browse

Frequently Asked Questions

What PII is detected?

Names, emails, phone numbers, addresses, SSNs/IDs, credit cards, IP addresses, dates of birth — auto-detected by column header name, or manually assigned.

Is data uploaded?

No. All anonymization runs in your browser. No data leaves your machine.

What is deterministic mode?

Same input always produces same anonymized output via a seeded PRNG. Preserves referential consistency across your dataset.

Is the Data Anonymizer free to use?

Yes, the Data Anonymizer is 100% free with no registration, no hidden fees, and no usage limits. All processing happens locally in your browser, ensuring complete privacy.

Does the Data Anonymizer work on mobile devices?

Yes, the Data Anonymizer is fully responsive and works on smartphones and tablets. You can use it on any device with a modern web browser -- no app download required.

Do I need to create an account to use this tool?

No account or registration is needed. Simply open the Data Anonymizer in your browser and start using it immediately. There are no sign-up walls or usage restrictions.

How do I use the Data Anonymizer?

Simply enter your input in the provided field, adjust any settings to your preference, and the tool will process it instantly. You can then copy the result to your clipboard or download it.

Which browsers are supported?

The Data Anonymizer works in all modern browsers including Chrome, Firefox, Safari, Edge, and Opera. For the best experience, use the latest version of your preferred browser.

What is the difference between anonymizing, masking, and redacting data?

Redacting removes a value entirely, replacing it with a placeholder like [REDACTED] so nothing remains to read. Masking hides part of a value while keeping its shape, the way a card number shows only the last four digits. Anonymizing goes further: it substitutes realistic but fake values — a different name, a fictional phone number, a shifted date — so the data still looks and behaves like the original but can no longer be traced to a real person. This tool does all three. You choose a rule per column, including Redact for full removal, Hash for a stable pseudonym, or category-specific replacement that regenerates format-correct fake names, emails, SSNs, and addresses. Pick the strategy that fits how the data will be used, then export the cleaned copy as CSV or JSON.

How do I keep the same person mapped to the same fake value across multiple files?

Turn on deterministic mode before you anonymize. By default each run draws fresh random values, so "John Smith" could become a different fake name every time. Deterministic mode uses a seeded generator (default seed 42) so the same input always produces the same output. That means "John Smith" becomes the identical fake name in every row and every file you process with that seed, and a hashed customer ID lines up across tables, keeping your foreign keys and joins intact. This referential consistency is essential when one person appears in several related datasets and you need the relationships to survive anonymization. Change the seed to generate a different but equally consistent mapping. Enable the deterministic toggle, set your seed, and process each file the same way to keep records linked.

How does the tool decide which columns contain personal information?

Auto-detection works by matching your column header names against known patterns. A header called email, phone, ssn, dob, or address is recognized and flagged as a PII column before you do anything, and detected columns are highlighted so you can see your exposure at a glance. The categories it looks for include names, emails, phone numbers, postal addresses, SSNs and national IDs, credit card numbers, IP addresses, and dates of birth. Because detection is based on header names rather than reading every cell, an oddly named column may not be flagged automatically — but you can manually assign any rule to any column, so nothing is locked to the auto guess. Paste your CSV or JSON, review the highlighted columns, adjust assignments where needed, and anonymize with confidence that the right fields are covered.

Will anonymizing my data break the format or shape of the dataset?

No. The tool is designed to preserve structure: the output keeps the same columns, the same row count, and the same value formats as your original. Replacement values are format-correct, so a fake phone number still looks like a phone number, a substituted SSN keeps the right digit pattern, and a regenerated email is a valid address. For dates you can use the shift rule, which moves each value by a random offset of up to 30 days in either direction, preserving rough timing without the exact date. For numeric columns like salaries, the noise rule perturbs values by up to ten percent so the distribution stays realistic. This keeps anonymized data usable as test data with correct types and intact relationships. Use the before-and-after preview to confirm the shape held before you export.

What does the Hash option do and when should I use it instead of Redact?

The Hash rule converts a value to the first eight characters of its SHA-256 digest, computed in your browser with the Web Crypto API. Unlike Redact, which overwrites everything with [REDACTED] and discards the value entirely, hashing produces a stable pseudonym: the same input always hashes to the same short string, so you can still group, count, or join on that column without ever exposing the real identifier. Use Hash when you need to keep relationships — like linking orders to a customer ID across tables — but must not reveal the underlying value. Use Redact when the field carries no analytical value and should simply disappear, such as a free-text notes column with stray personal details. Assign Hash to your key columns and Redact to the rest, then export the result as CSV or JSON.

About the Data Anonymizer

The Data Anonymizer turns a spreadsheet full of personal information into a safe, shareable copy. Paste CSV or JSON, or drop in a file, and it scans your column headers, flags the ones that look like personally identifiable information (PII), and replaces those values with realistic fake substitutes. The result keeps the same shape as your original data — same columns, same row count, same formats — but none of the real people in it. It is built for developers seeding test databases, analysts sharing samples with vendors, and anyone who needs to hand off data without leaking customer details.

Everything happens in your browser. Your file is read locally with the FileReader API and processed on your device; nothing is uploaded to a server. There is no sign-up and no row limit, so you can run a confidential customer export or a production extract without it leaving your machine.

What it detects and how it replaces data

Auto-detection works by matching column names against known patterns, so a header called email, phone, ssn, or dob is recognized and flagged before you do anything. Detected categories include names, emails, phone numbers, postal addresses, SSNs and national IDs, credit card numbers, IP addresses, and dates of birth. Anything the tool spots is highlighted as a PII column so you can see your exposure at a glance.

You then pick a rule per column from twelve options:

  • Names — swapped for a random first and last name from a built-in list.
  • Email — replaced with a safe randomuser####@example.com address.
  • Phone, SSN/ID, Credit Card, IP, Address — regenerated as format-correct but fictional values.
  • Date (shift) — moved by a random offset of up to 30 days in either direction, preserving rough timing without the exact birth or event date.
  • Number (noise) — perturbed by up to plus or minus 10 percent, useful for salaries or metrics where the distribution matters but exact figures should not.
  • Redact — overwritten with [REDACTED].
  • Hash — converted to the first 8 characters of its SHA-256 digest (computed with the browser's Web Crypto API), giving a stable pseudonym you can still join on.
  • Keep as-is — left untouched for columns that carry no personal data.

Deterministic mode and referential consistency

By default each run produces fresh random values. Turn on deterministic mode and the same input value always maps to the same output, driven by a seeded pseudo-random generator with a seed you control (default 42). This matters when the same person appears across multiple files or rows: "John Smith" becomes the same fake name everywhere, and a hashed customer ID lines up across tables, so your foreign keys and joins still work after anonymization. Change the seed to produce a different but equally consistent mapping.

Reviewing and exporting results

After anonymizing, a before-and-after preview shows the first ten rows side by side, with changed cells highlighted so you can confirm the right columns were touched. A short summary reports rows processed, columns anonymized, and PII columns detected. When the output looks right, export it as CSV or JSON, or copy it to your clipboard as tab-separated values to paste straight into a sheet.

Why anonymizing data matters

Real customer data in a test environment, a screenshot, or a vendor handoff is a common cause of accidental data exposure, and regulations such as GDPR treat names, emails, and IDs as protected personal data. Properly anonymized data falls outside much of that scope because individuals can no longer be identified from it. Using the Data Anonymizer keeps realistic test data flowing — correct types, realistic distributions, intact relationships — without putting actual people at risk. Load the sample dataset to see how the whole flow works before running your own.