Leet Speak Converter - Encode & Decode L33T Text Online
Convert text to leet speak (1337) and decode leet back to English. Multiple encoding levels from basic to ultra. Free, instant, client-side tool.
About
Leet speak (also written as 1337 or l33t) is a character substitution cipher originating from 1980s bulletin board systems. It replaces Latin characters with visually similar numerals, symbols, or Unicode glyphs. The substitution is non-standardized. A single character like A can map to 4, @, /\, or /-\ depending on the encoding depth. This ambiguity makes automated decoding nontrivial. Naive reverse lookups fail when multi-character sequences like |< (representing K) collide with individual pipe | (representing L or I). This tool resolves collisions by applying longest-match-first decoding.
The converter operates across 4 encoding tiers. Basic performs only unambiguous single-character swaps. Ultra applies multi-glyph digraphs and Unicode homoglyphs. Decoding accuracy degrades at higher tiers because the mapping becomes many-to-one. For instance, both O and D can produce () at the ultra level. The decoder uses tier-specific priority tables to minimize misreads. Limitation: the tool assumes English Latin input. Accented characters, Cyrillic, or CJK pass through unmodified.
Formulas
The encoding function E maps each character c in input string S through a tier-specific substitution table Tk, where k โ {1, 2, 3, 4} represents the leet level:
E(S, k) = nโi=1 Tk(ci)
where the product operator here denotes string concatenation, and n = |S| is the length of the input. If ci โ dom(Tk), the character passes through unchanged.
Decoding uses the inverse map Tkโ1 with a greedy longest-match algorithm. At each position i, the decoder tests substrings of decreasing length m from mmax down to 1:
Where mmax = 4 for the Ultra tier. This greedy approach has time complexity O(n โ mmax) which is effectively linear.
Reference Data
| Character | Basic | Intermediate | Advanced | Ultra |
|---|---|---|---|---|
| A | 4 | @ | /\ | /-\ |
| B | 8 | |3 | 13 | |> |
| C | ( | < | [ | { |
| D | |) | cl | [) | |> |
| E | 3 | & | [- | โฌ |
| F | |= | ph | /= | ฦ |
| G | 6 | 9 | & | (_+ |
| H | # | |-| | ]-[ | }{ |
| I | 1 | ! | | | ][ |
| J | _| | ; | _/ | _] |
| K | |< | |{ | ]{ | |X |
| L | 1 | |_ | ยฃ | |_ |
| M | /\/\ | |\/| | ^^ | (V) |
| N | |\| | /\/ | [\] | {\} |
| O | 0 | () | [] | ร |
| P | |* | |ยฐ | |> | |" |
| Q | 0_ | (_,) | <| | 9 |
| R | |2 | 12 | /2 | ยฎ |
| S | 5 | $ | ยง | ehs |
| T | 7 | + | "][" | โ |
| U | |_| | (_) | ยต | [_] |
| V | \/ | |/ | \| | \\// |
| W | \/\/ | VV | \^/ | (n) |
| X | >< | }{ | )( | >< |
| Y | `/ | ยฅ | -/ | j |
| Z | 2 | ~/_ | 7_ | % |