Base64 Decode Online (Base64 Decoder)
Decode Base64 to readable text with Bytelify's free online Base64 decoder and Base64 to text converter. Paste a Base64 string and the decoded result appears instantly.
Decodes as you type. Handles Base64URL, missing padding, line breaks and data URIs automatically.
Waiting for Base64 input
Need to encode instead? Base64 Encoder
What is Base64 Decode Online (Base64 Decoder)?
A Base64 decoder converts Base64-encoded data back into its original bytes and, when those bytes represent text, shows that text in readable form. Base64 is an encoding scheme that represents binary data using 64 printable characters. It is widely used where only text is safe to send, including email (MIME), API payloads, data URLs and HTTP headers. For example, the Base64 string SGVsbG8sIFdvcmxkIQ== decodes to Hello, World!.
Base64 Decode Examples
| Base64 input | Decoded text |
|---|---|
| SGVsbG8= | Hello |
| VGVzdA== | Test |
| Qnl0ZWxpZnk= | Bytelify |
| SGVsbG8sIFdvcmxkIQ== | Hello, World! |
| SGVsbG8sIFdvcmxkISDwn5GL | Hello, World! 👋 |
How to Decode a Base64 String Online
- 1
Paste your Base64 string into the Base64 field.
- 2
Read the decoded text: It appears automatically as you type.
- 3
Copy the result with the Copy button.
- 4
Encode when needed: Type or edit plain text in the other field to see its Base64 output. Both fields are live, so there is no need to switch tools.
Example
SGVsbG8sIFdvcmxkIQ==Hello, World!The == at the end is padding, added because the original text's length wasn't a multiple of 3 bytes — this is the tool's own live output, not a hand-typed sample.
How to Decode Base64 in Code
If you need to decode Base64 inside an application or script, these are common approaches. All of them decode to UTF-8 text. JavaScript (browser) const b64 = "SGVsbG8sIFdvcmxkISDwn5GL"; const bytes = Uint8Array.from(atob(b64), c => c.charCodeAt(0)); const text = new TextDecoder("utf-8").decode(bytes); console.log(text); // Hello, World! 👋 Using atob() alone only handles Latin-1 text, which is why emoji and non-Latin scripts come out garbled. Decoding the bytes with TextDecoder fixes that. Python import base64 text = base64.b64decode("SGVsbG8sIFdvcmxkIQ==").decode("utf-8") print(text) # Hello, World! Linux and macOS terminal echo 'SGVsbG8sIFdvcmxkIQ==' | base64 -d PowerShell [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String("SGVsbG8sIFdvcmxkIQ=="))
What Is Base64 Encoding?
Base64 represents bytes using 64 characters: uppercase letters A-Z, lowercase letters a-z, numbers 0-9, and two symbols, + and /. The = character is used for padding. Standard Base64 processes data in groups of three bytes (24 bits) and writes each group as four Base64 characters. When the input is not a multiple of three bytes, one or two = characters are added so the output length is a multiple of four. That is why Base64 strings so often end in = or ==. The = or == at the end is padding. It is part of the encoding, not part of the original message. Because three bytes become four characters, Base64 output is roughly one third larger than the original data.
Common Uses of a Base64 Decoder
Software development and debugging: Decode Base64 values found in logs, configuration files, test data and code samples to read them quickly.
API development and testing: Base64 values often appear in API responses and request payloads. A decoder lets you inspect text values during development and testing. Some APIs use Base64URL instead of standard Base64, so check the format first (see below).
Email and MIME data: Email systems use Base64 to carry attachments and other content as text. You can decode text segments here, but the tool does not rebuild downloadable files or attachments.
Data URLs and web development: Base64 data can appear in data URLs inside HTML or CSS. If the payload is readable text, you can paste it here to inspect it.
Unicode and international text: Base64 can represent UTF-8 bytes for accented letters, non-English scripts and emoji. This decoder converts them back to the intended characters instead of being limited to basic ASCII.
Learning how encoding works: Students and developers can use it to see how text maps to Base64 and why encoding is not the same as encryption.
Base64 Decoder vs. Base64 Encoder
This page does both. You can also use the dedicated Base64 Encoder.
Purpose: Base64 Decoder: Converts Base64 back to its original data. Base64 Encoder: Converts data into Base64.
Input: Base64 Decoder: Base64-encoded text. Base64 Encoder: Plain text.
Output: Base64 Decoder: Decoded text, when the data is valid text. Base64 Encoder: Base64 string.
Common use: Base64 Decoder: Inspecting encoded values. Base64 Encoder: Preparing data for text-based formats.
Base64 vs. Base64URL
Base64URL is a URL-safe variant of Base64. It replaces + with - and / with _, and it often omits the = padding. JSON Web Tokens (JWTs) use Base64URL. This tool expects standard Base64. If you have a Base64URL string, replace - with + and _ with /, then add = padding until the length is a multiple of four. To inspect a JWT directly, use the JWT Decoder.
Base64 Is Not Encryption
Base64 is an encoding, not encryption. It uses no secret key and offers no protection. Anyone can decode a Base64 string back to the original data. Do not rely on Base64 to hide passwords, API keys or personal information. Use proper encryption and security controls for sensitive data.
Base64 Decode UTF-8: Does It Work With Unicode and Emoji?
Yes. Text with Unicode characters is first converted to bytes using an encoding such as UTF-8, and those bytes are then written as Base64. To read it back correctly, the decoder must interpret the bytes as UTF-8. Bytelify's decoder does this automatically, so emoji, accented characters and non-Latin scripts round-trip correctly. A plain atob() call in JavaScript does not, because it only handles Latin-1. Related tools: UTF8 Decode and URL Decoder.
Troubleshooting: Why Won't My Base64 Decode?
If you get an error or unreadable output, check these common causes:
Incomplete string: Make sure you copied the whole value, including any trailing = characters.
Missing padding: Some systems strip =. This tool decodes most unpadded strings, but stricter decoders do not, so add padding until the length is a multiple of four if the value is used elsewhere.
Base64URL characters: If the string contains - or _, it is Base64URL. Convert it to standard Base64 first.
Line breaks or spaces: This tool ignores spaces and line breaks, but some decoders and APIs do not. Remove stray whitespace added when copying if you plan to use the value elsewhere.
Binary data, not text: If the original data is an image, PDF or other file, the result will look like random symbols. This tool decodes to text only.
Wrong text encoding: If the original text was not UTF-8, accented characters may display incorrectly.
Decode Base64 Online with Bytelify
Use Bytelify's free Base64 decoder to turn encoded strings into readable text in seconds. Paste your input, check the result and copy it into your workflow. It works for debugging, API testing, learning and Unicode text, with nothing to install and nothing sent to a server.
Frequently Asked Questions
Common questions about Base64 Decode Online (Base64 Decoder).
A Base64 decoder converts Base64-encoded data back into its original bytes and shows readable text when the data is text. Developers use it for debugging, API testing and inspecting encoded values.