Hex to Base36 Converter
The Hex to Base36 Converter converts the value in your Hex Input field into Base36 — a true positional numeral system that packs large numbers into short alphanumeric strings using 0-9 and A-Z. Click Convert and the compact result appears in Base36 Output. Type a RAL color name into the ral to hex converter to see its nearest hex equivalent, drawn from a curated, not official, reference list.
What Is Hex to Base36 Conversion?
Hex to Base36 conversion takes a number written in hexadecimal (base-16) — using the 16 symbols 0-9 and A-F — and rewrites that same value using Base36's 36 symbols (0-9 and A-Z). Because Base36 has more than twice as many symbols to work with per position, the same underlying number typically comes out shorter once converted — which is the whole reason Base36 is popular for URL shorteners, session identifiers, and compact database keys in the first place. Use the base32 to hex converter to reverse a Base32-encoded value and recover the raw hex bytes it represents.
- Hexadecimal: 16 symbols — 0-9 and A-F
- Base36: 36 symbols — 0-9 and A-Z, case-insensitive
- Example: the six-character hex value
FF5733compresses to the five-character Base36 value9YO1F

How the Hex to Base36 Converter Works
Because 36 is not a power of 16, there's no direct digit-for-digit substitution between hex and Base36 the way there is between hex and binary. The converter bridges the two through a decimal integer intermediate step, exactly as a manual conversion would:
- Step 1 — Hex to decimal. Each hex digit is read as its value (0-9, A=10 through F=15) and multiplied by 16 raised to its position, counting from the rightmost digit as position 0. Summing every term gives the decimal value.
- Step 2 — Decimal to Base36. That decimal integer is divided by 36 repeatedly, recording the remainder each time (0-9 stays a digit, 10-35 becomes a letter A-Z). Reading the remainders in reverse order produces the Base36 Output shown as you type.
In formula form, for a hex string with digits d (read right to left) and k total digits:
$$ N_{10} = \sum_{i=0}^{k-1} d_i \times 16^{i} $$
The decimal result is then divided by 36 repeatedly, with each remainder mapped through the digits 0-9, A-Z, to build the Base36 string one character at a time.
Worked Example: Converting Hex FF5733 to Base36
Here's the full breakdown for FF5733 — a value you'll recognize as a common web color code — converted to Base36:
- Convert hex to decimal:
$$F\times16^{5} + F\times16^{4} + 5\times16^{3} + 7\times16^{2} + 3\times16^{1} + 3\times16^{0}$$
$$= 15{,}728{,}640 + 983{,}040 + 20{,}480 + 1{,}792 + 48 + 3 = 16{,}734{,}003$$ - Divide the decimal result by 36 repeatedly, collecting remainders: 16734003 → 464833 R F, → 12912 R 1, → 358 R O, → 9 R Y, → 0 R 9.
- Read the remainders in reverse:
9YO1F
So hex FF5733 equals decimal 16,734,003, which equals Base36 9YO1F — five characters instead of six, and this is exactly what the converter returns when you type FF5733 into Hex Input.
| Hex Input | Decimal (intermediate) | Base36 Output |
|---|---|---|
1A3F | 6719 | 56N |
FF5733 | 16734003 | 9YO1F |
FFFFFFFFFF | 1099511627775 | E13WU1OF |
Using the Hex to Base36 Converter
Type or paste a hexadecimal value into Hex Input — with or without a leading 0x prefix, and in either upper- or lowercase — and the Base36 Output field updates as you type, or click Convert if you prefer to trigger it manually. There's a Copy button beside the output for grabbing the Base36 string in one click. The converter runs on arbitrary-precision integer arithmetic, so it handles long hex strings — hashes, UUIDs fragments, large identifiers — just as accurately as short ones.
Where Hex to Base36 Conversion Is Used
Shortening Hex-Based Identifiers for URLs
Systems that generate hex-formatted IDs — a hash fragment, a hex-encoded primary key, a device serial number — can shrink those identifiers noticeably by re-encoding them as Base36 before putting them in a URL slug or a user-facing reference number. The compact base36 result is easier to read aloud, type, or fit into a short link.
Compact Storage for Hashes and Timestamps
Version-control systems, hashing algorithms, and logging pipelines frequently produce hex output. Converting that hex to Base36 before storing it as a display string or a filename trims the character count without losing any of the underlying value — useful when a hex hash is longer than you'd like it to be in a log line or filename.
Learning Positional Numeral Systems
Because the hex-to-base36 conversion requires an explicit decimal intermediate (there's no direct digit-group shortcut, unlike hex-to-binary), it's a useful exercise for anyone studying how positional numeral systems relate to each other. Check your own manual division-by-36 arithmetic against this tool's live output.
Frequently Asked Questions
Why isn't there a direct digit-for-digit shortcut like hex-to-binary has?
Digit-group shortcuts only work when one base is an exact power of the other — binary (2), octal (8), and hex (16) are all powers of 2, so they map cleanly onto each other in fixed-size groups. Since 36 is not a power of 16, hex and Base36 have to be bridged through an ordinary decimal integer instead.
What's the largest hex value this converter can handle?
There's no fixed limit tied to 32-bit or 64-bit integer ranges — the converter uses JavaScript's arbitrary-precision BigInt arithmetic, so extremely long hex strings convert just as accurately as short ones.
Can I convert the Base36 result back to hex?
Yes — use the Base36 to Hex Converter to reverse the process and confirm you get your original hex value back.
Does this tool send my data anywhere?
No. The conversion runs entirely in your browser using client-side JavaScript. Nothing you type is uploaded or stored.