Base64 Encoder / Decoder
Encode and decode Base64 with full Unicode support, including emoji, which naive encoders break on.
Encode text to Base64 or decode it back, with full Unicode and emoji support plus a URL-safe variant. Runs entirely in your browser, nothing is uploaded.
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.