Encode text to Base64 or decode Base64 back to text. Handles Unicode and files.
Plain Text
Base64 Output
Three steps. Instant results.
This tool uses JavaScript's built-in btoa() and atob() functions with a UTF-8 wrapper for proper Unicode support. When encoding, it first converts the string to UTF-8 bytes using encodeURIComponent, then applies Base64 encoding. When decoding, it reverses the process. For file uploads, it uses FileReader to read the file as a data URI, which is already Base64-encoded. Everything runs in your browser — your data never leaves your device.