ToolUniverse

Base64 Decoder

Decode Base64 strings back into readable text instantly — free, unlimited, in your browser.

Frequently asked questions

Is my data uploaded anywhere?
No. Decoding happens entirely in your browser — nothing you paste is sent to a server.
Why do I see "This doesn't look like valid Base64"?
The string contains characters outside the Base64 alphabet (A–Z, a–z, 0–9, +, /, =) — check for stray text or extra symbols.
Why do I see "This Base64 string is malformed"?
Base64 text must be a multiple of 4 characters (with correct padding). This usually means the string was cut off or had characters removed.
Why do I see "decodes to binary data that can't be displayed as text"?
The Base64 is valid, but the bytes it decodes to aren't valid UTF-8 text — it's likely an image, file, or other binary data rather than text.
How does auto-detection tell standard Base64 apart from URL-safe Base64?
The decoder checks for characters unique to each alphabet — a - or _ signals URL-safe, while a + or / signals standard. If the input is ambiguous (short and free of those characters), you can force the URL-safe interpretation manually.
Can I recover a file, not just text?
Yes — when the decoded bytes aren't valid UTF-8 text, the tool offers a binary download instead of a text result, so the original file's bytes aren't lost or corrupted by trying to display them as a string.
Why does decoding sometimes ignore whitespace or line breaks?
Base64 is sometimes wrapped at a fixed line length (common in older email and certificate formats). Whitespace and line breaks inside a pasted string are stripped before decoding so wrapped values still decode correctly.
Is a decoded JWT payload trustworthy on its own?
No — decoding only reveals the claims inside a token; it does not verify the signature. Use the dedicated JWT Decoder for token-specific claim inspection, including expiry and not-before checks.
Why does decoding fail if I paste only part of a Base64 string?
Base64 encodes data in fixed 4-character groups, so a truncated string is usually missing bytes from the end of the original data — the decoder can tell the length is wrong even before it can tell you what specifically was cut off.
Is decoding the same operation everywhere, or does the alphabet matter for correctness?
The alphabet only changes which characters represent which 6-bit values — the underlying decode math is identical. That's why auto-detection can safely pick the right alphabet and still produce a byte-for-byte identical result to decoding with the correct alphabet chosen manually.

You might also need

What is the Base64 Decoder?

The Base64 Decoder recovers the original text from a Base64-encoded string — the reverse of Base64 encoding. Paste a Base64 string copied from an API response, a JWT segment, an email header, or a config file, and decode it back into readable text entirely in your browser. Base64 exists to carry arbitrary bytes through systems built around printable ASCII — email headers, JSON string values, URLs, and HTTP headers among them. Decoding reverses that mapping: every 4 input characters become 3 output bytes, drawn back out of the 64-character alphabet the string was encoded with. This decoder auto-detects whether a string uses the standard alphabet (+, /, = padding) or the URL-safe alphabet (-, _, no padding), so you can paste either without picking a mode first — a manual URL-safe toggle is also available if auto-detection needs overriding. Not every decoded result is human-readable text. If the original bytes were an image, a certificate, or another binary format rather than UTF-8 text, this tool detects that and offers a binary download instead of trying to render bytes that aren't valid text — so you don't lose the data, you just view it differently.

Use cases

  • Decoding a JWT header or payload segment to inspect its claims
  • Recovering the original value from a Basic Auth header
  • Decoding a Base64-encoded config value or environment variable
  • Reading Base64-encoded content copied from an email header or API response
  • Recovering a URL-safe Base64 token pulled from a query string or path segment
  • Checking whether a Base64 string actually decodes to valid UTF-8 text or to binary data
  • Downloading the original binary file (image, certificate, archive) from a Base64-encoded value
  • Verifying that a value round-trips correctly after encoding it elsewhere

How to use the Base64 Decoder

  1. 1

    Paste the Base64 string

    Paste a Base64-encoded string into the input panel — whitespace and line breaks are fine.

  2. 2

    Decode

    Click Decode Base64 (or press Ctrl/Cmd+Enter) to recover the original text. Standard and URL-safe alphabets are both auto-detected.

  3. 3

    Copy or download

    Use Copy to grab the text result, or Download to save it as a text file — or as a binary file if the decoded bytes aren't valid text.

Examples

Base64 to plain text

aGVsbG8=
hello

Base64 to JSON

eyJpZCI6MSwibmFtZSI6IkFkYSJ9
{"id":1,"name":"Ada"}

URL-safe Base64

aGk_
hi?

Auto-detected as URL-safe because it contains an underscore and no padding.

We use cookies for analytics and ads. Choose whether to allow them.