Base64 Encoder / Decoder
Encode and decode Base64 text with full UTF-8 support.
Result will appear here.
What is Base64 encoding?
Base64 converts arbitrary bytes into a text representation using 64 safe ASCII characters (A–Z, a–z, 0–9, +, /). It's widely used when binary data needs to travel through text-only channels, such as JSON payloads, URLs, or email.
Why not just use atob() / btoa()?
The browser's built-in btoa() and atob() functions only handle Latin1 text and throw errors on many Unicode characters. This tool encodes text as UTF-8 bytes first, so international text, emoji and symbols encode and decode correctly.
Frequently asked questions
What is Base64?+
Base64 is an encoding scheme that represents binary or text data using 64 printable ASCII characters. It's commonly used to embed data in text formats like JSON, URLs, or email attachments.
Does this tool support Unicode characters?+
Yes. Text is encoded as UTF-8 before Base64 conversion, so accented letters, emoji and non-Latin scripts round-trip correctly — unlike naive encoders that only support Latin1.
Is my data uploaded to a server?+
No. Encoding and decoding both run locally in your browser using the Web Crypto and TextEncoder/TextDecoder APIs.
What happens if I paste invalid Base64?+
The tool detects invalid characters or malformed padding and shows a clear error message instead of a broken result.