What is Base64?
Base64 is a text encoding scheme that represents binary data using only 64 printable ASCII characters (A–Z, a–z, 0–9, + and /). It does not encrypt or compress anything — it simply makes arbitrary bytes safe to move through systems built for text, such as JSON, XML, email (MIME) and URLs.
Worked example: the five-byte string "Hello" encodes to SGVsbG8=. Each group of three bytes maps to four characters, and the final group is padded with one = because 5 mod 3 leaves two bytes. In url-safe Base64 the letters stay the same, but + and / are swapped for - and _ and the padding is usually dropped; that is the alphabet JSON Web Tokens use. Decoding SGVsbG8= with this tool returns "Hello" exactly.
How to use the Base64 encoder / decoder
- Choose the Encode tab to turn plain text into Base64, or the Decode tab to turn Base64 back into text.
- Type or paste your input into the field — the result updates instantly as you type.
- Enable url-safe if you need the - and _ alphabet used in URLs, JWTs and filenames.
- Copy the result with one click; the byte counters show the input and output size.
Frequently asked questions about Base64
Is Base64 encryption?
No — Base64 is an encoding, not encryption. Anyone can decode it back to the original bytes, so it adds no confidentiality; use AES and TLS for real protection.
What is url-safe Base64?
Standard Base64 uses + and /, which are reserved in URLs. The url-safe variant (RFC 4648 section 5) uses - and _ and drops the = padding; that is the JWT alphabet.
Why is the output longer, and what do the = signs mean?
Three input bytes become four characters, so the result is about 33% larger. The = padding appears only when the length is not a multiple of three.
