Amufo

Base64 Encoder & Decoder

Text in one box, Base64 in the other, in either direction. Non-English characters and emoji work, which is where many tools quietly break.

Base64 Runs in your browser · nothing is uploaded

Encode a file

Useful for data URIs. Large files produce very long strings.

Drop a file here

or click to choose

What Base64 is for

Base64 turns arbitrary bytes into a string made only of letters, digits and a few symbols. That matters wherever a channel can carry text but not raw bytes: an email attachment, a JSON field, a data URI in a stylesheet, a certificate in a config file.

It costs about 33 percent in size, because every three bytes become four characters. That is the price of passing through a text-only channel.

Base64 is not encryption

This is worth stating plainly, because the confusion is common and expensive. Base64 is reversible by anyone, instantly, with no key. A password, an API key or a token in Base64 is a password, an API key or a token in plain sight. Encoding is about transport; encryption is about secrecy.

The UTF-8 trap

The browser’s built-in btoa only accepts characters in the Latin-1 range. Feed it “Grüße” or an emoji and it throws. Many online tools either crash or mangle the result.

The fix is to convert the text to UTF-8 bytes first and encode those, which is what this tool does. Decoding reverses it. That is why non-English text survives a round trip here.

URL-safe variant

Standard Base64 uses + and /, which both have meaning inside a URL, and = padding, which is awkward in a filename. The URL-safe variant swaps them for - and _ and drops the padding. JWTs, OAuth state parameters and many APIs use it. Tick the box and the tool reads and writes that variant.

Files as data URIs

Dropping a file produces a complete data: URI with the correct media type, ready to paste into CSS or an img tag. Keep it to small assets: icons and tiny images. A large image as a data URI bloats the document and cannot be cached separately.

Questions

Does it handle German umlauts, accents and emoji?

Yes. The text is converted to UTF-8 bytes before encoding, which is what most tools get wrong. A naive implementation throws an error or silently corrupts anything outside the Latin-1 range.

What is URL-safe Base64?

A variant that replaces + with - and / with _, and drops the = padding, so the result can sit in a URL or a filename without escaping. JWTs use it.

Is Base64 encryption?

No, and this matters. Base64 is an encoding, not a cipher. Anyone can decode it instantly. Never use it to hide a password or a key.

Why is my encoded file so much bigger?

Base64 represents three bytes with four characters, so the result is about 33 percent larger than the original. That is inherent to the format.