How to use the Base64 Decoder
- Paste the Base64 string — line breaks and a data: prefix are fine.
- The decoded text appears instantly.
- If the bytes are not text (an image or other binary data), you see them as hex instead of garbage.
- Copy the result, or switch to encode with one click.
What this decoder accepts
- Standard Base64 (
+and/) and URL-safe Base64 (-and_). - Missing
=padding, as found in JWTs. - Line breaks every 64 or 76 characters, as in PEM files and email.
- Data URIs such as
data:text/plain;base64,SGk=.
Decoded bytes are read as UTF-8, so accented letters, emoji and non-Latin text come back exactly as they were encoded.
Decoding a JWT
A JSON Web Token is three URL-safe Base64 parts separated by dots: header, payload and signature. Paste just the middle part to read the payload claims, then open it in the JSON Formatter. Decoding a JWT does not verify it — anyone can read a token’s contents, which is why tokens must never carry secrets.
Frequently asked questions
Why does my Base64 fail to decode?
The usual causes are characters outside the Base64 alphabet (often a stray quote or space from copying), or a truncated string. The error message says which one it is.
Why is the output shown as hex?
The decoded bytes are not valid UTF-8 text — they are probably an image, a compressed file or encrypted data. Hex shows the real bytes instead of unreadable symbols.
Is it safe to decode tokens here?
Yes. Decoding happens in your browser; nothing is transmitted or logged.