Leet Speak Converter
Convert text to leet speak (1337) and decode leet back to plain text. Choose basic (numbers only), medium or extreme substitution levels, with optional randomized character variants and mixed casing. Runs entirely in your browser.
Input
Higher levels use more symbol substitutions.
Pick a random substitution per letter for varied output (medium and extreme have several).
Randomly upper/lower-case the remaining letters.
Output
Guides
Turn ordinary text into leet speak (also written 1337 or l33t) and
translate leet back into readable text. Leet is an internet-culture alphabet
that swaps letters for numbers and symbols that resemble them — a becomes 4,
e becomes 3, o becomes 0, and so on. It started in early bulletin-board
and hacker communities and still shows up in gamertags, usernames, passwords and
memes.
How to use it
- Paste or type your text into the Input Text box.
- Choose a Mode: Text to Leet to encode, or Leet to Text to decode.
- When encoding, pick a Leet Level and, optionally, turn on the randomize toggles.
- Press Convert. Copy the result or download it as a text file — with a randomize toggle on, press Convert again anytime for a different variant of the same text.
Leet levels
- Basic (numbers only) — substitutes just the ten most recognizable letters
(
a e g i l o s t z b) with digits.Hello World→H3110 W0r1d. This is the most readable style and the easiest to decode. - Medium (numbers + symbols) — maps all 26 letters using numbers plus common
symbols.
Elite Hacker→31173 #4(|<312. - Extreme (full symbol set) — the same base substitutions as medium but with a much larger pool of alternate glyphs per letter. The extra glyphs only appear when Randomize character variants is enabled.
Randomize options
- Randomize character variants picks a random glyph from each letter's set instead of the default one, so two runs of the same text look different. This is where the extreme level shows its full range.
- Random uppercase randomly upper- and lower-cases the remaining letters for that classic mixed-case look.
With both toggles off, the conversion is completely deterministic — the same input always produces the same output.
Why doesn't decoding always give my original text back?
Leet is lossy. Different letters often share the same substitution — for
example 1 is used for both i and l — so the decoder can't always tell
which one you meant and picks a single canonical letter per glyph. Decoding is
best-effort and works most cleanly on text encoded at the basic level.
Privacy
Everything runs locally in your browser. Your text is never uploaded to a server.