Base64 Decode

Switch to Base64 Encode

Runs entirely in your browser. Your data is never uploaded.

How to decode Base64

Paste a Base64 string into the box above and the decoded result appears instantly. Line breaks and spaces are ignored, and both standard and URL-safe Base64 are detected automatically. If the data is an image or a PDF you will see a preview and can download the file. Decoding happens entirely in your browser, so it is safe to use with tokens, keys and private data.

Example

SGVsbG8sIFdvcmxkIQ== decodes to Hello, World!. Each group of 4 Base64 characters encodes 3 bytes; the two = signs show that the last group carries only one byte.

Base64 vs. Base64URL

Standard Base64 (RFC 4648) uses A–Z, a–z, 0–9, + and/, with = as padding. Base64URL replaces + with - and/ with _ so the result is safe in URLs and file names, and it usually drops the padding. JWTs use Base64URL. This decoder accepts both.

Why your Base64 won't decode

Decode Base64 from the command line

# Linux
echo 'SGVsbG8sIFdvcmxkIQ==' | base64 -d
# macOS
echo 'SGVsbG8sIFdvcmxkIQ==' | base64 -D
# PowerShell
[Text.Encoding]::UTF8.GetString([Convert]::FromBase64String('SGVsbG8sIFdvcmxkIQ=='))
# JavaScript (browser)
new TextDecoder().decode(Uint8Array.from(atob('SGVsbG8sIFdvcmxkIQ=='), c => c.charCodeAt(0)))
# Python
import base64; base64.b64decode('SGVsbG8sIFdvcmxkIQ==').decode()

FAQ

Is it safe to decode Base64 online here?

Yes. The decoder runs entirely in your browser and nothing you paste is sent to a server. You can confirm this in your browser's network tab.

Is Base64 encryption?

No. Base64 is an encoding: anyone can decode it without a key. Never use it to protect passwords or secrets.

How do I decode a Base64 image?

Paste the string (with or without the data:image/...;base64, prefix). The tool shows a preview and a download button.

Why does my decoded text show strange characters?

The original data was binary or used a different character set. Try switching the charset or download the output as a file.

What do the = signs at the end mean?

Padding. Base64 works in groups of 3 bytes; = fills the last group when the input length is not a multiple of 3.