Base64 Encoder / Decoder

Encode or decode Base64 text — 100% in your browser, nothing leaves your machine

PLAIN TEXT42 chars
BASE64
// output appears here

Frequently Asked Questions

Base64 is a way of representing binary data (or any bytes) using only 64 printable ASCII characters (A-Z, a-z, 0-9, + and /). It exists because many systems — email, JSON, URLs, older text protocols — were built to safely carry text, not arbitrary bytes. Encoding data as Base64 lets you embed images, files, or binary blobs inside text-based formats without corruption.
No — Base64 is not encryption, it's just a reversible encoding. Anyone can decode a Base64 string back to its original form in seconds with no key or password. It's fine to use for embedding data, but never treat it as a way to protect secrets. That said, this tool itself is safe to use with sensitive text: everything runs entirely in your browser via JavaScript, and nothing is ever sent to a server.
Base64 encodes every 3 bytes of input as 4 characters of output, so encoded data is roughly 33% larger than the original. This overhead is the tradeoff for representing arbitrary binary data using a limited, text-safe character set.
Standard Base64 uses + and / as two of its 64 characters, both of which have special meaning inside URLs and file paths. URL-safe Base64 (used in JWTs, for example) replaces them with - and _ instead, and often drops the trailing = padding, so the string can be used directly in a URL or filename without extra escaping.
Typical uses include embedding small images directly in HTML or CSS as data URIs, decoding the header and payload segments of a JWT to inspect their contents, encoding attachments for email (MIME), and passing binary data through APIs or config files that only accept plain text.