Skip to content
1001 Tools
sr
Developer tools

Base64 Encoder and Decoder

Switch between encode and decode, paste your text or Base64, and get the result instantly. It handles full Unicode — accented letters and emoji included — and accepts the URL-safe alphabet and missing padding when decoding. Everything happens in your browser, so tokens and secrets stay on your device.

Base64

How it works

Encoding turns your text into UTF-8 bytes and represents them with 64 printable characters (A–Z, a–z, 0–9, + and /), so binary or non-ASCII data survives systems that only handle plain text. Every 3 bytes become 4 characters, which is why Base64 is about a third larger than the original.

Decoding reverses that. Because the browser’s built-in encoder only understands Latin-1, the tool round-trips through a proper UTF-8 decoder so “čšž” or “🚀” come back intact. When decoding it also accepts the URL-safe characters (- and _) and adds any missing “=” padding, so tokens copied from URLs still work.

Practical examples

Decoding a token payload

Paste a Base64 string from a config or header and switch to decode to read the original text — for example SGVsbG8sIHdvcmxkIQ== becomes “Hello, world!”.

Encoding credentials for a header

HTTP Basic auth expects user:pass in Base64. Encode “user:secret” to get dXNlcjpzZWNyZXQ= for the Authorization header — locally, without pasting credentials into a website’s server.

Round-tripping Unicode

Encode “Ćao 🚀” and decode it back to confirm the accented letter and emoji survive — a common failure point in tools that aren’t UTF-8 aware.

Frequently asked questions

Is my text or token uploaded anywhere?

No. Encoding and decoding run entirely in your browser. You can disconnect from the internet after the page loads and it still works — which matters when you’re handling credentials or tokens.

Is Base64 encryption? Is it secure?

No. Base64 is encoding, not encryption — anyone can decode it. It hides nothing; it only makes binary or Unicode data safe to transport as text. Never use it to protect secrets; use real encryption for that.

Does it handle accented letters and emoji?

Yes. The tool encodes and decodes through UTF-8, so Serbian letters like č, š, ž and emoji round-trip correctly. Tools that use the raw browser functions without UTF-8 handling often corrupt these.

What is URL-safe Base64 and do you support it?

URL-safe Base64 replaces + and / with - and _ so the string is safe in URLs. When decoding, this tool accepts both alphabets automatically. Encoding here produces the standard alphabet (+ and /).

Why is my decode failing?

The input probably contains characters outside the Base64 alphabet, or its length is impossible (one leftover character can never be valid). Whitespace is ignored and missing padding is added automatically, so those aren’t the cause.

Why is the encoded string longer than my text?

Base64 represents every 3 bytes as 4 characters, so output is roughly 33% larger than the input. That overhead is the trade-off for being able to carry any data through text-only channels.

What does the “=” padding at the end mean?

Padding brings the length to a multiple of four when the data doesn’t divide evenly into 3-byte groups. One or two “=” are normal; this tool adds them for you if you paste an unpadded string.

Can I encode a file or image?

This tool works with text. To turn an image into a Base64 data URI, use an image tool that outputs Base64; pasting binary file contents here won’t produce a valid result.

Related tools