Initializing...
Explore Tools
⚙️

Free Base64 Encoder & Decoder

Encode text to Base64 or decode Base64 back to text — with full UTF-8 and emoji support — instantly in your browser.

URL-safe
Ready
All encoding and decoding happens in your browser — your text is never sent to a server. Remember: Base64 is an encoding, not encryption — it does not protect sensitive data.
About This Tool

What Base64
is actually for.

Base64 is a binary-to-text encoding — it converts arbitrary data into a string of 64 printable ASCII characters (A-Z, a-z, 0-9, +, /), with = used for padding. It exists because many systems (email, URLs, HTML attributes) were designed to handle only text, not arbitrary binary bytes.

This tool is fully UTF-8 aware, so emoji, accents, and non-Latin scripts survive a full encode/decode round-trip correctly. Toggle URL-safe mode when you need output for query strings, cookies, filenames, or JWTs — it replaces + and / with - and _, and omits padding.

FAQ

Common questions.

Base64 converts binary data into plain ASCII text, which is useful anywhere a system can only safely handle text — like embedding images in HTML/CSS, email attachments, API authentication headers, and JWT tokens.

No. Base64 is an encoding, not encryption — anyone can decode it instantly with any decoder. It should never be used to protect sensitive data or as a security measure.

URL-safe Base64 replaces the '+' and '/' characters with '-' and '_' (which have special meaning in URLs), and usually omits padding. Use it for JWT tokens, URL query parameters, and anywhere the encoded value will appear in a web address.

Base64 represents every 3 bytes of input as 4 output characters, which is where the roughly 33% size increase comes from. This is expected and unavoidable — it's the tradeoff for representing binary-safe data as plain text.

Decoding fails if the input isn't valid Base64 — for example, if it contains characters outside the Base64 alphabet, has incorrect padding, or mixes standard and URL-safe characters. Make sure you're using the matching mode for your input.

More Developer Tools

Related tools.