Skip to content

Base64 Encode / Decode

Encode text to Base64 or decode Base64 back to plain text.

Input (Text)

Output

About the Base64 Encode / Decode

Encode text to Base64 or decode a Base64 string back to readable text instantly. Base64 turns arbitrary binary data into a safe ASCII alphabet, which is why it shows up everywhere: data URIs, HTTP Basic Auth headers, email attachments, JWT segments, and embedded images in CSS.

How to use it

  1. 1 Choose Encode to convert plain text into Base64, or Decode to reverse it.
  2. 2 Type or paste your input — the output updates as you type.
  3. 3 Enable URL-safe mode if the result will be used in a URL or filename.
  4. 4 Copy the result, or drop a file in to encode its contents.

What it does

  • Two-way encoding and decoding
  • Full UTF-8 support for accented characters and emoji
  • URL-safe variant (- and _ instead of + and /)
  • File-to-Base64 conversion via drag and drop
  • Live output with no button press needed

Frequently asked questions

Is my data sent to a server?

No. Every calculation happens locally in your browser using JavaScript. Nothing you paste is uploaded, logged, or stored on a server, which makes the tool safe to use with production data, credentials, and customer records.

Is Base64 encryption?

No, and this is the single most common misconception. Base64 is an encoding, not encryption — anyone can decode it instantly with no key. Never use it to protect passwords, tokens, or personal data. Use it only to make binary data survive a text-only channel.

What is URL-safe Base64?

Standard Base64 uses + and / characters, which have reserved meanings in URLs and are illegal in filenames on some systems. The URL-safe variant, defined in RFC 4648, swaps them for - and _ and usually drops the = padding. JWTs use this variant.

Why does Base64 make my data bigger?

Base64 represents every 3 bytes of input as 4 ASCII characters, so encoded output is about 33% larger than the original. That overhead is the price of transmitting binary safely through a text channel.

What does the = at the end mean?

It is padding. Base64 works in blocks of three input bytes; when the final block is short, one or two = characters pad the output to a multiple of four. It carries no data and some decoders accept its absence.