{ } JSON Workbench0 network requests. Check DevTools

"Base64 Decode":{ }

Paste Base64 (standard or URL-safe, padded or not) and get the decoded text instantly; JSON renders with syntax colors. Runs 100% in your browser: zero network requests.

What is Base64 decoding?

Base64 decoding converts the 64-character text representation back into its original bytes, then (here) interprets those bytes as UTF-8 text. It's how you inspect encoded API payloads, data URIs, basic-auth headers, and config secrets, remembering that Base64 is an encoding anyone can reverse, not encryption.

Edge cases & gotchas

  • URL-safe Base64 (-/_, no padding) fails in naive atob() decoders. This tool normalizes it automatically.
  • Missing padding is repaired before decoding.
  • Binary output (images, hashes) isn't valid UTF-8 text and is reported as an error rather than shown as garbage.

How to use

  1. Paste Base64 into the Input pane: standard or URL-safe alphabet, padded or not.
  2. The decoded text appears instantly; JSON payloads render with syntax colors.
  3. Whitespace and line breaks in the input are ignored (common in copied blocks).
  4. Copy or download the result.

Examples

Decode to text

Input
aGVsbG8=
Output
hello

URL-safe, unpadded (JWT-style)

Input
Pz8-Pg
Output
??>>

Decode JSON

Input
eyJhIjoxfQ==
Output
{"a":1}

FAQ

Which Base64 variants are supported?

Standard (+ /) and URL-safe (- _), with or without = padding, and with whitespace/line breaks anywhere.

Why do I get an error about UTF-8?

The input decoded to bytes that aren't valid UTF-8 text, likely binary data (an image, a hash). This tool targets text/JSON payloads.

Can I decode a JWT with this?

You can decode individual segments, but the JWT Decoder splits all three parts and pretty-prints header + payload in one step.

Is my data uploaded?

No. Decoding runs entirely in your browser. Verify zero network requests in DevTools.

Related tools