Binary, octal, decimal, and hex, converted instantly
Positive whole numbers only — type in any field and the others update instantly. The custom field accepts any base from 2 to 36 (digits 0-9 then a-z). Uses arbitrary-precision math, so very large numbers stay accurate.
Pick any field
Binary, octal, decimal, or hex — start typing in whichever base you have.
See every base at once
The other three fields update live as you type.
Copy what you need
One click copies any field's value.
Type a number into any field — binary, octal, decimal, hexadecimal, or a custom base of your own choosing from 2 to 36 — and see it converted to the rest instantly. Uses arbitrary-precision (BigInt) math, so it stays accurate even for very large numbers that would lose precision in ordinary floating-point arithmetic — verified to correctly round-trip numbers far beyond JavaScript's normal 53-bit safe-integer limit.
Need to convert between two arbitrary bases, like base 3 to base 5? Set the custom field's radix to either one — every field always stays in sync with the same underlying value, so you can read it in any base you need, not just the four common ones.
Positive whole numbers only — no negative numbers or decimal points. This isn't the same as a Base64 converter (a text-encoding scheme for files and binary data — see our Image to Base64 and PDF to Base64 tools for that) or a text-to-binary/ASCII converter (which encodes letters and words, not a single number).
Binary (base 2), Octal (base 8), Decimal (base 10), and Hexadecimal (base 16) are always shown, plus a Custom base field that accepts any radix from 2 to 36 (using digits 0-9 then letters a-z once you're past base 10). Type into any field and every other field — including the custom one — updates instantly.
Yes — set the custom field's radix to 3 and type your value there, then change the radix to 5 and the field instantly shows the same value re-rendered in base 5. Every field (including the four fixed ones) always represents the same underlying number, so you're never limited to only converting through decimal by hand.
No — this tool works with positive whole numbers only. Representing a negative number in binary (typically via two's complement) requires first choosing a fixed bit width (8-bit, 16-bit, 32-bit, etc.), since the same negative value looks different at each width — this tool doesn't ask for that, so it's scoped to positive numbers only rather than guessing a width for you.
No — whole numbers only. A decimal point isn't accepted in any of the four fields.
Very large — this tool uses BigInt arbitrary-precision math rather than ordinary JavaScript numbers, which lose precision past 2^53 (about 9 quadrillion). A 30-digit decimal number converts to hexadecimal and back to the exact original value with zero precision loss, verified directly.
No — genuinely different tools, despite the similar name. This one does pure mathematical conversion of a number between numeral systems (e.g. 255 decimal is ff in hex). Base64 is a text-encoding scheme that represents arbitrary binary data — like an entire image or PDF file — as printable text characters. If you're looking for that, see our Image to Base64 or PDF to Base64 tools instead.
No — this tool converts a single number between bases, not letters or words. Converting text to binary means looking up each character's ASCII or Unicode code point and converting that number to binary one character at a time — a different kind of tool from this one.
Common real reasons: reading a memory address or a color hex code in decimal, decoding a Unix file-permission value like chmod 755 (octal), checking a bitmask or flag value, or just verifying the same number across every representation while debugging low-level code.
Its most common modern use is Unix/Linux file permissions — a command like chmod 755 is an octal number, where each digit (7, 5, 5) represents the read/write/execute permissions for the owner, group, and others as a 3-bit value.
Memory addresses, color codes (#FF5733), MAC addresses, and general low-level debugging — hex is popular because each hex digit maps exactly to 4 binary bits, making it a much more compact way to write binary values than binary itself.
Yes — each field has its own copy button next to it.
No artificial limit — thanks to the BigInt-based arbitrary-precision math, extremely long numbers still convert correctly, just with a longer result to read.
No — every conversion happens instantly in your browser. Nothing you type is sent to a server.
Base 36 is the practical ceiling for a normal positional numeral system using the everyday alphabet: it uses every digit 0-9 plus every letter a-z, so there are no more single characters left to represent a digit beyond that without inventing a non-standard symbol set. There's essentially no real demand for anything higher — every common use case (binary, octal, decimal, hex, and anything in between) falls well inside 2-36.
Type 57 into the Decimal field — the Binary field instantly shows 111001. The tool does the same repeated-division-by-2 process a manual conversion would, just automatically.
Type 11011 into the Binary field — the Decimal field instantly shows 27.
To read a number already written in base b, multiply each digit by b raised to its position (counting from 0 on the right) and add them up — e.g. binary 1011 = 1×2^3 + 0×2^2 + 1×2^1 + 1×2^0 = 11. To go the other way (decimal into base b), repeatedly divide by b and record the remainders from last to first — e.g. 11 ÷ 2 = 5 remainder 1, 5 ÷ 2 = 2 remainder 1, 2 ÷ 2 = 1 remainder 0, 1 ÷ 2 = 0 remainder 1, read bottom-up: 1011. Converting between two non-decimal bases (like base 3 to base 5) is normally done in two steps — source base to decimal, then decimal to the target base — which is exactly what this tool's custom-base field does automatically.
Convert between length, weight, temperature, speed, and scientific units instantly — from millimeters to light-years, and moles to atoms. Free, works entirely in your browser.
Convert YAML to JSON or JSON to YAML instantly, in either direction, with clear parse-error messages. All conversion happens in your browser.