Base64 Decoder
Decode Base64 to text or download it as a file. Handles URL-safe input, missing padding, MIME line wrapping and whole data URIs.
URL-safe input, missing padding, line wrapping and whole data URIs are all handled.
Related tools
All Developer tools →This tool runs entirely in your browser. Nothing you enter is sent to our servers, so there is nothing for us to store or see.
About the Base64 Decoder
Paste Base64 and get back what it encodes — as text, or as a file to download when the content is not text at all.
Encoding Base64 is trivial; decoding it is where the awkward cases live, and this handles them rather than rejecting them. URL-safe input, where - and _ replace + and /, is detected and converted. Missing padding — which JWTs and many APIs omit deliberately — is repaired instead of refused. Line breaks from MIME wrapping or an email client are stripped. A whole data:...;base64, URI can be pasted as it stands.
When the decoded bytes are not text, the tool says so rather than filling the box with replacement characters. It reads the file signature, so a PNG, JPEG, GIF, WebP, PDF or ZIP is recognised by its first few bytes and offered as a download with the right extension. If the input is malformed, the error names the character or explains that the string was truncated in copying, which is by far the most common cause.
How to use the Base64 Decoder
-
Paste your Base64
Into the left box. Line breaks, surrounding whitespace and a full data URI prefix are all fine — they are handled for you.
-
Read the result
Text appears on the right immediately. The status line reports the decoded size and whether the input was URL-safe or missing its padding.
-
Download binary content
If the payload is an image, PDF or archive, the tool identifies it from its signature and the download button saves it with the correct extension.
-
Copy or save
Copy the decoded text to your clipboard, or download it as a file.
Frequently asked questions
Why does my Base64 fail to decode elsewhere but work here?
Almost always padding or alphabet. Many encoders drop the trailing = characters, and JWTs and URL parameters use - and _ in place of + and /. Strict decoders reject both. This tool detects the URL-safe alphabet, repairs the padding, and tells you it did so.
What does the "one character too many" error mean?
Base64 encodes three bytes as four characters, so a valid string always has a length that is a multiple of four once padding is ignored. A leftover group of exactly one character cannot encode anything, no matter how it is padded. In practice this means the string was cut short when it was copied.
Can I decode a Base64 image?
Yes. Paste the Base64, or the whole data:image/png;base64,... URI. The tool reads the file signature from the decoded bytes and offers it as a download with the right extension, rather than trying to show binary data as text.
Is Base64 a form of encryption?
No, and this matters. Base64 is an encoding with no key and no secret — anyone can reverse it, which is exactly what this page does. It exists to carry binary data through channels that only accept text. Never use it to hide a password or a token.
Is my data uploaded anywhere?
No. Decoding happens entirely in your browser and nothing is transmitted or stored. That matters here more than most places, since Base64 payloads routinely contain tokens, credentials and private documents.