Skip to content
100% local

Profanity filter

Censor swear words and vulgar language in pasted text.

Input
Output

Profanity filter

Paste any text and this tool masks the profanity in it against a compact, built-in word list covering common English swear words alongside Slovak and Czech vulgarisms — two languages that share most of their vulgar vocabulary. Use it to clean up chat logs, forum exports, customer feedback or transcripts before sharing them somewhere the raw language would not fly.

Matching is case- and diacritics-insensitive, so "KOKOT", "Kokot" and the accented "kokot" all count as the same word, and it works on whole words plus their common suffixes — one list entry catches "kokot," on its own and "kokoti" with a suffix attached. "Whole words only" is on by default so a banned term hiding inside an innocent longer word, like a town name that happens to contain one mid-spelling, is not censored by mistake; turn it off to also catch substrings anywhere. Add your own terms — brand names, community-specific slurs, inside jokes gone wrong — as a comma-separated list, censored right alongside the built-in ones.

Three mask styles cover different needs. "Keep first and last letter" turns a hit into something like h****a, recognisable as censored without spelling it out. "Full stars" blanks the whole match. "Replace with [censored]" swaps it for a fixed placeholder instead, which reads more cleanly in long-form text. Whichever you pick, the tally under the output reports exactly how many matches were censored, so you can see at a glance whether the pass caught what you expected.

Everything runs locally in your browser. The word list is compiled into the page itself — your text and any custom terms you add are never uploaded, so it is safe to run over private conversations or support tickets.

FAQ

Which languages does the built-in list cover?
English swear words plus Slovak and Czech vulgarisms, which share most of the same root words. It is a compact starting list — add your own terms with the extra words option to extend it for other languages or specific slang.
How does it catch different word endings from one list entry?
With "Whole words only" on, a match consumes any letters that follow the root, so a single entry like "kokot" also catches "kokoti" or "kokotovi" without needing every inflected form listed separately.
Can I add my own words to censor?
Yes. Type a comma-separated list into the extra words option and each entry is censored the same way as the built-in list, using the same mask style and whole-word setting.
Why is "Whole words only" on by default?
Some banned terms are short substrings of completely innocent words — a well-known example is a UK town name that contains a vulgar word mid-spelling. Whole-word matching avoids censoring those false positives; turn the option off only if you specifically want substring matches too.
Is my text uploaded anywhere?
No. The word list is bundled into the page and matching runs entirely in your browser — nothing you paste, including any extra words you add, is ever sent to a server.