Skip to content
toolsvine

Base64 Decoder

Decode Base64 back to readable text — UTF-8 safe, with clear errors.

Processed locally – files never leave your device

Decoded in your browser as UTF-8, so emoji and Bangla come back correctly.

Next: try Base64 Encoder — Encode text to Base64 (UTF-8 safe).

Got a block of Base64 — from an email header, an API response or a data URI — and need the original text back? This free Base64 decoder reverses it in your browser, correctly restoring UTF-8 characters such as emoji and Bangla that sloppy decoders turn into mojibake.

If the input is not valid Base64, you get a clear message saying so, instead of garbled output. To encode text in the first place, use the Base64 Encoder. If the decoded text turns out to be structured data, the JSON Formatter will make it readable.

How to use

  1. Paste your Base64 text into the input box above.
  2. Click Decode. The original text appears in the output box below.
  3. If the input is invalid, a plain message explains the problem — fix the text and try again.
  4. Use Copy to copy the decoded text, or Clear to start over.

Why use Toolsvine

Decoding is often done on sites that upload your pasted text to a server — risky when that text is a token, a config snippet or a private message. Toolsvine decodes locally in your browser, so nothing you paste ever leaves your device, and it costs nothing to use.

How Base64 decoding works

Decoding reverses the encoding step: every four Base64 characters are turned back into three bytes. The decoder reads each character's 6-bit value from the Base64 alphabet (A–Z, a–z, 0–9, +, /), joins them into 24-bit groups, and splits each group back into bytes. Equals signs (=) at the end are padding, and tell the decoder how many bytes the final group really held.

Why UTF-8 matters

Base64 encodes bytes, not characters. English text is one byte per character, but Bangla letters, accented characters and emoji take two to four bytes each in UTF-8. A decoder that treats the bytes as Latin-1 mangles them; this tool decodes the bytes as UTF-8, so “আমি” and “🌍” come back exactly as they were.

What counts as valid Base64?

RuleDetail
AlphabetOnly A–Z, a–z, 0–9, +, / (or -, _ for URL-safe)
LengthTotal length must be a multiple of 4 (after padding)
PaddingAt most two = signs, only at the very end
WhitespaceSpaces and line breaks are ignored

Text that breaks these rules — a stray character, a missing chunk, or padding in the middle — is not valid Base64, and this tool says so plainly instead of guessing. Common culprits are a copied string with a character cut off at the end, or a URL-safe string (- and _) pasted into a standard decoder.

Frequently asked questions

Is my pasted text uploaded anywhere?

No. Decoding runs entirely in your browser. Nothing you paste leaves your device, and the tool works offline after the page loads.

Why does it say my Base64 is invalid?

Usually a character was lost while copying, or the string uses URL-safe characters (- and _) that standard Base64 does not allow. Check that the length is a multiple of four and that padding (=) appears only at the end.

Why do I see weird symbols instead of Bangla or emoji?

That happens when a decoder reads UTF-8 bytes as Latin-1. This tool decodes as UTF-8, so Bangla, accented letters and emoji should come back correctly — if they don't, the original encoding may have been broken before you received it.

Can I decode a data URI or an image?

This tool decodes Base64 to text. For a data URI, paste only the part after the comma (after “base64,”). Decoding an image's bytes as text will show binary garbage — that is expected, not an error.

Does whitespace in the input matter?

No. Spaces, tabs and line breaks are ignored, so you can paste Base64 that was wrapped across several lines in an email or a document.

Related tools

More in this category: Encoders, Decoders & Ciphers →