Free exact browser converter
Base64 to Text Converter
Decode Base64 or Base64url into UTF-8 text, including emoji and non-Latin characters. Invalid byte sequences produce a clear error.
Interactive tool
Convert Base64 to Text
Ready
Choose a clear output representation.
Detailed conversion guide
How to Convert Base64 to Text
Base64 decoding gives bytes, not characters. This page first restores the byte sequence, then decodes it as UTF-8. That second step is why 5L2g5aW9 becomes 你好 rather than byte-shaped mojibake.
Use this for Base64-encoded text from a UTF-8 API or configuration value. The output is plain text, never interpreted as HTML. The TXT download preserves the decoded text, including a leading UTF-8 BOM and original line endings.
| Input | Output | Meaning |
|---|---|---|
5L2g5aW9 | 你好 | Two Chinese characters |
SGVsbG8= | Hello | ASCII text |
8J+YgA== | 😀 | One four-byte UTF-8 character |
Decode UTF-8 After Base64 in JavaScript
The example uses known valid standard Base64. Fatal UTF-8 decoding rejects invalid text instead of inserting replacement characters.
const bytes = Uint8Array.from(atob("5L2g5aW9"), c => c.charCodeAt(0));
const text = new TextDecoder("utf-8", {
fatal: true, ignoreBOM: true
}).decode(bytes);When a Base64 Payload Is Not Text
Valid Base64 can contain images, compressed data, or text in another character encoding. For example, /w== is valid Base64 but its single FF byte is not valid UTF-8.
Use Base64 to Binary or Base64 to Hex when you need the original bytes. Base64 is reversible encoding and does not decrypt messages or verify signatures.
Related converters
Continue with exact representation converters
Choose the conversion that matches the representation you have.