Base64 Decode — Base64 to Text

🔒 Runs in your browser — nothing is sent to a server

Base64 decode any string back to readable plain text in a single click. Paste a Base64-encoded value below and this tool returns the original UTF-8 text, so accented characters, emoji and international scripts decode correctly. The whole process runs 100% inside your browser — the Base64 string never leaves your device, nothing is uploaded, logged or sent to any server. Bookmark it as a quick base64 decoder for copy-pasted snippets from APIs, JWTs, email headers or HTML data URIs.

Two-pane view: input and output side by side
Copied!

When to use a Base64 decoder

Developers reach for a Base64 decoder many times a day: inspecting a JWT payload pulled from `Authorization: Bearer …` headers, reading an email MIME part, extracting text from a `data:` URI in HTML or CSS, debugging an API that returns base64-wrapped blobs, or turning a base64-encoded configuration value from Kubernetes Secrets back into something a human can read. Running the decode in a trustworthy, offline-first page is the fastest and safest way to check what a Base64 string actually contains before acting on it.

How Base64 to text decoding works

Base64 groups three bytes into 24 bits and splits them into four 6-bit indexes into a 64-character alphabet. Decoding reverses the process: each four Base64 characters become three bytes, padding characters (`=`) signal that the final group is shorter than three bytes, and the resulting byte stream is then interpreted as UTF-8 text. This page performs all of that in the browser using the built-in `atob` function and the `TextDecoder` API, so there is no network round-trip and no dependency on a server.

Examples

Input
SGVsbG8sIFdvcmxkIQ==
Output
Hello, World!
Base64 to text — classic Hello World
Input
aHR0cHM6Ly9mcmVlLWNvbnZlcnRlci5vbmxpbmU=
Output
https://free-converter.online
Decode base64 string containing a URL
Input
YmFzZTY0IGRlY29kZSBleGFtcGxl
Output
base64 decode example
Base64 decode online — live keyword example
Input
8J+MjSBmcmVlLWNvbnZlcnRlcg==
Output
🌍 free-converter
Base64 to ASCII-safe Unicode output

FAQ

How do I decode a Base64 string to text?

Paste your Base64 string into the input box above — this tool will instantly decode it to plain UTF-8 text in the output pane. No button press, no upload, no signup. To decode programmatically, use `atob()` in the browser, `Buffer.from(str, "base64").toString("utf-8")` in Node.js, or `base64.b64decode(str).decode("utf-8")` in Python.

What is Base64 and why is it used?

Base64 is an encoding scheme that represents binary data using 64 ASCII characters (A–Z, a–z, 0–9, +, /). It was designed to move binary content safely through text-only channels such as email headers, JSON payloads, data URIs and JWT tokens. Base64 is not encryption — it is easily reversible and provides no confidentiality.

How is Base64 decode different from Base64 to text?

Base64 decode is the low-level operation of turning the Base64 alphabet back into raw bytes. "Base64 to text" is a specific use of that operation where the raw bytes are then interpreted as a UTF-8 string. This page does both steps in one go and returns a clean, readable string.

Why does my decoded Base64 string look garbled?

Usually because the original bytes are not text at all — for example an image, a PDF, a compressed archive or an encrypted blob. Base64 to ASCII only makes sense when the source was actual text. If you see replacement characters or mojibake, your Base64 probably encodes binary data rather than a string.

Is my data safe when I decode base64 online here?

Yes. This Base64 decoder runs entirely in your browser using the native `atob` and `TextDecoder` APIs. Your Base64 input and the decoded text stay on your machine — nothing is uploaded, no server-side logging happens, and there is no account or history. Safe for API keys, JWTs, tokens and confidential payloads.

Can I decode URL-safe Base64 (base64url)?

Yes, with one small step. URL-safe Base64 replaces `+` with `-` and `/` with `_` — common in JWT tokens and OAuth. Before pasting, swap `-` back to `+`, `_` back to `/`, and add `=` padding until the length is a multiple of four. Then this decoder will convert it to text.

Glossary

Base64

A binary-to-text encoding scheme that maps groups of three bytes into four ASCII characters drawn from a 64-character alphabet. Base64 is used anywhere binary data must travel through a text-only transport — email attachments (MIME), JSON and XML payloads, data URIs in HTML/CSS, and token formats such as JWT. Base64 is not encryption.

Base64 decoder

Any tool or function that reverses Base64 encoding — taking the ASCII alphabet back to the original bytes. A Base64 decoder can return the decoded bytes as plain text (when the source was UTF-8) or as raw binary. This page is a text-oriented Base64 decoder running fully in the browser.

UTF-8

The dominant Unicode encoding on the web, using 1–4 bytes per character. When decoding Base64 to text you almost always want UTF-8, because modern APIs, JSON payloads and web pages store strings in that encoding. This tool interprets the decoded bytes as UTF-8, so emoji and non-Latin scripts render correctly.

base64url

A URL- and filename-safe variant of Base64 defined in RFC 4648. It uses `-` and `_` in place of `+` and `/` and typically drops `=` padding. base64url is the encoding used inside JWT tokens, OAuth state parameters and many modern web APIs. To decode base64url here, first swap those two characters back and restore padding, then paste.

Padding

The `=` characters appended to a Base64 string so its length is a multiple of four. Padding tells the decoder how many bytes the last group represents. Some producers (especially in URLs) strip padding; before decoding such input here, add enough `=` to reach a multiple-of-four length.

Related tools