Base64 Decoder

Decode Base64 strings back to readable plain text in your browser.

What Does This Tool Do?

This tool decodes Base64-encoded strings back into their original plain text form. Base64 encoding is used throughout the web — in JWT tokens, data URIs, email MIME encoding, HTTP Basic Authentication headers, and configuration files that store binary data as text. When you encounter an opaque Base64 string and need to see what it contains, this decoder reveals the original content instantly. It correctly handles UTF-8 encoded text, so international characters, accented letters, and symbols are restored accurately. The decoding runs entirely in your browser with no data transmitted to any server.

How to Decode Base64

  1. Paste the Base64 string — enter the encoded text into the input area. You can also drag and drop a file containing Base64 data.
  2. Verify the mode — Base64 Decode is preselected. Use the dropdown to switch to encoding mode if needed.
  3. Click Convert — the tool decodes the Base64 input and shows the original text in the result panel.
  4. Copy or download — copy the decoded text or save it as a file.

Where You Encounter Base64 Encoded Data

Base64 strings appear in many everyday development scenarios. JSON Web Tokens (JWTs) consist of three Base64URL-encoded segments separated by dots — decoding the middle segment reveals the token's payload claims. Data URIs in HTML and CSS embed resources as Base64 after a prefix like "data:image/png;base64,". Email systems encode attachments and non-ASCII message bodies using Base64 via MIME encoding. HTTP Basic Authentication headers contain the username and password pair encoded as Base64. Source maps, certificate files (PEM format), and some API responses also use Base64 to embed binary data within text-based formats. Having a quick decoder available saves time when inspecting, debugging, or extracting this data.

Frequently Asked Questions

What happens if the input is not valid Base64?

The tool will display an error message indicating that the input could not be decoded. Common causes include trailing whitespace, line breaks within the encoded string, or characters outside the Base64 alphabet (A-Z, a-z, 0-9, +, /, and = for padding). Trim your input and remove any line breaks before decoding.

Can I decode Base64URL format (used in JWTs)?

Standard Base64 and Base64URL differ slightly: Base64URL replaces + with - and / with _, and omits padding. For most JWT segments, standard decoding works after replacing those characters. If decoding fails, try replacing - with + and _ with / in your input, then add = padding to make the length a multiple of 4.

Can this decode binary files like images?

This tool decodes Base64 to text. If the original data is a binary file (such as an image or PDF), the decoded output will appear as garbled characters since it is being interpreted as UTF-8 text. For binary data, use a dedicated Base64-to-file conversion tool.

Is my decoded data stored or logged anywhere?

No. The decoding happens entirely in your browser using JavaScript. No data is sent to any server, stored in any database, or logged in any analytics system. Your input and output remain completely private on your device.