Home Text ToolsBase64 Decoder

Base64 Decoder

Decode Base64 back into readable UTF-8 text.

Hello World
DecodedHello World

Paste Base64 and get the original text back. This is the counterpart to the Base64 Encoder — it decodes the A–Z, a–z, 0–9, + and / characters back into UTF-8 text, right in your browser.

Formula / method

Base64 → UTF-8 bytes → text

Examples

SGVsbG8gV29ybGQ=
Hello World
VXRpbEdlYXJz
UtilGears

How Base64 decoding works

Base64 packs binary data into 64 printable characters (A-Z, a-z, 0-9, plus + and /), turning every three bytes into four characters. Decoding reverses that: each group of four characters becomes three bytes, and trailing = signs mark padding where the original data did not fill a full group. This tool then interprets those bytes as UTF-8 text so accented letters and emoji come back intact.

Because it is a reversible encoding and not encryption, anyone can decode a Base64 string. It hides nothing; it only makes binary safe to travel through text-only channels like email headers, JSON, or data URIs.

Common uses and pitfalls

You will meet Base64 in JWT payloads, data: image URLs, email MIME parts, and API keys or config that embed binary blobs. Paste the string here to read what it contains. If decoding yields garbled characters, the source was probably raw binary (an image or a compressed file) rather than text, so it has no readable form.

Watch for URL-safe Base64, which swaps + and / for - and _; some strings also drop the = padding. To go the other way, use the matching Base64 encoder on UtilGears.

Where it's used

  • Reading the payload of a JWT (JSON Web Token) to inspect its claims
  • Decoding a data: URI to see the text or file it embeds
  • Inspecting a Base64-encoded config value from a YAML or JSON file
  • Reading an email MIME part that was Base64-encoded for transport
  • Checking what an API returned when it wraps binary in Base64

Real-world examples

  • Pasting SGVsbG8gV29ybGQ= returns "Hello World".
  • The middle segment of a JWT, once Base64-decoded, reveals the JSON claims such as {"sub":"1234","name":"..."}.
  • A data:text/plain;base64,VXRpbEdlYXJz URL decodes to "UtilGears".
  • If decoding produces garbled symbols, the source was usually raw binary (like an image), not text.

Did you know?

Base64 is named for its 64-symbol alphabet; because it packs every 3 bytes into 4 characters, the encoded text is always about 33% larger than the original data.

FAQ

Why does it say invalid?

The input must be valid Base64 (A–Z, a–z, 0–9, +, / and = padding). Extra spaces or other characters will fail to decode.

Related tools

Related guides