Base64 Encoder/Decoder

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

Copied to clipboard

About this tool

Encode text to Base64 or decode Base64 back to text, instantly and locally in your browser. Auto-detect mode figures out which direction you want: paste something that looks like Base64 and it decodes; paste plain text and it encodes.

Base64 is not encryption — it's a reversible encoding that represents binary data using 64 safe ASCII characters, which is why it appears everywhere data has to survive text-only channels.

When to use it

Worked example

Encode user:s3cret and you get dXNlcjpzM2NyZXQ= — exactly the string that goes after "Basic " in an HTTP Authorization header. Paste that output back in and it decodes to the original. The trailing = is padding that squares the output length to a multiple of four; it carries no data.

Frequently asked questions

Is Base64 encryption?

No. Anyone can decode Base64 with zero effort — this page proves it. It provides transport safety, not secrecy. Never treat Base64-encoded credentials as protected; if you need confidentiality, use real encryption.

Why does my decoded output look like garbage?

The original data probably wasn't text — Base64 frequently wraps binary content like images, compressed data, or ciphertext. Decoding gives you back the raw bytes, which look like gibberish when displayed as text. It can also mean the string was truncated or isn't actually Base64.

What do the = signs at the end mean?

Padding. Base64 emits output in 4-character blocks, each encoding 3 bytes. When the input length isn't a multiple of 3, one or two = characters pad the final block. Some variants (like base64url in JWTs) drop the padding entirely.

Does this tool handle Unicode and emoji?

Yes — text is encoded as UTF-8 bytes before the Base64 step, which is the modern convention. A string like héllo 🚀 round-trips correctly.