Base64 Encoder/Decoder

Encode text to Base64 or decode Base64 to text with full UTF-8 support — emoji and accents included — plus the URL-safe variant. Runs entirely in your browser.

How Base64 encoding works

Base64 represents binary data using 64 printable characters: every 3 bytes become 4 characters, growing the data by about a third. This tool first converts your text to UTF-8 bytes, so multi-byte characters like emoji encode and round-trip correctly. The URL-safe variant swaps + and / for - and _ and drops the = padding so the result can live inside URLs and filenames.

Base64 output ≈ ceil(bytes / 3) × 4 chars (+33%)

Frequently asked questions

Is Base64 encryption?

No. Base64 is an encoding, not encryption — anyone can decode it instantly. Never use it to protect secrets; use real encryption instead. Everything here runs locally in your browser and nothing is uploaded.

What is URL-safe Base64?

Standard Base64 uses + and /, which have special meanings in URLs. The URL-safe alphabet (RFC 4648 §5) replaces them with - and _ and usually omits the = padding, so tokens can be pasted into query strings without escaping. JWTs use this variant.

Why do emoji and accents need special handling?

The browser's built-in btoa() only accepts single-byte characters. This tool converts text to UTF-8 bytes first, so 🌍 or é encode correctly and decode back to the exact original text.

Last updated: 7 July 2026

More tools

Runs entirely in your browser — nothing you enter is uploaded. DevMint · MintKit