Accepts both alphabets, missing padding, line breaks and data: URLs.
Try
Decoded text
About this tool
- Runs in
- your browser
- Your input sent to our servers
- Nothing
- Kept on this device
- nothing
More in the privacy policy.
How to use it
- 01Paste Base64, Base64url or a data: URL, or pick one under Try. Line breaks, spaces and missing = padding are fine.
- 02Text appears as text. Anything else, such as an image, a PDF or a ZIP file, appears as a file with its type, a preview for images and a hex view.
- 03Copy the text or download the file. To encode instead, switch to Encode.
Related tools
Questions
Why does my result show as a file instead of text?
Base64 holds bytes, not text. When the bytes are UTF-8 text they’re shown as text (SGVsbG8= is Hello); when they aren’t, such as an image or compressed data, they’re shown as a file with its type and a hex view, rather than as garbled characters.
Does it decode Base64url and JSON Web Tokens?
Yes. Both alphabets decode here: Base64url’s - and _ are read as + and /, and missing = padding is fine. A token’s header eyJhbGciOiJIUzI1NiJ9 decodes to {"alg":"HS256"}. For a whole token, its claims and its signature, use the JWT decoder.
What does an error mean?
Base64 uses only A–Z, a–z, 0–9, + and / (or - and _), with = at the end. Anything else is named with its position. For SGVsbG8$: "$" at position 8 isn't a Base64 character. Text copied from an email or a PDF sometimes carries stray characters like this.
Is my data uploaded?
No. It’s decoded in this tab, and a decoded image is previewed from memory. Nothing is sent to our servers or kept after you leave the page.