Free Online Base64 Decoder

Batch decode Base64 strings to text, files, and images instantly

Instant Private Batch Mode ZIP Download Image Preview
Text
File
Image
Batch

Drag & drop multiple text files containing Base64 here

or click to select files (max 20)

Queue (0)
0 input chars
0 output chars
0 decoded bytes
Encoding: Standard
Decoded image preview
File decoded successfully!
0%

Need to Encode Instead?

Use our Base64 Encoder/Decoder tool for both encoding and decoding.

How to Use the Base64 Decoder

  1. Paste your Base64 string into the input field. This can be a simple encoded text, a data URI, or any valid Base64 sequence.
  2. Select the output mode — Text (for readable strings), File (for binary downloads), or Image (for image data URIs).
  3. Use Batch Mode to select multiple text files containing Base64 and decode them all at once into a ZIP file.
  4. Check URL-safe if your input uses - and _ instead of + and / characters.
  5. Click "Decode" to instantly convert the Base64 string back to its original form.
  6. Copy or download the decoded result using the buttons below the output.

Common Base64 Use Cases

  • Email attachments: MIME encoding uses Base64 to transmit binary files through email protocols.
  • Data URIs: Embed images, fonts, and other assets directly in HTML and CSS using Base64.
  • API responses: Many REST APIs return binary data as Base64 encoded strings in JSON responses.
  • Authentication tokens: JWT tokens contain Base64-encoded header and payload sections.
  • Database storage: Binary data stored in text-only database columns is often Base64 encoded.

What Is Base64 Encoding?

Base64 is a binary-to-text encoding scheme that represents binary data using 64 printable ASCII characters: uppercase letters (A-Z), lowercase letters (a-z), digits (0-9), plus (+), and forward slash (/). The equals sign (=) is used as padding when the input length is not a multiple of 3 bytes.

Base64 was originally designed to allow binary data to be safely transmitted through text-based protocols like email (SMTP) and HTTP. It increases the data size by approximately 33% but ensures that all characters in the encoded output are universally safe for transmission across different systems and protocols.

Base64 Character Set

RangeCharactersValues
A-Z26 uppercase letters0-25
a-z26 lowercase letters26-51
0-910 digits52-61
+ /2 symbols (or - _ for URL-safe)62-63
=Padding characterN/A

Frequently Asked Questions

Base64 decoding converts a Base64-encoded string back into its original format — whether that's plain text, a binary file, or an image. The encoding process takes binary data and converts it to a text representation using 64 ASCII characters; decoding reverses this by reading each group of 4 Base64 characters and converting them back into the original 3 bytes of data.

Absolutely. All decoding happens locally in your web browser using JavaScript's built-in atob() function. No data is ever transmitted to our servers. Your Base64 strings never leave your device, making this tool safe for decoding sensitive information like API keys, authentication tokens, or private documents.

Yes. If you switch to Image mode and paste a Base64 image string (with or without the data URI prefix like data:image/png;base64,), the decoder will render a preview and let you download the image file. This works with all common image formats including PNG, JPEG, GIF, WebP, and SVG.

Standard Base64 uses + and / characters which have special meaning in URLs. URL-safe Base64 (also called Base64url per RFC 4648) replaces + with - and / with _, making the output safe to use directly in URLs, query parameters, and filenames without additional encoding. Our decoder handles both formats — simply check the "URL-safe" option when decoding URL-safe Base64 strings.

If the decoded output appears as garbled characters, the original data was likely a binary file (image, PDF, ZIP, etc.) rather than plain text. Try using File or Image mode instead, which will let you download the binary content directly. Also check that your input is valid Base64 — it should only contain A-Z, a-z, 0-9, +, /, and = characters.
All decoding happens locally in your browser. No data is sent to any server.