
Free Developer Tool - runs 100% in your browser
Base64 Encoder / Decoder
Scroll down to learn more about this tool
Encode and decode Base64 online
This free Base64 encoder and decoder converts text to Base64 and back with fullUTF-8 support - accents, CJK characters and emoji all round-trip correctly, unlike naive tools built on btoa() alone. There's also a URL-safe Base64 mode (+ → -, / → _) for tokens and query-string values.
What is Base64?
Base64 is a binary-to-text encoding that represents any byte sequence using 64 printable ASCII characters. It exists so binary data can travel through channels designed for text: email attachments (MIME), data URIs for inline images, HTTP Basic Authentication headers, JWT segments and XML/JSON payloads. Every 3 bytes of input become 4 characters of output, so Base64 is roughly 33% larger than the original data.
Base64 is encoding, not encryption
A common security mistake is treating Base64 as protection. It isn't - decoding requires no key and takes microseconds, exactly what this page does. Never "hide" passwords or secrets with Base64; use real encryption or hashing instead (see the hash generator for one-way digests).
Frequently asked questions
Why does my decoded output look garbled?
Either the input isn't valid Base64, or it encodes binary data (like an image) rather than text. This tool decodes to UTF-8 text; binary content won't display meaningfully.
What are the = signs at the end?
Padding. Base64 output length must be a multiple of 4, so = characters fill the remainder. URL-safe variants often omit them - this decoder accepts input with or without padding.
