Base64 Encode & Decode
Encode text to Base64 or decode Base64 back to text, with full UTF-8 support.
About this base64 encode & decode
Base64 represents binary data using 64 plain-text characters, so it can travel safely through systems built for text — email attachments, data URLs, HTTP basic authentication headers, JSON web tokens and API payloads all use it.
This tool encodes and decodes with full UTF-8 support, so accented letters, non-Latin scripts and emoji round-trip correctly (a common failure of simpler tools). URL-safe mode uses - and _ instead of + and / for use in URLs and file names.
How to use the Base64 Encode & Decode
- Choose Encode or Decode.
- Paste your text or Base64 string.
- Copy the result.
How Base64 works
Every 3 bytes of input (24 bits) are split into four 6-bit groups, and each group maps to one of 64 characters: A–Z, a–z, 0–9, + and /. Padding with = fills the last group. Encoded data is therefore about 33% larger than the original.
Worked example
"Hello" encodes to SGVsbG8=, and SGVsbG8= decodes back to "Hello".
Tips for better results
- Base64 is encoding, not encryption — anyone can decode it, so never use it to hide secrets.
Frequently asked questions
Is Base64 encryption?
No. It's a reversible encoding that anyone can decode.
Why does my decoded text look garbled?
The original may not have been text (for example, an image), or it used a different character encoding.
Last reviewed: October 2026 · Results are calculated in your browser.