Base64 Encoder & Decoder
Encode text to Base64 or decode Base64 back to text, with full UTF-8 support so accented and non-Latin characters survive the round trip. Runs in your browser. Remember that Base64 is an encoding, not encryption — anyone can decode it.
Runs in your browser — nothing is uploaded
Questions
- Is Base64 a form of encryption?
- No, and treating it as one is a real security mistake. It is a reversible encoding with no key — anyone can decode it in one step. Its purpose is to carry binary data through channels that only accept text, not to hide anything.
- Why do I sometimes see = at the end?
- Padding. Base64 works in three-byte groups; when the input does not divide evenly, one or two = characters pad the final group. Some implementations omit the padding, which is why a string can fail to decode in one tool and work in another.
- Does it handle emoji and non-English text?
- Yes. The text is converted to UTF-8 bytes before encoding, so emoji and any script round-trip correctly. The naive btoa() call that most snippets use throws on exactly this input.
What people use next
- URL Encoder & DecoderEncode or decode URL components and full URLs. Supports encodeURIComponent and encodeURI.
- Hash GeneratorGenerate SHA-256, SHA-384, and SHA-512 hashes using Web Crypto API. Output in hex or Base64.
- Image to Base64 ConverterEncode images to Base64 strings or decode Base64 back to downloadable images.