The Leet Hex Encoder combines two classic transformations in one step. First it rewrites your text in Level 1 leetspeak — the readable digit-for-letter style used in gaming handles and forum culture — and then it shows the byte values of that leet text as hexadecimal. It is handy for crafting stylised strings, generating puzzle text, or eyeballing how a leet username looks at the byte level.
How it works
The leet step uses the common Level 1 substitution table: a→4, e→3, i→1, o→0, s→5, t→7, b→8, g→9, l→1, z→2. The match is case-insensitive, and any character with no mapping (spaces, punctuation, uppercase letters that already have a digit form) passes through unchanged.
The hex step encodes the leet result as UTF-8 bytes, then prints each byte as two uppercase hex digits separated by spaces. ASCII letters and digits are one byte each, while Unicode characters expand to two to four bytes.
Step-by-step example
Take the word Elite:
- Leet substitution:
E→3,l→1,i→1,t→7,e→3— producing31173 - UTF-8 encoding: each character here is ASCII, so each becomes one byte
- Hex output:
33 31 31 37 33
| Character | Leet | UTF-8 byte | Hex |
|---|---|---|---|
| E | 3 | 51 | 33 |
| l | 1 | 49 | 31 |
| i | 1 | 49 | 31 |
| t | 7 | 55 | 37 |
| e | 3 | 51 | 33 |
Notice that l and i both become 1 (byte 31), which shows why the leet step is lossy — you cannot reverse it unambiguously.
What the hex output is useful for
The hex view tells you the actual byte representation of your leet string. Common uses include:
- Username auditing. Check whether a stylised gamertag contains only printable ASCII bytes or includes non-standard characters.
- Puzzle and CTF design. Embed a leet-encoded message whose hex happens to spell something meaningful in another context.
- Learning UTF-8. Seeing familiar characters as hex bytes is a quick way to internalise the encoding: ASCII digits 0–9 occupy bytes 0x30–0x39, letters A–Z are 0x41–0x5A, and so on.
Notes
The leet substitution is intentionally lossy — l and i both become 1, so this tool is a one-way stylistic encoder rather than a cipher. Do not use it to hide sensitive information. Everything runs locally in your browser; your text is never sent to a server.