Base64 Encoder / Decoder
Text ⇄ Base64 with proper Unicode support.
Where Base64 shows up
Base64 turns arbitrary bytes into a safe-to-transmit text alphabet (A-Z, a-z, 0-9, +, /, =). You'll meet it in HTTP Basic auth headers, data URIs, JWT token parts, email attachments and embedded config blobs. Encoding is not encryption — anyone can decode it — it's a transport format, not a security measure.
This tool uses UTF-8-aware encoding, so Chinese, emoji and other non-ASCII text round-trip correctly. URL-safe mode swaps the + and / characters for - and _, required when the encoded string travels inside URLs or file names without further escaping.
FAQ
Why does my decoded text look like garbage?
The input probably isn't UTF-8-encoded Base64 (it might be Latin-1 from an old system) or you're decoding an image's Base64 as text — images should be opened as files, not read as characters.
Why is Base64 output longer than the input?
Every 3 bytes become 4 characters — a 33% size increase. That's the cost of carrying binary safely through text-only channels.