Profanity Redactor

Mask a custom list of words in arbitrary text.

Open tool

Overview

Replace a custom list of words with a mask character — typically asterisks (****), bullets (••••), or a fixed [REDACTED] placeholder — anywhere they appear in your text. Bring your own list of words to censor; the tool doesn't ship with a built-in vocabulary, which keeps it flexible for any sensitivity policy.

Forum moderators preparing public versions of private threads, journalists redacting names from source documents, content publishers sanitizing user-submitted text, and parents reviewing kid-friendly versions of stories all use a profanity / word redactor. It pairs well with Saved Word Lists so you can manage one shared censor list across projects.

How it works

You provide two inputs: the text to scan and the list of words (or phrases) to redact. The tool walks the text and replaces every match with the mask. Common options include case-insensitive matching, whole-word matching (so "ass" doesn't censor "class"), Unicode-aware matching, and preserving the original word length in the mask so spacing looks natural.

Examples

List:    badword, secret
Input:   This contains a badword and a secret.
Output:  This contains a ******* and a ******.
List:        John Smith, Jane Doe
Mask:        [REDACTED]
Input:       John Smith spoke with Jane Doe.
Output:      [REDACTED] spoke with [REDACTED].

FAQ

Why bring my own list?

Different audiences have different standards. A list that's perfect for a children's forum is too restrictive for an adult one. Custom lists also let you redact names, internal product codes, or anything else context-specific.

Does it handle character substitutions like "ass" written "@ss"?

The basic mode does literal matching. For substitution-aware matching, use the regex mode and write patterns covering the variants you care about.

Is the redacted text recoverable?

No. The output replaces the original characters with the mask, so the redacted words can't be reconstructed from the output alone. Keep the source if you need it.

Try Profanity Redactor

An unhandled error has occurred. Reload ×