Encode and decode Base64 strings and files instantly, in real time. URL-safe mode and drag-and-drop file support, with everything running locally in your browser.
Drag and drop a file here, or click to browse
Any file type, up to 5MB
Base64 is a binary-to-text encoding scheme that represents arbitrary bytes using a fixed alphabet of 64 printable ASCII characters: A-Z, a-z, 0-9, plus + and /. It works by grouping input bytes into chunks of three (24 bits) and re-slicing them into four 6-bit groups, each mapped to one of the 64 output characters, which is why encoded output is always about 33% longer than the original data. The trailing = characters are padding, added when the input length is not a clean multiple of three bytes. Base64 is not compression and not encryption; it exists purely so binary or special-character data can travel safely through systems built for plain text.
Kubernetes Secrets store every value in their data field as Base64 so the YAML manifest can safely hold binary data, newlines, or special characters as plain text. Decoding a Secret takes one command and reveals the real value in plaintext. JWTs Base64URL-encode their header and payload so the token can be embedded directly in a URL, cookie, or Authorization header without breaking. HTTP Basic Authentication encodes a username:password pair as Base64 and sends it in the Authorization header on every request. It is not encrypted, which is why Basic Auth should only ever be used over HTTPS. SSH public keys are also Base64-encoded strings, letting an arbitrary-length cryptographic key be pasted as a single line into an authorized_keys file or a Git hosting provider's settings page.