Leet speak (from “elite”, written 1337) is an internet writing style that swaps letters for look-alike numbers and symbols. It grew out of 1980s bulletin-board and gaming culture, where bypassing censorship filters was a practical motivation for the substitutions. Level 1 is the gentlest variant: it uses only the handful of substitutions that stay easy to read, which makes it popular for usernames, gamer tags and casual chat.
Substitution table
The Level 1 mapping replaces six letters with the digits they resemble:
| Letter | Leet digit | Visual resemblance |
|---|---|---|
| A | 4 | Angled strokes |
| E | 3 | Mirror of E |
| I | 1 | Vertical stroke |
| O | 0 | Round shape |
| S | 5 | Curved similar shape |
| T | 7 | Crossbar and vertical |
Encoding scans the text and substitutes each of these letters (in either case) with its digit, leaving every other character — other letters, spaces, punctuation — untouched. Because the swapped digits have no case, capitalisation is only preserved on the letters that are not substituted.
Decoding reverses the table: each 4 3 1 0 5 7 becomes a e i o s t. Since decoding cannot tell a deliberate number from a substituted letter, run it only on text you know is leet.
Examples
| Original | Level 1 leet | Notes |
|---|---|---|
| ELITE | 3L173 | E→3, L untouched, I→1, T→7, E→3 |
| leetspeak | l337sp34k | All six substitutions visible |
| GAMER | G4M3R | A→4, E→3 |
| ASSIST | 4551575 | A→4, S→5, I→1, S→5, T→7 |
When to use Level 1 vs other levels
Level 1 is the right choice when readability matters. Because only six letters change and each maps to a single digit, the output is still easily parsed by anyone familiar with leet. It is appropriate for usernames, social handles and light-hearted chat.
Level 2 extends the substitution set to more letters and adds symbol alternatives, making the result denser. Level 3 (extreme) uses multi-character ASCII combinations like /-\ for A and \/\/ for W — readable only to someone who already knows the code, and unsuitable for any context where the message needs to be understood quickly.
For most everyday purposes — a username, a game bio, a meme — Level 1 gives the leet aesthetic without sacrificing readability.
History and context
Leet speak originated on bulletin board systems (BBS) in the 1980s, where users would substitute characters to bypass text filters or signal membership of an in-group. The term “1337” is itself a leet rendering of “leet,” derived from “elite.” By the 1990s and early 2000s, leet had become embedded in gaming culture — particularly in games where usernames were short and players wanted to express identity through stylised text within character limits. Today Level 1 leet is mostly used for nostalgia, humour, and aesthetic usernames rather than any practical bypass purpose.
Encoding and decoding symmetry
Level 1 is the only leet level where decoding is reasonably clean. Because the substitutions are one-to-one (each digit maps back to exactly one letter), running decode on Level 1 output reliably returns the original text. The ambiguity problem — where a 3 could be an E or a literal number — is the main limitation, which is why the decode function should only be run on text you know is leet-encoded.
Everything runs locally in your browser; nothing is uploaded or stored.