Base64 Decoder
Decode a Base64 string back to readable text, for example to inspect an encoded config value or email header.
Your input stays in your browser. Nothing is uploaded.
Input
Output
About this tool
Whitespace and line breaks are removed first, so wrapped Base64 from emails or PEM-style blocks decodes correctly. The bytes are then read as UTF-8 text. The decoder expects the standard alphabet (+ and /). If the data is binary, such as an image or a compressed file, the text output will look garbled; use Base64 to Image for images.
Limits
- Decoding is not decryption. There is no key, and the result is not a secret.
- URL-safe Base64 (− and _) is not accepted until you replace those characters with + and /.
- Binary payloads (images, PDFs, compressed files) are decoded as UTF-8 text and will look garbled.
How to use it
- Paste the Base64 string.
- Read the decoded text in the output panel.
- If you see an error, check for missing characters or URL-safe characters (- and _).
UTF-8 decode(atob(input))
Examples
Simple string
"aGVsbG8=" decodes to "hello".
Wrapped input
Base64 split across several lines decodes the same as the single-line version.
FAQ
Why do I get "Invalid Base64"?
The input contains characters outside the Base64 alphabet, or its length is wrong. URL-safe Base64 uses - and _ instead of + and /; replace them first.
Why is the output garbled?
The encoded data is probably binary (an image, PDF, or compressed file) rather than UTF-8 text.
Is decoding the same as decrypting?
No. Base64 has no key. Decoding just reverses the representation.

