Hexspeak Converter
Spaces separate words. Unsupported characters are reported and are never silently removed.
Turn a non-negative decimal integer into a memorable hexadecimal word, or check whether a Latin phrase can be styled with hexadecimal characters. Decimal mode shows the raw base-16 value and applies the classic 0 → O and 1 → I reading only when every digit is compatible. Phrase mode offers exact and clearly disclosed conservative substitutions, reports unsupported characters instead of silently deleting them, and lets you format a valid result for code, documentation, test data or a memorable identifier.
How to use the Hexspeak Converter
-
1
Choose a conversion mode
Use Decimal Integer for a non-negative base-10 value, or Latin Phrase to test words and short phrases.
-
2
Set the phrase rules
In phrase mode, choose exact hexadecimal characters or conservative substitutions such as O → 0 and S → 5.
-
3
Review and format the result
Check the raw hexadecimal value, readable form and unsupported-character report, then choose case, prefix and spacing options for a fully valid result.
Two precise ways to make hexspeak
Hexadecimal is base 16, using 0–9 and A–F. For hexadecimal digits d₀ … dₙ, the represented integer is:
N = d₀ × 16ⁿ + d₁ × 16ⁿ⁻¹ + … + dₙ
In Decimal Integer mode, the converter accepts a non-negative decimal integer up to 256 digits and produces its raw uppercase hexadecimal value without relying on PHP’s fixed-width integer range. It then tests the classic readable convention used by this tool: 0 → O, 1 → I, while A–F remain letters. Any raw digit from 2 through 9 makes that classic reading invalid. For example, decimal 12648430 becomes raw C0FFEE, which reads as COFFEE; decimal 4919 becomes 1337, which cannot be rendered under these strict classic rules.
Latin Phrase mode asks a different question: can the supplied phrase be represented with hexadecimal glyphs? Exact mode accepts only A–F and literal digits. Conservative mode additionally maps O → 0, I or L → 1, S → 5, T → 7, and G → 6. These substitutions are deliberately narrow. Unsupported characters are listed, never discarded, and output formatting is available only when the whole phrase is valid.
| Input and mode | Process | Result |
|---|---|---|
3735928559 in decimal mode |
Convert base 10 to base 16 | DEADBEEF |
3405691582 in decimal mode |
Convert base 10 to base 16 | CAFEBABE |
COFFEE in conservative phrase mode |
O → 0 |
C0FFEE |
BAD FOOD in conservative phrase mode |
O → 0; choose continuous output |
BADF00D |
Tokens such as DEADBEEF, CAFEBABE, BADF00D and C0FFEE are memorable because they resemble words while remaining valid hexadecimal. One documented production example is 0xCAFEBABE: the Java Virtual Machine Specification defines it as the magic number at the start of a Java class file. That does not make every clever-looking value a standard or safe identifier; check the requirements and width of the system where you plan to use it.
Hexspeak is not text-to-HEX
A text-to-HEX encoder converts encoded bytes: UTF-8 Coffee, for example, becomes 43 6F 66 66 65 65. Given the character encoding, that byte representation can be decoded. Hexspeak instead creates a visual word from a restricted character set. Substitutions such as O → 0 and both I/L → 1 are ambiguous, so phrase stylization is not reversible. It is also narrower than leetspeak, which may use many characters that are not valid hexadecimal digits.
Input is limited to 256 characters, and a phrase may contain at most 32 words. Phrase mode supports unaccented ASCII Latin letters, digits and spaces only; transliterate other scripts and remove diacritics before testing them. Decimal and phrase values are processed by the server and may also appear in multi-step funnel URLs, so do not enter secrets, credentials or private identifiers.
Sources: NIST on hexadecimal notation and four-bit digits · Java Virtual Machine Specification, class-file magic
Frequently Asked Questions
Hexspeak is a way of choosing or reading hexadecimal values so their digits resemble Latin words. Strict examples use only A–F and digits. Some conventions also read selected digits as letters. There is no single universal substitution standard, so this converter states its exact rules instead of presenting a guess as canonical.
It first converts the full non-negative decimal integer to uppercase base 16 without a fixed machine-integer limit. It then keeps A–F, reads 0 as O and 1 as I. If the raw hexadecimal result contains any digit from 2 through 9, the strict classic reading is marked invalid.
Exact mode accepts A–F and literal digits only. Conservative mode also permits six disclosed visual substitutions: O → 0, I/L → 1, S → 5, T → 7 and G → 6. It does not invent broader leetspeak substitutions, and any unsupported character remains visible in the validation report.
In conservative mode, both O characters can become zero, while C, F and E are already hexadecimal letters. HELLO still contains H, which has no conservative hexadecimal substitute. The converter reports H as unsupported rather than dropping it and returning a misleading partial result.
Yes, once every token is valid. You can choose uppercase or lowercase, raw digits or a per-token 0x prefix, and spaced or continuous output. Continuous output removes word boundaries, so keep spaced tokens when readability matters. Invalid phrases are not formatted as if they were complete.
No. O and zero share a glyph, while I and L can both become one, so the original phrase cannot always be reconstructed. Use a text-to-HEX or byte encoder when you need reversible data representation. Use hexspeak for memorable, human-recognizable values where its restricted alphabet is appropriate.
Do not treat the input as browser-only. The tool is server-backed, so values are sent to the application server for processing, and the multi-step funnel may place them in page URLs. Avoid passwords, API keys, confidential identifiers and other sensitive material. Normal server and proxy logging policies may apply.
Related Tools
ASCII Table Reference
Full ASCII table from 0 to 127 with decimal, hex, octal, binary, standard names and HTML numeric-reference notation, including NUL, LF and DEL.
Color Palette Generator
Generate monochromatic, analogous, complementary, triadic or tetradic color palettes from a base HEX color and export copy-ready CSS variables.
HEX Color Picker
Pick or enter a HEX colour and get RGB, HSL, approximate CMYK, relative luminance and contrast ratios against white and black.
HTML Character Reference
Searchable list of HTML entities, their named and numeric codes, and a one-click copy for special characters and symbols.
FPS Counter
Measure browser FPS with requestAnimationFrame, smoothing, min/max frame rate, warnings and an optional graph. Runs locally with no upload or API.
JSON Formatter
Paste JSON to pretty-print with 2 or 4 spaces, minify it to compact output, or run a quick syntax check before copying the result.
Tool available in other languages
- ตัวแปลง Hexspeak [TH]
- Conversor de hexspeak [PT]
- Konwerter Hexspeak [PL]
- Conversor de hexspeak [ES]
- Konverter Hexspeak [ID]
- Hexspeak-converter [NL]
- Công cụ chuyển đổi Hexspeak [VI]
- محوّل Hexspeak [AR]
- Hexspeak-konverterare [SV]
- Hexspeak 변환기 [KO]
- Hexspeak変換ツール [JA]
- Convertisseur hexspeak [FR]
- Hexspeak-Konverter [DE]
- Convertitore hexspeak [IT]
- Конвертер Hexspeak [RU]
- Hexspeak Dönüştürücü [TR]
- Hexspeak 转换器 [ZH]