Encode any text to Base64 or decode Base64 back to plain text. Converts in real time.
Base64 is a binary-to-text encoding scheme that represents binary data using only 64 ASCII-safe characters (A–Z, a–z, 0–9, +, /). It was designed to safely transmit binary data over channels that only support text — like email (MIME), URLs, and HTTP headers. Every 3 bytes of binary data become 4 Base64 characters, which is why Base64-encoded data is approximately 33% larger than the original.
This tool uses the browser's native btoa() (binary-to-ASCII) for encoding and atob() (ASCII-to-binary) for decoding, with UTF-8 support added via TextEncoder for non-ASCII characters. URL-safe Base64 replaces + with - and / with _ to avoid conflicts with URL syntax — useful for JWTs and query parameters. Base64 is not encryption: it is trivially reversible and provides no security. Any Base64 string can be decoded instantly. Do not use it to hide sensitive data.
Base64 is a method of encoding binary data as ASCII text using 64 printable characters. It is used to safely transmit binary data (like images or files) over text-based systems such as email, URLs, and HTTP headers.
No. Base64 is encoding, not encryption. It is fully reversible by anyone without a key. It does not protect data from being read — it only converts binary data into a text-safe format. Never use Base64 to hide or secure sensitive information.
Base64 works in groups of 3 bytes (24 bits = 4 Base64 characters). If the input length isn't divisible by 3, padding characters (=) are added to make the output a multiple of 4. One '=' means 1 byte of padding; '==' means 2 bytes of padding.
URL-safe Base64 replaces '+' with '-' and '/' with '_' to avoid conflicts with URL syntax, where these characters have special meaning. It is used in JWTs, OAuth tokens, and any Base64 data embedded in URLs or HTTP headers.