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.
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
URL Encoder and Decoder
Percent-encode text for URLs or decode it back, with component and full-URL modes. Runs in your browser.
Developer tools
JWT Decoder
Decode a JWT to read its header and payload, with expiry and issued-at shown as dates. Local only — no signature verification.
Developer tools
JSON Formatter
Beautify, validate or minify JSON in your browser — with clear error messages. Nothing is uploaded.
Developer tools
Reverse Text
Flip text character by character — emoji-safe, with an option to reverse each line separately.
Text tools
Text Case Converter
Convert text between UPPERCASE, lowercase, Title Case and Sentence case — with correct handling of č, ć, š, đ, ž.
Text tools
Text Difference Checker
Compare two texts line by line and see exactly which lines were added, removed or unchanged.
Text tools