Remove names from text

Names are the hardest thing on this site to detect, and the most requested. There is no regular expression for “is a person”, so the detector combines four signals: honorifics (Dr Whitfield), introductions (my name is …), sign-offs after “Regards,” and a gazetteer of common given names followed by capitalised words.

That catches most names in ordinary correspondence and misses unusual ones. The custom-terms box is the fix, and this page says so plainly rather than pretending otherwise.

Replace with
network while you type: 0 requests

Your text

0 characters

Safe to paste

waiting for text
The cleaned version appears here as you type — highlighted so you can see exactly what changed.
CtrlEnter
no personal data yet Everything below happens in this browser tab. Nothing is uploaded, and nothing you type is saved.

    Preset: personal names only — everything else stays as you pasted it.

    What to look for — 30 detectors, custom terms, exceptions

    People & organisations

    Government & health IDs

    Financial

    Technical & secrets

    Location

    For the things no word list can know: internal codenames, unusual surnames, a product that isn’t public yet. Custom terms are never saved.
    Values on this list stay in the text and out of the mapping — useful when the model needs your own company name to answer usefully.
    Step 3 — paste the AI’s answer here to put the real values back

    The model replies using the placeholders. Paste its answer below and every [NAME_1] becomes the real name again — using the mapping held in this tab, which is the only copy that exists.

    How it works

    1. Open this page — the detectors are already set for “Remove names”.
    2. Paste your text, or drop a .txt, .md, .csv, .json or .log file onto the panel.
    3. Check the highlights: every match is coloured by type, and one click keeps a type as-is.
    4. Copy the safe version and paste it into the AI tool of your choice.
    5. Paste the model’s reply back into step 3 to restore the real values.

    How the four signals work together

    Honorifics are the strongest signal: anything capitalised after Dr, Ms, Prof, Judge, Officer or Rabbi is a name, whatever the word list says. Introductions and sign-offs are nearly as reliable, and they are how surnames with no common given name in front of them get caught.

    The gazetteer covers several hundred common given names from a range of naming traditions, and extends forward across up to two more capitalised words so “Sarah Chen” and “Aoife Ní Bhriain” come through whole. A stopword list stops it swallowing the next sentence: days, months, product names, “Regards”, “Thanks”, country and language names and the big tech brands all terminate a candidate.

    Being honest about the misses

    A name that is not in the list, appears with no title and starts a sentence is indistinguishable from an ordinary capitalised word. Names that are also words (a person called Grace, April or Baker) can go either way. Lowercase names in chat logs are usually missed. Non-Latin scripts are not covered at all.

    Every serious de-identification standard says the same thing in different words: a machine pass is a first pass. HIPAA pairs its identifier list with an “actual knowledge” condition, FERPA asks whether a reasonable person could still identify the student. Read the highlighted text — the two seconds you spend on it are the difference between a tool and a guarantee.

    Tips

    Detectors are pattern-based and imperfect: read the highlighted output before you paste it anywhere, and confirm your own confidentiality obligations against the current rules for your profession, employer or jurisdiction. Compiled 2026-07-29.

    Frequently asked questions

    Does it use an AI model to find names?

    No. It is deterministic pattern matching plus a word list, which is why it runs instantly, works offline and never sends anything anywhere. A small on-device NER model would catch more names and would also mean a multi-megabyte download and a slower first load; the honest trade was made in favour of speed and the custom-terms box.

    Why did it redact a word that is not a name?

    Because the word is also a given name — Grace, April, Mark and Baker all appear in real name lists. Add it to the “never redact” list and it stays put everywhere in the text.

    Are names in other alphabets supported?

    Not currently. The detector expects Latin-script capitalisation patterns. For other scripts, use custom terms, which match any characters you type.