Leet Speak Generator — Convert Text to 1337
Leet speak is a 40-year-old substitution cipher that started in hacker culture, peaked in 1990s online gaming, became a self-aware internet joke, and is now an established aesthetic with genuine nostalgia value. If you want to generate 1337 text to copy and paste, this guide covers the full substitution alphabet, the different levels of leet speak intensity, and how to implement the conversion in code.
How to Generate Leet Speak with FlipMyCase
- Open the FlipMyCase Fancy Text Generator.
- Type your text in the input box.
- Look for the Leet Speak or 1337 style in the generated output.
- Click the style to copy it.
- Paste anywhere — Discord usernames, gaming profiles, social media posts, memes.
For other retro or coded text styles, see ROT13 encoding (a simple letter rotation cipher) or the Unicode Text Styles tool for script and mathematical character variants.
The Complete Leet Speak Alphabet
Leet speak substitutions range from simple (replace a few letters with numbers) to extreme (replace almost every letter with multi-character symbol sequences). The table below covers the standard substitutions used across different leet speak levels.
| Letter | Basic | Extended | Extreme |
|--------|-------|----------|---------|
| A | 4 | @ | /\ |
| B | 8 | |3 | |3 |
| C | ( | [ | < |
| D | D | |) | |} |
| E | 3 | 3 | 3 |
| F | F | ph | |= |
| G | 9 | 6 | (-, |
| H | H | |-| | # |
| I | 1 | ! | | |
| J | J | | | | |
| K | K | |< | |< |
| L | 1 | | | | |
| M | M | |\/| | /\/\ |
| N | N | |\| | /\/ |
| O | 0 | () | [] |
| P | P | |* | |* |
| Q | Q | (,) | 0 |
| R | R | |2 | |2 |
| S | 5 | $ | $ |
| T | 7 | + | + |
| U | U | || | \/ |
| V | V | \/ | \/ |
| W | W | \/\/ | \/\/ |
| X | X | >< | >< |
| Y | Y | / | / |
| Z | 2 | 2 | >_ |
The Three Levels of Leet Speak
Level 1 — Basic (Readable)
Only the most common substitutions: A→4, E→3, I→1, O→0, S→5, T→7. Text remains readable to anyone without context. "HELLO WORLD" becomes "H3LL0 W0RLD". Used for gaming names, mild internet humor, and nostalgic references.
Level 2 — Standard 1337
Expands to include B→8, G→9, and some multi-character substitutions. "HACKER" becomes "|-|4CK3R". This is the version most associated with 1990s internet culture and the "l33t hax0r" archetype. Still mostly readable with minimal effort.
Level 3 — Extreme
Replaces nearly every letter with multi-character sequences. "HELLO" might become "|-|3||()". Barely readable as English. Used in extreme internet humor contexts and CTF (Capture the Flag) puzzles. Generates the most impressive-looking output but requires the most effort to decode.
Code Examples: Implementing Leet Speak Conversion
JavaScript — Basic Leet Speak
function toLeetSpeak(text, level = 'basic') {
const substitutions = {
basic: {
'a': '4', 'A': '4',
'e': '3', 'E': '3',
'i': '1', 'I': '1',
'o': '0', 'O': '0',
's': '5', 'S': '5',
't': '7', 'T': '7',
},
standard: {
'a': '4', 'A': '4',
'b': '8', 'B': '8',
'e': '3', 'E': '3',
'g': '9', 'G': '9',
'i': '1', 'I': '1',
'l': '1', 'L': '1',
'o': '0', 'O': '0',
's': '5', 'S': '5',
't': '7', 'T': '7',
'z': '2', 'Z': '2',
}
};
const map = substitutions[level] || substitutions.basic;
return text.split('').map(char => map[char] || char).join('');
}
console.log(toLeetSpeak('Hello World')); // H3ll0 W0rld
console.log(toLeetSpeak('Hello World', 'standard')); // H3110 W0r1d
JavaScript — Multi-Character Substitutions
// For extreme leet speak with multi-character substitutions,
// process longer patterns first to avoid partial matches
function toExtremeLeet(text) {
// Order matters — replace multi-char patterns before single chars
const replacements = [
['ck', 'XX'], ['ph', 'f'],
['A', '/\\\\'], ['M', '|\\\\/|'], ['W', '\\\\/\\\\/'],
['N', '|\\\\|'], ['V', '\\\\/'], ['H', '|-|'],
['K', '|<'], ['R', '|2'], ['U', '|_|'],
['B', '|3'], ['E', '3'], ['G', '9'],
['I', '1'], ['L', '|_'], ['O', '0'],
['S', '$'], ['T', '7'], ['X', '><'],
['Z', '2'], ['a', '4'], ['e', '3'],
['i', '!'], ['o', '0'], ['s', '$'],
['t', '+'],
];
let result = text.toUpperCase();
for (const [from, to] of replacements) {
result = result.split(from).join(to);
}
return result;
}
console.log(toExtremeLeet('Hello'));
// |-|3|_|_0
Python — Leet Speak Translator
def to_leet(text: str, extreme: bool = False) -> str:
basic = {
'a': '4', 'e': '3', 'i': '1',
'o': '0', 's': '5', 't': '7',
'b': '8', 'g': '9', 'l': '1', 'z': '2'
}
extended = {
**basic,
'h': '|-|', 'k': '|<', 'n': '|\\|',
'r': '|2', 'u': '|_|', 'v': '\\/',
'w': '\\/', 'x': '><'
}
mapping = extended if extreme else basic
return ''.join(mapping.get(c.lower(), c) for c in text)
print(to_leet("Hello World")) # H3ll0 W0rld
print(to_leet("Hello World", True)) # |-|3ll0 W0rl|)|
Leet Speak in Context: Its History
Leet speak emerged on bulletin board systems (BBS) in the early 1980s. The initial purpose was practical: filtering software blocked certain words, and leet speak substitutions like "h4cker" evaded keyword filters. As online communities grew, leet speak became a cultural marker — using it signaled membership in technical underground communities.
By the mid-1990s, leet speak had spread from hacker BBSs to gaming chat, IRC, and early web forums. The stereotypical "1337 h4x0r" character emerged — a self-important teenager claiming elite computer skills while typing in incomprehensible substitution cipher. This archetype was widely mocked even within the communities that used leet speak.
By the early 2000s, leet speak had become primarily ironic. Movies, TV shows, and mainstream news coverage turned "leet" into a joke about hackers. The actual hacker community had largely moved past it. What remained was affectionate parody: leet speak used deliberately as nostalgia, humor, or aesthetic.
In 2026, leet speak appears in retro gaming aesthetics, CTF (Capture the Flag) security competitions, memes referencing early internet culture, and deliberately cringeworthy username choices that signal self-awareness rather than actual 1337 pretension.
Frequently Asked Questions
Why is it called leet speak?
"Leet" is derived from "elite" — as in "elite hacker" status. The word "elite" was abbreviated to "leet" in BBS culture, and the substitution cipher used to write it became known as leet speak or leetspeak. The numeral version "1337" comes from substituting L→1, E→3, T→7 in the word "leet" itself.
What does 1337 mean?
1337 is the number-substitution spelling of "leet" (L→1, E→3, E→3, T→7). In internet culture, calling someone or something "1337" or "leet" means elite or highly skilled, usually used ironically in 2026. "That was 1337 moves" is generally either a compliment framed as a joke or straightforward nostalgic internet humor.
Is leet speak a cipher or a code?
It is a substitution cipher — a type of encoding where symbols replace letters according to a fixed mapping. Unlike encryption, leet speak has no key and anyone who knows the substitution table can decode it immediately. It never provided meaningful security, even in its early days; it was primarily used for community identity and filter evasion rather than data protection.
Can search engines read leet speak?
Modern search engines handle common leet speak substitutions. Google recognizes that "h4cker" likely refers to "hacker" and may return results for the normal spelling. However, extreme leet speak with multi-character substitutions may not be recognized. If you are publishing content that uses leet speak for SEO purposes, include the normal-spelling version of keywords — leet substitutions are not a reliable SEO technique in 2026.