Test valid Base64, Chinese UTF-8, incomplete bytes and invalid text to separate format errors from encoding problems.
Jump to the interactive test ↓
Two separate checks: format and text
First identify the source format. A string's appearance does not prove that it is encoded. This tool decodes UTF-8 text; it is not an image decoder or a general file viewer.
Base64 represents bytes with characters. UTF-8 defines how text is represented as bytes. Recovering bytes successfully does not mean that those bytes are readable UTF-8.
Start with known-good examples
SGVsbG8= decodes to Hello. The hexadecimal sequence e4 b8 ad e6 96 87 decodes to 中文 in UTF-8: six bytes, with two hexadecimal digits per byte. Spaces here are separators.
Run both valid examples below before trying your own data. If these work but your input fails, inspect its source and completeness. Repeating the same failed input does not fix missing information.
Three failures with different causes
e4 b8 a has an odd number of hexadecimal digits: an incomplete final byte. Retrieve the complete original instead of guessing a trailing digit. %%% contains invalid Base64 characters; verify the format and field you copied.
/w== is valid Base64 for the byte FF, but FF cannot begin valid UTF-8 text, so this tool rejects it. The source may be binary data or another text encoding. Do not fix this by deleting characters; inspect the original file and producer.
Know when to stop guessing
For Big5 or GBK files, open the original in a tool that explicitly supports that encoding. If replacement characters such as � have already appeared, information may have been lost. This page does not promise automatic encoding detection or file repair.
Base64 is not encryption. Report issues with a minimal non-sensitive sample, the selected format and expected text. Never post credentials, API keys or customer documents. Browser error wording may vary; our fixtures record successful output or rejection rather than a browser-specific message.
Recorded test results
Recorded using this site's installed opencc-js 1.4.1 and native UTF-8 decoding. These are regression fixtures, not language-quality ratings. Dependency changes may alter future results.
On narrow screens, scroll the table sideways to view all columns.
| Case / mode | Input | Observed output |
|---|---|---|
Valid Base64: recover Hellobase64 decode | SGVsbG8= | Hello |
Valid UTF-8: recover 中文hex decode | e4 b8 ad e6 96 87 | 中文 |
Error: an incomplete bytehex decode | e4 b8 a | Rejected (format or UTF-8 error) |
Error: invalid Base64 charactersbase64 decode | %%% | Rejected (format or UTF-8 error) |
Decodable format, invalid UTF-8 textbase64 decode | /w== | Rejected (format or UTF-8 error) |
Try the actual tool
The button runs the current local engine. You can edit the example (up to 10,000 characters). No text is uploaded or saved; dictionaries download on demand.
Method, sources and corrections
This article and implementation were prepared with AI assistance and checked against local executable examples. No independent language-expert review is claimed. The examples are reproducible; judgments about names, style and intent still require a person familiar with the original.
Report a reproducible error (remove private information first)