Base64 encoder & decoder
Encode and decode base64 text.
Mode
Everything runs in your browser. Nothing is uploaded.
How it works
Pick the direction
Pick the direction — encode text → base64, or decode base64 → text.
Paste
Paste the input. UTF-8 is handled correctly: emoji, Cyrillic, CJK — anything that fits in a string.
(Optional) URL-safe
Toggle URL-safe encoding when the result will end up in a URL or filename — it swaps `+/` for `-_` and drops padding.
Questions
What does this tool do?
This Base64 tool encodes text to Base64 and decodes Base64 back to readable text, with correct UTF-8 handling so emoji, Cyrillic, CJK characters, and accents survive the round trip intact. Choose standard Base64 or the URL-safe variant, which swaps the + and / characters for - and _ and drops trailing padding so the result is safe to drop into a URL or a filename.
Does my input leave my device?
Yes. Encoding/decoding runs in the browser using the built-in `btoa`/`atob` with a TextEncoder/TextDecoder UTF-8 layer. Nothing is uploaded.
What is base64?
Base64 is an encoding that represents binary data using 64 ASCII characters. Useful for embedding binary in JSON, URLs, or HTML attributes. It's not encryption — anyone can decode it.
Standard vs URL-safe base64?
URL-safe base64 swaps `+` and `/` (which break in URLs) for `-` and `_`, and removes trailing `=` padding. Both variants decode back to the same bytes.
