jsonecho

Base64 Encode

Turn any text into Base64, with correct handling of accents and emoji.

Loading the tool...

How to use Base64 Encode

  1. Paste or type your text.
  2. Tick URL-safe if the result goes into a URL or a token.
  3. Copy the Base64 string.

About Base64 Encode

Base64 represents binary data using 64 letters, digits and two symbols, so it can pass through systems that only handle text: email, JSON, HTML data URIs, HTTP headers. It is not encryption. Anybody can decode it, so never use it to hide a secret.

Text is converted to UTF-8 bytes first, so accents, Turkish letters and emoji survive the round trip. The URL-safe variant swaps + and / for - and _ and drops the padding, which is what JWTs and many web APIs use.

Frequently asked questions

Is Base64 encryption?

No. It is a reversible encoding with no key. Anyone can decode it in a second.

Why is the output about a third bigger?

Every three bytes of input become four characters of output. The overhead is 33 percent, plus a bit for padding.

What is URL-safe Base64?

A variant defined in RFC 4648 that replaces + with - and / with _ and often leaves out the = padding. It is safe to use in URLs and file names without further escaping.

Why do other tools give a different result for accents?

Some tools encode the characters as Latin-1 bytes. This tool uses UTF-8, which is what nearly every modern system expects.

Where do I find Base64 used in practice?

Basic authentication headers, data URIs for small images, JWT tokens, email attachments, and the data field of Kubernetes secrets.

More in URL and Base64

All tools →