Base64 Decode

Convert Base64 back to plain text in your browser, with a clear error for bad input.

Runs in your browser — nothing is sent or saved.

How to decode Base64 to text

  1. Paste your Base64 string in the left box.
  2. The plain text appears on the right.
  3. If the input is broken, a clear message tells you.
  4. Press Copy result to take the text.

What decoding does

Base64 is a way to carry data as safe characters. Decoding reverses it and gives you back the original text or data. You often meet Base64 in tokens, config files, email source, and data links that start with data:. Paste the encoded part here to read what it holds.

When decoding fails

A valid Base64 string uses only A to Z, a to z, 0 to 9, and the signs + and /, and its length is a multiple of four, with = used as padding at the end. If a character is missing or the padding is wrong, the decode fails. This tool ignores line breaks and spaces, which are common in copied blocks, but it cannot fix a string that lost real characters.

Text and other data

The result is read back as UTF-8 text, so any language or emoji shows correctly. If the Base64 held a file such as an image rather than text, the decoded output will look like random characters, because it is raw file data, not words.

FAQ

Why do I get an error?

The string is not valid Base64. A character may be missing, or the padding = at the end may be wrong. Copy the whole string again and retry.

Does it matter if there are line breaks in my Base64?

No. This tool strips spaces and line breaks before decoding, since copied blocks often wrap across lines.

The output looks like nonsense. Why?

The Base64 probably held a file, not text. Decoding gives you the raw file bytes, which do not read as words.

Can I decode a data URL?

Paste only the part after base64,. The data: prefix is not Base64 itself.

Is anything sent to a server?

No. Decoding runs in your browser and nothing is stored.

What can this base64 decoder handle?

Text in any language, including emoji. Paste the encoded string and the plain text comes out. If the input is not real base64, you get a clear error instead of scrambled output.