Base64 Encoder/Decoder

Encode text to Base64 or decode it back, with full Unicode support. Base64 turns arbitrary text into a plain alphanumeric string that survives passing through systems built to handle only simple characters — which is why it appears in data URIs, authentication headers and email attachments.

How to encode or decode Base64

  1. Paste your text or Base64 string into the input box.
  2. Tap Encode or Decode.
  3. Copy the result from the output box.

When you'd use this

Good to know

Frequently asked questions

What is Base64 used for?

Base64 turns arbitrary bytes into plain ASCII text, so binary-unfriendly places — like a URL, an email body, a JSON field or a data: URI — can carry it safely. It's an encoding, not encryption — anyone can decode it back instantly, so never use it to hide sensitive data.

Does this handle emoji and non-English text correctly?

Yes. Text is converted to UTF-8 bytes before encoding, and decoded the same way back to text, so Hindi, emoji and other non-Latin scripts round-trip correctly rather than turning into garbled characters.

Why did decoding fail?

The Decode button expects valid Base64 — only the letters A–Z, a–z, 0–9, +, / and = padding. If the text you pasted has line breaks, extra spaces, or isn't Base64 at all, decoding will fail with a clear message rather than showing garbage.

Is Base64 a form of encryption?

No, and treating it as one is a real security mistake. It is a reversible encoding with no key involved — anyone who sees the string can decode it instantly. Use actual encryption for anything that needs protecting.

Why does my decoded text show strange characters?

Usually the original was encoded from a different character set, or it is binary data rather than text. This tool decodes as UTF-8 and reports a clear error when the result is not valid text.

Can I encode a file rather than text?

This page handles typed or pasted text. Encoding a file into a data URI works from the file's raw bytes, which is a different job.