Base64 Encoder / Decoder
Encode and decode Base64 with full Unicode support, including emoji, which naive encoders break on.
Output updates as you type.
Features
- Encode and decode in both directions
- Full Unicode and emoji support via UTF-8
- URL-safe alphabet for query strings and JWTs
- Optional 76-character line wrapping (MIME style)
- Encode any file to a Base64 data URI
How to use it
- Choose whether you're encoding or decoding.
- Paste your text into the input box.
- The result updates as you type.
- Copy it, or press Swap to run the reverse operation.
Why Unicode support matters
The browser's built-in btoa() only accepts characters in the Latin-1 range. Feed
it an emoji or a Cyrillic character and it throws an InvalidCharacterError. Many
online encoders hit exactly this wall and either fail or silently mangle your text.
This tool converts your input to UTF-8 bytes with TextEncoder before encoding,
and decodes back through TextDecoder. That round-trips any string correctly,
including emoji, accented Latin, CJK characters and right-to-left scripts.
One thing worth remembering: Base64 is an encoding, not encryption. Anyone can decode it in a second. Never use it to protect a secret.
Frequently asked questions
Related tools
Further reading
Read the full guide on the 123MiniApps blog.