Base64 Encode / Decode

Encode text to Base64 or decode it back, with full UTF-8 support.

Output

What is Base64?

Base64 is an encoding that represents binary or text data using 64 printable ASCII characters. It is used to embed images in CSS, carry credentials in HTTP headers and move data safely through systems that only handle text. Encoding grows the data by roughly a third β€” it is not encryption and offers no security.

Why UTF-8 matters here

The browser's raw btoa function only handles Latin-1, so it breaks on accents and emoji. This tool wraps it with encodeURIComponent so every character is first turned into UTF-8 bytes, giving a clean round-trip for any Unicode text.

How to use the Base64 Encode / Decode

  1. Choose a mode. Pick Encode to make Base64, or Decode to read it back.
  2. Enter your input. Type or paste the text or Base64 string.
  3. Click Convert. The output updates instantly as you type too.
  4. Copy the output. Grab the result with the Copy button.

Frequently asked questions

Is Base64 encryption?

No. Base64 is fully reversible with no key, so it hides nothing. Use it for transport and embedding, never for secrecy.

Does it handle emoji and accents?

Yes. The tool encodes via UTF-8 first, so multi-byte characters round-trip correctly.

Why does decoding fail sometimes?

The input must be valid Base64. Extra spaces, truncated strings or non-Base64 characters will produce an error.

Does my text leave the browser?

No. Encoding and decoding run locally using native browser functions.