Base64 Decoder — Free, Instant & Online

Decode Base64 strings back to plain text or download as original files. Supports URL-safe decoding, line-by-line mode, and real-time live decoding. Nothing is uploaded — all processing happens on your device.

Need to encode? Base64 Encoder →

How to Decode a Base64 String

  1. Paste your Base64 string — Paste the encoded text into the input field. With Live mode on, decoding happens instantly.
  2. Choose your options — Enable URL-safe decoding if your string uses - and _ instead of + and / (common in JWT tokens and URL parameters). Use line-by-line mode to decode multiple values at once.
  3. Copy or download — Copy the decoded output or download it as a .txt file.

How to Decode a Base64 File String

  1. Switch to the File tab — Click the File tab above the tool.
  2. Paste the Base64 string — Paste your encoded string, with or without the data URI prefix (data:image/png;base64,...). The tool detects the file type automatically.
  3. Decode and download — Click “Decode & Download File.” For images, a preview is shown before the file downloads automatically.

What is Base64 Decoding?

Base64 decoding reverses the encoding process — it converts a Base64 string back into its original binary data or text. No key or password is required. Base64 is an encoding scheme, not encryption, so decoding is straightforward: the encoded characters map directly back to the original bytes.

You’ll encounter Base64-encoded data in JWT tokens, email headers, API responses, HTML data URIs, and configuration files. This tool lets you instantly inspect what’s inside any Base64 string.

What is URL-Safe Base64?

URL-safe Base64 (Base64URL) replaces the standard + with - and / with _ to avoid conflicts with URL syntax. It’s commonly used in JWT tokens, OAuth access tokens, and any Base64 data embedded in URLs. Enable the URL-safe decoding option when you receive a “invalid Base64” error — your string likely uses URL-safe encoding.

Common Uses for Base64 Decoding

  • Inspect JWT tokens — Decode the header and payload sections to read the claims inside
  • Read API responses — Decode Base64-encoded data fields returned by REST APIs
  • Extract embedded images — Convert data URI strings back to downloadable image files
  • Debug email headers — Decode MIME-encoded subjects and attachment names
  • Decode configuration values — Read Base64-encoded secrets from environment variables or config files
FAQ

Frequently Asked Questions

Base64 decoding is the reverse process of Base64 encoding — it converts a Base64 encoded string back into its original form. The encoded string (made up of characters A-Z, a-z, 0-9, +, /) is translated back into the original binary data or text. This is essential for reading data that was encoded for transport through email, APIs, URLs, or data URIs in HTML/CSS.

Simply paste your Base64 encoded string into the input field. With live mode enabled (default), the decoded output appears instantly as you type or paste. If live mode is off, click the "Decode" button. The decoded text appears in the output field ready to copy or download. For encoded files (images, PDFs, etc.), use the File tab to decode and download the original file.

Yes. Switch to the File tab and paste the Base64 string (with or without the data URI prefix like "data:image/png;base64,"). Click "Decode & Download File" and the tool will reconstruct and download the original file. If the input includes a data URI prefix, the tool automatically detects the file type. For image files, a preview is shown before downloading.

URL-safe Base64 (Base64URL) uses - instead of + and _ instead of / to avoid conflicts with URL-reserved characters. When you enable URL-safe decoding, the tool automatically converts these URL-safe characters back to standard Base64 before decoding. Use this option when decoding JWT tokens, OAuth tokens, or any Base64 strings that came from URLs or query parameters.

Common causes: the input contains non-Base64 characters (spaces, line breaks, special characters), the string is incomplete or truncated, or it was encoded with URL-safe Base64 but you haven't enabled the URL-safe option. Try trimming whitespace, enabling URL-safe mode, or checking that the full Base64 string was copied. The error message will indicate the specific issue.

No. Base64 is an encoding scheme, not encryption. Decoding Base64 simply reverses the encoding — no key or password is needed. Anyone can decode a Base64 string. If the original data was encrypted before being Base64-encoded, decoding will give you the encrypted (still unreadable) data, not the original plaintext. Base64 provides data format conversion, not security.

When enabled, each line of your input is decoded independently. This is useful when you have multiple Base64-encoded values (one per line) that need to be decoded separately — for example, a list of encoded tokens, credentials, or configuration values. Each line produces its own decoded output on the corresponding line.

No. All decoding happens entirely in your browser using JavaScript. Your Base64 strings and decoded output never leave your device — nothing is uploaded, stored, or transmitted to any server. This makes the tool completely safe for decoding sensitive data like API keys, authentication tokens, or confidential content.

Yes. There is no enforced size limit — all processing happens locally in your browser. However, extremely large strings (encoding files over 50MB) may cause your browser to slow down depending on your device's memory. For typical use cases — decoding text, images, documents, and configuration data — the tool handles any practical size without issues.

Yes, completely free. No account required, no sign-up, no usage limits, no ads interrupting your workflow. Since all processing happens client-side in your browser, there are no server costs to cover.