Free Base64 Encoder and Decoder

Encode any text to Base64 or decode Base64 back to plain text. Handles UTF-8 (emoji, accents, non-Latin scripts) correctly.

Try this example

A coworker sent you a string that starts with eyJ and looks like base64 garbage. You want to see if it\'s a JWT or some other base64-encoded payload.

Sample input
SGVsbG8sIOS4lueVjCEg8J+Ygg==
Steps
  1. 1Paste the string into the input box.
  2. 2Pick Decode mode.
  3. 3Read the output. If you see JSON like {"alg":"HS256","typ":"JWT"}, it's the header of a JWT. Switch to the JWT Decoder for a friendlier view.
Expected result
Hello, 世界! 😂

How to use

  1. 01Paste your text or Base64 string into the input box.
  2. 02Pick Encode or Decode mode.
  3. 03Result appears below. Copy with one click.

FAQ

Why does Base64 make text bigger?

Base64 represents 3 bytes of binary data using 4 ASCII characters, so the encoded form is roughly 33% larger than the original.

When should I use Base64?

When you need to send binary data through a text-only channel (URLs, email, JSON, HTTP headers). It is not encryption: anyone can decode Base64.

Does this support UTF-8?

Yes. Emoji, accented characters, Chinese, Arabic, and other Unicode are all handled correctly via TextEncoder/TextDecoder.

More in Developer