Skip to content

Base64 Decode

A base64 decode tool turns Base64 into the original UTF-8 string in your browser. This one also encodes, accepts URL-safe alphabet and missing padding, and never uploads the paste. Invalid Base64 is rejected next to the field rather than guessed.

Base64 is an alphabet for carrying bytes in text — email attachments, JWTs, data URLs. Decoding is not encryption and does not prove authenticity. Paste standard or URL-safe input; whitespace is stripped and padding is filled when it is missing. Encode uses TextEncoder so Hindi and emoji survive, unlike naive btoa on a JS string. Closing the tab drops the paste; we do not write it to localStorage.

The India-first example is a labelled FAKE JSON object with a Chennai city and a rupee amount. It is a sample, not a secret. Use Decode as the default; switch to Encode when you need to produce Base64, optionally URL-safe for query strings.

Base64 workspace

Decode UTF-8

Paste standard or URL-safe Base64. Padding is optional; whitespace is stripped. Output is UTF-8 text.

Decoded text

Decoded UTF-8 text will appear here.

How does the Base64 Decode work?

  1. 1. Paste Base64 or plain text

    Decode is the default: paste standard or URL-safe Base64. Switch to Encode to turn UTF-8 text into Base64. Load example fills a labelled FAKE Chennai sample. Nothing is uploaded.

  2. 2. Convert in the browser

    Decode uses atob after normalising -/_ and padding, then TextDecoder for UTF-8. Encode uses TextEncoder then btoa. The URL-safe checkbox (encode only) replaces +/ and strips padding.

  3. 3. Read the in-page error if it fails

    Invalid alphabet, truncated length, or broken padding shows next to the input. The tool does not guess missing characters or treat three-part JWTs as a special case — use JWT Token Decrypt for compact JWE.

  4. 4. Copy the result

    Copy decoded text or encoded Base64. Closing the tab drops both fields. Treat decoded output as data you already had, not as a decrypted secret.

Questions about Base64 Decode

Does this base64 decode tool upload my text?
No. Decode and encode run in this browser tab with TextDecoder and TextEncoder. There is no account, no paste-bin, and no server-side converter. We do not write the paste to localStorage. Closing the tab drops both the input and the output. Hosting logs may show that you opened this URL; they do not contain the string you pasted.
What is the difference between standard and URL-safe Base64?
Standard Base64 uses + and / and pads with =. URL-safe Base64 uses - and _ and often omits padding so the string can sit in a query parameter. This base64 decode tool accepts both on Decode: it maps -/_ back to +/ and restores padding when the length is 2 or 3 mod 4. On Encode, tick URL-safe to emit the -/_ form without padding.
Can I encode as well as decode on this page?
Yes. Decode is the default because the page targets base64 decode. Switch to Encode to turn UTF-8 text into Base64 in the same tab. There is no second URL. The conversion still runs locally; nothing is uploaded either way.
Why did base64 decode fail?
The alphabet must be A–Z, a–z, 0–9, +, /, or URL-safe - and _. Length after padding must be a multiple of 4; a leftover single character is invalid. Whitespace is stripped, but other symbols are not. The error appears next to the input rather than failing silently. If you pasted a compact JWE (five parts) or a signed JWT (three parts), use JWT Token Decrypt or a JWS debugger instead of this page.
Does this base64 decode tool support Unicode and Hindi?
Yes. Encode runs TextEncoder (UTF-8) before Base64, and Decode runs TextDecoder after. Naive btoa on a JavaScript string breaks on code points above 255; this page does not do that. Devanagari, Tamil, and emoji round-trip. If the bytes are not UTF-8, Decode still emits replacement characters rather than crashing the tab.
Is the output a file download?
No. Decoded text and encoded Base64 appear in the page so you can copy them. There is no countdown download button and no zip. If you need a binary file (an image from a data URL), copy the text and handle the bytes in your own tool — this page is a UTF-8 text converter.
Do you store the paste after I close the tab?
No. The workspace is in-memory only. We do not write Base64 or plaintext to localStorage, cookies, or Page Utils servers. That is the same privacy rule as JSON Formatter and UUID Generator on this hub. JWT Token Decrypt stays ad-light separately because it handles keys; this base64 decode page is not a secret vault.
Is Base64 encryption?
No. Base64 is encoding: anyone can reverse it with a base64 decode tool. Do not treat encoded text as a password, an access token vault, or a way to hide PII. If you need confidentiality, use real encryption (for compact JWE, the live JWT Token Decrypt page unwraps tokens locally). Encoding only makes bytes safe to paste into JSON, XML, or a URL.

These tools run in your browser. Page Utils does not store, upload, or write to localStorage the keys, tokens, or text you paste. Results are a convenience aid, not legal, tax, or security advice.