Number Base Converter

Convert numbers between binary, octal, decimal, hexadecimal or any base from 2 to 64 — even very large ones. Free, in your browser.

Separators are ignored — paste grouped literals like 0xDE_AD_BE_EF or 1010_1010.

Binary (2) 
Octal (8) 
Decimal (10) 
Hex (16) 
Base 64 (64) 
Custom base

Base 64 here is a positional numeral over 0-9 a-z A-Z + / — case matters and 42 is G, not the RFC 4648 Base64 NDI=.

🔒 Converted in your browser with arbitrary-precision math (bases 2–64) — nothing uploaded.

Convert between number bases

Type a number and its base and instantly see it in binary, octal, decimal and hexadecimal — plus any custom base from 2 to 64 — each with a copy button. It uses arbitrary-precision (BigInt) math, so it stays exact even for values far beyond what a normal calculator can handle. Everything runs locally in your browser.

Why hexadecimal is the language of bytes

A byte is eight bits and sixteen is two to the fourth, so exactly two hex digits cover exactly one byte with nothing left over — FF is 255, the largest a byte holds. Nothing else lines up so cleanly: decimal needs two or three digits per byte and the boundary moves, and binary needs eight, which is correct and unreadable. That single fact is why colours are #RRGGBB and why memory addresses and hashes are hex. Octal — three bits per digit, from an era of 12- and 36-bit machines — survives mainly in Unix file permissions, where three bits per digit is exactly what read, write and execute need.

Past base 36, case starts to matter

Digits run 0–9 and then a–z, which is why 36 is where a case-insensitive base runs out. This tool goes to 64 by continuing into A–Z, so above base 36 the case of a letter is part of its value: in base 64, g and G are different digits. That is a positional numeral system, and it is not the Base64 you see in data URIs and email attachments — that is a byte encoding with its own alphabet and padding, and it lives in the base64 encoder instead. Arithmetic here is arbitrary-precision, so a 200-digit number converts exactly rather than turning into a float and losing its tail.

Frequently asked questions

Can I convert to an unusual base like base 36?

Yes. Set the "from" base to anything from 2 to 64, and the custom-base row outputs any target base in the same range.

Does it handle very large numbers?

Yes. It uses BigInt arithmetic, so 64-bit and larger values convert exactly without rounding.

Can I use 0x or 0b prefixes?

Yes — a 0x prefix is accepted for hex and 0b for binary; you can also just type the raw digits.

Is base 64 here the same as Base64 encoding?

No, and it is a common mix-up. This is a positional numeral system over 0-9 a-z A-Z + / where digits carry place value. Base64 encoding packs three bytes into four characters with a different alphabet and = padding. For that, use the base64 encoder.

Why does 36 keep coming up as a limit?

Ten digits plus twenty-six letters is thirty-six. Any base up to that can be written case-insensitively, which is why so many systems stop there. Going higher means reusing the letters in upper case and giving up case-insensitivity.

Will very large numbers stay exact?

Yes. The conversion uses arbitrary-precision integers rather than floating point, so a number far beyond what a calculator can hold converts digit for digit with nothing rounded away.