Base64 to Text Converter: Decode Base64 Back to Readable Text
A Base64 to text converter reverses the encoding in two steps: it turns the Base64 string back into raw bytes, then reads those bytes as UTF-8 text. Paste the string with Decode text or file selected and the text appears as you type. When the output looks wrong, the cause is almost always one of the four problems below.
What the conversion actually does
Base64 packs every 3 bytes into 4 printable characters drawn from A-Z, a-z, 0-9, + and /. Decoding unpacks those 4 characters back into the original 3 bytes exactly — the process is lossless.
Turning bytes into text is a second, separate step, and the converter assumes UTF-8, which is right for nearly everything on the modern web. Other encodings show up in recognisable ways. Latin-1 text loses its accented letters to �: Y2Fm6Q== is "café" in Latin-1 and comes out as caf�. UTF-16 text decodes with an invisible NUL after every ASCII letter, so the copied result looks spaced out or gets cut short by the next program that reads it.
Four reasons decoded text looks wrong
Wrong padding. Valid Base64 has a length divisible by 4, padded with one or two "=" at the end. A string copied out of JSON or a log line often loses its padding; adding it back fixes the decode.
Base64url instead of standard Base64. JWTs and URL-safe payloads use "-" and "_" in place of "+" and "/", and usually drop padding entirely. Swap those two characters back before decoding.
Line breaks and whitespace. MIME-style Base64 wraps at 76 characters, and strings copied from emails or terminals pick up spaces. This converter strips all whitespace before decoding, but strict decoders do not: GNU base64 -d stops with invalid input at the first space inside the string.
It was never text. If the Base64 encodes a PNG, a PDF or a gzip stream, decoding to text gives binary noise. Check the first decoded bytes — a file signature like PK or %PDF tells you what you actually have.
Reading the output safely
If the output is a mix of readable fragments and �, you are probably looking at a binary format that contains some text, such as a PDF or a ZIP-based DOCX. Use Decode and download file instead, which saves the bytes untouched instead of forcing them through a text decoder.
Payloads pulled from logs and URLs are often session tokens or customer records. This converter decodes them inside the page, so the string never reaches a server you do not control.
Frequently asked questions
Why does my decoded text end with strange characters?
Usually an extra character came along with the string, such as a closing quote or the first letter of the next field, or the end was cut off. Either way the last group of four characters decodes into different bytes. Check that the length is a multiple of 4 after trimming whitespace.
Can any Base64 string be turned into text?
Only if the underlying bytes are text. Encoded images or compressed data decode successfully but display as unreadable binary.
Can I paste URL-safe Base64 or a data: URI?
Yes. Before decoding, the converter turns `-` and `_` back into `+` and `/`, adds missing `=` padding, strips a `data:…;base64,` prefix and ignores line breaks, so JWT segments and data URIs can be pasted as they are.