Data Masker

Hide the personal details in a block of text before you paste it into a ticket, a screenshot or a chat. Tick the kinds of data that matter, choose how heavily to obscure them, and read the cleaned version as you type.

Security Notice

This page runs entirely in your browser and every value it produces is generated locally — nothing is transmitted or stored on a server. That also means no one can recover a value for you: store generated secrets in a password manager, and treat masking as display-only rather than encryption. Review your own threat model before using any output in production.

Six Kinds of Detail, Four Degrees of Cover

The page scans text for six patterns and replaces what it finds. Which patterns are searched is decided by the checkboxes, and how the matches are rewritten is decided by the style selector. The scanning runs in a deliberate order, from the most specific pattern to the loosest, and that order is the reason a card number does not get half-eaten by the phone rule. Everything happens as you type, so the cleaned text and the original sit side by side in the same view.

Cleaning a Block of Text

  1. Paste the text you want to clean into the large box. The output updates as you paste, so there is no separate run button to press.
  2. Untick any category you want to keep as it is. ZIP codes are left visible by default; the other five are removed by default.
  3. Choose a style. Asterisks keep some recognisable shape, the full mask hides more, the type style replaces each match with a label naming its kind, and the hash style substitutes a short scrambled string.
  4. Check the result box, which sits directly under the controls and shows the rewritten text.
  5. If you have unticked everything, the page refuses to guess and prints a prompt to select at least one type.
  6. Adjust and re-read as needed. Every change redraws the output immediately, and there is nothing to save or confirm.

The Four Styles on the Same Input

These are the page's own outputs for a handful of sample lines. The examples use the literal strings below, which is why they can be quoted exactly.

Ways to Obscure a Detail

AlternativeNotes
Partial masking with asterisksKeeps the last few digits so a person can still confirm which card or account is meant, while hiding the bulk. It is the most readable choice when a human needs to recognise the value, and the least private, since the tail is real.
Full replacement with a type labelLeaves no digits at all, just a marker saying what was removed. Nothing about the original survives except its presence, which is what you want when the reader does not need to identify the value, only to know it was there.
Substitution with a short hashReplaces the value with a short, stable-looking token that differs for different inputs. Two identical card numbers will yield the same token, which makes the text easier to reason about, but the token is not a real cryptographic digest and should not be treated as reversible or as a secure pseudonym.
Editing by handDeleting or retyping the sensitive parts yourself is fully reliable because you decide exactly what goes. It is slow for more than a line or two, and easy to miss something in a long log, which is where a scanner like this earns its place.

A Pattern Matcher, Not a Compliance Tool

The page runs in your browser and uploads nothing, so text you paste here does not leave your machine. That convenience comes with limits, and it is worth being precise about them, because the tool is aimed at casual sharing rather than at a regulated workflow.

Masking Questions

Does unticking a box change what is masked?

Yes. Each box is wired to its own rule, so clearing one stops that category from being altered while the others carry on. If every box is cleared the page refuses to produce empty output and instead asks you to choose at least one type.

Why is my unspaced card number handled the same as a spaced one?

Because the card pattern treats spaces and hyphens as optional separators and allows the final group to be anything from one to four digits. A grouped number and a solid run of the same digits therefore match the same rule and are rewritten identically, both ending in the last four digits.

Is the masked text safe to share?

It is safer than the original, but it is not a guarantee. The masking is pattern based, carries no validation, and can leave a partially recognisable value when rules interact, so read the output before you send it. For anything governed by a policy or a regulation, use a dedicated tool rather than this page.

What does the full style do?

It replaces every match with a fixed shape made only of mask characters, keeping none of the original text. An email becomes *****@****.***, a card ****-****-****-****, a phone ***-***-****, a social security number ***-**-****, an IP address ***.***.***.*** and a ZIP code *****. It is the heaviest of the four styles, and it is the right choice when the reader needs to know that a value was there but must not be able to read any part of it.

Last verified: October 7, 2026

Launch Text Data Masker

All Tools · All Tools · About · How We Test · Contact · Privacy

Maintained by Huang Bin · Last updated October 3, 2026

Loading Vue Application