Base64 Encoder / Decoder
Encode text to Base64 or decode it back — UTF-8 safe, in your browser.
How this works
Encoding converts your text to its UTF-8 bytes and expresses them in the 64-character Base64 alphabet, which is safe to carry anywhere that expects plain ASCII. Decoding reverses it. Unlike the browser’s built-in btoa, this goes through a UTF-8 step, so emoji and accented characters work rather than throwing.
What the results mean
- Encode
- Text in, Base64 out. Used to embed data in URLs, JSON and data URIs where arbitrary bytes are not allowed.
- Decode
- Base64 in, original text out. Also accepts URL-safe Base64 and fixes missing padding, both common in tokens.
Frequently asked questions
Is Base64 encryption?
No, and this is the most important thing to understand about it. Base64 is a reversible encoding with no key and no secret. Anyone can decode it instantly. It makes data transport-safe, not private — never use it to hide anything sensitive.
Why does the browser’s atob break on some strings?
The built-in atob/btoa only handle Latin-1 characters, so any emoji or accented letter throws. This tool routes through UTF-8 encoding first, which is why it handles real-world text correctly.
Can I decode a JWT here?
You can decode the header and payload segments — they are Base64URL, which this tool accepts. But that only reveals what is already public in the token; the signature is what actually protects it, and decoding does not verify it.