Unprofane

Leetspeak translator

Write any text in leetspeak, or read leetspeak back as plain English, as you type.

48 / 2,000
Leetspeak, basic
13375p34k 7urn5 13773r5 1n70 num83r5 4nd 5ym80l5

Digits only, the classic 1337 spelling: 4, 8, 3, 9, 1, 0, 5 and 7.

Read leetspeak in your app, with one call

The leetspeak alphabet

Every letter with the stand-ins the translator writes for it, each level adding to the ones before.

LetterBasicAdvancedExtreme
A4@/\
B8·|3
C·(<¢·
D··|)
E3€·
F··|=
G96·
H·#|-|
I1!·
J·]_|
K··|<
L1|£|_
M··|\/|/\/\
LetterBasicAdvancedExtreme
N·~|\|
O0·()
P··|*|>
Q··(,)
R··|2
S5$·
T7+·
U··|_|(_)
V··\/
W··\/\/
X·%><
Y··`/
Z···

Leetspeak words to know

A few words outlived the bulletin boards and games where leetspeak began.

1337leet
Short for elite: skilled, in the know. Also the name of the whole way of writing.
n00bnoob
A newcomer, often one who has not learned the basics yet.
pwn3dpwned
Beaten badly, or broken into. From "owned", with the p beside the o on a keyboard.
h4x0rhaxor
A hacker, written the way one was supposed to write.
w00twoot
A cheer, for a win.
ph34rphear
Fear, spelled phear, as in "ph34r my sk1llz".
sk1llzskillz
Skills, with a z for swagger.
l4m3rlamer
Someone who claims skills they do not have.

Leetspeak and a profanity filter

A word list needs an entry for every spelling; Unprofane reads them all and names the trick.

Disguised with leetspeak

  • sh1t shitreview
  • b!tch bitchblock
  • a$$hole assholeblock
  • c0ck cockreview
  • sh1th34d shitheadblock
  • d1ckh34d dickheadblock

Digits, and no leetspeak

  • R2-D2left as typedallow
  • Windows 10left as typedallow
  • mp3 playerleft as typedallow
  • 4 x 4 = 16left as typedallow
  • C3POleft as typedallow

Read leetspeak in your app

One request checks a chat line, a username or a comment, and names the trick it found.

Get your API key

100 checks a day, no card

curl -X POST https://api.unprofane.com/v1/check \
  -H "Authorization: Bearer up_test_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"n1ce try, sh1th34d","context":"chat"}'
Response200
{
  "allowed": false,
  "action": "block",
  "evasion": [
    "leetspeak"
  ],
  "matches": [
    {
      "text": "sh1th34d",
      "normalized": "shithead"
    }
  ],
  "censored": "n1ce try, ********"
}

Leetspeak, answered

What is leetspeak?
Leetspeak writes letters as digits and symbols that look like them, so leet becomes 1337. It began on bulletin boards and in games, where writing it marked you as one of the elite, and it lives on in gamer tags, in hacker culture and in words typed to get past a filter.
How do you read leetspeak?
Read each digit or symbol as the letter it looks like: 4 or @ is a, 3 or € is e, 1 or ! is i, 0 is o, 5 or $ is s and 7 or + is t. The alphabet has every stand-in, and the translator reads a whole line back as you paste it.
Why is leetspeak called 1337?
Because 1337 is leet written in leetspeak: 1 for l, 3 for each e, 7 for t. Leet is short for elite.
Can a profanity filter read leetspeak?
A word list cannot: it matches letters as typed, so every spelling needs an entry of its own. Unprofane reads each digit as every letter it could be, and on the Scunthorpe Test's public split the rules alone caught 98.1% of words disguised with leetspeak (run of 2026-10-20).
How does the translator read a 1?
As l in a run (he11o) or before a vowel (1ame), and as i otherwise (sh1t). A 1 is the one stand-in for two letters, so the translator also checks each reading against common English words: w0r1d reads as world.

More free tools