Vietnamese Profanity Checker

Detect and mask Vietnamese (and common English) profanity, insults and slurs, including unaccented spellings, teencode, l33t and separators like đ.ị.t.

Free tool: 20 requests per minute.

Result

Press “Run” to see the result.

The profanity filter finds offensive words in Vietnamese comments, chats and reviews and returns a masked version. Its lexicon covers sexual and vulgar words, insults and teencode abbreviations (đm, vcl, dmm, clgt…) plus common English swear words and slurs, each with a category (sexual, vulgar, insult, slur) and a severity (mild, moderate, severe).

It is built for the usual tricks: missing accents where the result is still unambiguous (dit me), repeated letters (đụuuu), l33t digits and symbols (sh1t, f@ck), and separators inside words (đ.ị.t, l-ồ-n). Words that are only offensive with their accents (lồn, cặc, buồi) are matched with accents only, so “lon bia”, “các bạn” and “buổi sáng” are never flagged; ambiguous words (cc, đù, cave) are only checked with strict=true.

The response gives the overall severity, a score, each match with its position and the censored text (mask character, keep_first=true to keep the first letter). Add your own words with extra_words and whitelist with allow.

Use this in your code

curl -X POST "https://apibox.io.vn/v1/profanity-vi" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Đm, cái này vcl thật","keep_first":true}'

API documentation → Get a free API key

FAQ

Will it flag normal words without accents?

No. Words like lồn / cặc / buồi only count with their accents, because lon, cac, buoi are ordinary words without them.

Can I tune the list?

Yes: extra_words adds comma-separated words or phrases, allow removes entries, strict=true enables ambiguous ones.

Is the text stored?

No, it is processed in memory only.