How to convert Base64 to decimal
- Paste the Base64 into Input · Base64. Spaces, line breaks, URL-safe characters and missing padding are fine.
- The byte values appear in Output · Decimal bytes.
- Choose Separator under the output: Space,
,,,or New line. - Copy output or Download the list. The Decimal bytes → Base64 toggle, or Decimal to Base64, reverses the conversion.
Examples
| Base64 | Decimal bytes | What it is |
|---|---|---|
SGkh | 72 105 33 | the text Hi! |
SGkh/w== | 72 105 33 255 | Hi! plus one 0xff byte |
AQA= | 1 0 | two bytes, 256 as a big-endian 16-bit number |
AAAA | 0 0 0 | three zero bytes |
//// | 255 255 255 | three bytes with every bit set |
fwAAAQ== | 127 0 0 1 | an IPv4 address, 127.0.0.1, as four raw bytes |
The last row shows a handy use: binary formats store IPv4 addresses as four bytes, and the decimal list is the familiar dotted form without the dots.
Byte values or one big number
This converter lists bytes. Reading the whole Base64 value as a single integer gives a different answer, and one that depends on byte order: the two bytes 1 0 are 256 when read as a big-endian number and 1 when read as little-endian. Which one is right depends on the format that produced the data, so the conversion belongs in code where you can state it:
import base64
data = base64.b64decode("AQA=")
list(data) # [1, 0]
int.from_bytes(data, "big") # 256
int.from_bytes(data, "little") # 1
The same applies to Base64 that holds a 32-bit counter, a timestamp or a large ID: the decimal list gives the bytes, and int.from_bytes or DataView in JavaScript gives the number.
Where decimal byte lists are used
- JSON. Some serializers write binary data as an array of numbers. Node’s
JSON.stringify(Buffer.from("Hi!"))gives{"type":"Buffer","data":[72,105,33]}. With the,separator and brackets you get the same shape. - Python and spreadsheets.
list(b)in Python prints decimal values, and a column of numbers (New line separator) pastes straight into a spreadsheet. - Microcontrollers and serial monitors. Arduino code and many serial tools show bytes as decimal. For a typed array declaration in C or another language, Base64 to Byte Array writes the full literal.
If you are going to read the bytes rather than paste them somewhere, hex is usually clearer because every byte is exactly two characters: try Base64 to Hex.
Base64 to decimal in code
import base64
list(base64.b64decode("SGkh/w==")) # [72, 105, 33, 255]
Array.from(Buffer.from("SGkh/w==", "base64")).join(", "); // '72, 105, 33, 255'
In a browser without Buffer, Array.from(atob(s), c => c.charCodeAt(0)) gives the same numbers. The Python and JavaScript pages cover decoding in more depth.
FAQ
What does "decimal" mean in Base64 to decimal?
Each decoded byte written as an ordinary base-10 number. A byte holds 0 to 255, so the output is a list of numbers in that range, one per byte.
How do I convert Base64 to one number instead of a list?
Read the bytes as a single integer in code. In Python, int.from_bytes(base64.b64decode(s), "big"); for AQA= that is 256, while this page lists the bytes 1 0.
How do I get a JSON array of bytes from Base64?
Set Separator to , and wrap the result in square brackets. SGkh becomes [72, 105, 33], which parses as a JSON array.
Why does Java print -1 where this page shows 255?
Java’s byte type is signed, so bytes from 128 to 255 print as −128 to −1. The bits are identical. Use b & 0xff in Java to get the 0–255 value shown here.