Base64 Decoder

Decode Base64 back to readable text in your browser, Unicode included, and get a plain error message when the input is broken.

Updated

Developer Tools● Free No upload Instant

Loading Base64 Decoder…

Your browser is preparing the tool. It runs 100% locally.

Quick answer

Base64 Decoder turns a Base64 string back into readable text, in your browser. It decodes the Base64 to bytes and reads them as UTF-8, so text with emoji, accents, or non-Latin scripts comes back intact. Stray whitespace around your input is trimmed, and a string that is not valid Base64 gets an error message instead of garbled output. Your input stays on your device.

What the Base64 Decoder does

Paste a Base64 blob from a config file, a token, an API response or a header, and the original text appears, ready to copy.

It reads the decoded bytes as UTF-8, so it correctly reconstructs Unicode text, and it is forgiving about surrounding whitespace: leading and trailing spaces or line breaks are trimmed before decoding.

How it works

The tool first decodes the Base64 characters back into the raw bytes they represent. It trims your input first, so stray spaces or newlines from copying do not trip it up.

It then reads those bytes as UTF-8 text, reversing the usual encoding step, so emoji and accented or non-Latin characters come back correctly.

Data source & conversion logic

  1. Step 1. Paste the Base64 string. It stays in your browser.
  2. Step 2. Surrounding whitespace is trimmed automatically.
  3. Step 3. The Base64 is decoded back into raw bytes.
  4. Step 4. The bytes are read as UTF-8 to rebuild the original text.
  5. Step 5. If the input is not valid Base64, a clear error is shown instead.

Privacy

The Base64 you paste is decoded in your browser and is not uploaded, so whatever the string contains stays on your machine.

The decoder keeps no history. Clear the box or close the tab and the input and the decoded text are gone.

Technical details

DirectionBase64 → text
AlphabetStandard Base64 (A-Z a-z 0-9 + /)
UnicodeFull (bytes read as UTF-8)
InputWhitespace trimmed automatically
ErrorsClear message on invalid Base64
UploadNone; decoding happens on your device

Standards and references

  • RFC 4648 (Base64): defines the alphabet the decoder expects: A-Z, a-z, 0-9, + and /, with = as padding.
  • UTF-8: the decoded bytes are read as UTF-8, which is why Unicode text is reconstructed correctly.

Accuracy and limits

Decoding is exact: valid standard Base64 returns the original bytes, and reading them as UTF-8 gives back the exact text that was encoded, emoji and accents included.

It expects standard Base64 (the + and / alphabet). URL-safe Base64, which uses - and _ instead, will not decode as it is. Swap - for + and _ for / first. Wrong or missing = padding can also cause a failure.

The tool does not guess at broken input. If the string has characters outside the Base64 alphabet, or the bytes are not valid UTF-8, you get an error message. That usually means the string was cut short or was never Base64.

Base64 is not encryption, so decoding reveals whatever was encoded with no key needed. Treat any hidden-looking value in Base64 as effectively public.

Real-world uses

Read an encoded value

Decode a Base64 token, header, or config value to see the text inside.

Inspect an API response

Turn a Base64 field back into readable content.

Round-trip check

Confirm a string from the Base64 Encoder decodes back to the original.

Recover pasted data

Get the plain text out of a Base64 blob from a log or message.

When it fits, and when it doesn't

Good for

  • Decoding standard Base64 to text
  • Reading Unicode text back intact
  • Inspecting tokens, headers, and config values
  • A clear error when input is malformed

Not the best choice for

  • URL-safe Base64 without converting - _ to + /
  • Decoding Base64 of a binary file to text
  • Revealing secured data (it was never secure)
  • Fixing a truncated or partial string

For URL-safe input, swap - and _ back to + and / first; to turn a Base64 image back into a file, use the Base64 to Image tool; to encode, use the Base64 Encoder.

Frequently asked questions

Does it decode emoji and non-English text?
Yes. It reads the decoded bytes as UTF-8, so text with emoji, accents, or non-Latin scripts comes back exactly as it was encoded.
Why does it say my input is invalid?
The string probably contains characters outside the Base64 alphabet, has wrong padding, or was truncated when copied. The tool trims whitespace for you, but it cannot fix a broken or incomplete string.
Will it decode URL-safe Base64?
Not directly. URL-safe Base64 uses - and _ in place of + and /. Swap those back (- to +, _ to /) before decoding, since the standard decoder does not accept - and _.
Is decoding Base64 a security risk to the sender?
In the sense that Base64 hides nothing, yes. Anyone can decode it without a key. It was only ever a way to transport data, never to protect it.
Do I need to remove spaces or line breaks first?
No. The tool trims leading and trailing whitespace automatically, so pasting a string with surrounding spaces or newlines is fine.
Can it decode a Base64 image?
It decodes to text. A Base64 image is binary data and will not show as readable text. The Base64 to Image tool turns it back into a picture.
Is my input uploaded?
No. Decoding happens entirely in your browser. Nothing is sent to a server, and clearing the box removes it.
What alphabet does it expect?
Standard Base64 from RFC 4648: A-Z, a-z, 0-9, + and /, with = padding. The URL-safe - and _ characters are not accepted as-is.
Why is my decoded text garbled?
If you see odd characters, the source probably was not UTF-8 text to begin with (it may have been binary), or it is only part of a larger string. This tool expects Base64 of UTF-8 text.
Is there a size limit?
No fixed limit. It decodes in your browser, so very large inputs depend on your device, but ordinary strings decode instantly.

References

Written from the decoder's code: it trims, decodes and reads the bytes as UTF-8. The URL-safe Base64 limit and the error on bad input are stated as the tool behaves.

Popular

Base64 Encoder

Encode any text to standard Base64 in your browser, emoji and accented letters included.

DeveloperOpen Tool
PopularHot

JSON Formatter

Paste messy or minified JSON and get it back pretty-printed with 2-space indentation. The same step tells you whether the JSON is valid.

DeveloperOpen Tool

URL Decoder

Turn percent-encoded text back into readable characters: %20 becomes a space and %26 an ampersand. It uses the browser's decodeURIComponent.

DeveloperOpen Tool
Popular

Hash Generator

Get the MD5, SHA-1, SHA-256, SHA-384 and SHA-512 hashes of any text at once, updated as you type, with a plain note on which ones are still safe for security work.

DeveloperOpen Tool
Popular

UUID Generator

Generate up to 500 random version 4 UUIDs at once, the 128-bit identifiers used for database keys, from your browser's secure random generator.

DeveloperOpen Tool

URL Encoder

Percent-encode a value so it can sit safely inside a URL. Spaces, ampersands, slashes and other special characters become %-codes, using the browser's encodeURIComponent.

DeveloperOpen Tool

Back to the Base64 Decoder

Paste or pick your input at the top of the page. The conversion runs on this device and needs no account.