What Base64 does
Convert text, Unicode, images, and local files with standard Base64 or Base64URL. Choose padding and character-set options, process each line separately, preview decoded images, and download binary output without uploading your data.
What Base64 encoding and decoding actually do
Base64 converts binary bytes into printable text by representing every three input bytes with four characters. It is useful when an API, email, configuration file, or HTML document can safely carry text but not arbitrary binary data. Base64 is encoding, not encryption: anyone who receives the value can reverse it.
Hello, Base64 → SGVsbG8sIEJhc2U2NA==Unicode text is converted to bytes before Base64 is applied.Standard Base64 compared with Base64URL
| Variant | Alphabet | Padding | Common uses |
|---|---|---|---|
| Base64 | A-Z a-z 0-9 + / | Usually keeps = | Files, email, API payloads |
| Base64URL | A-Z a-z 0-9 - _ | Often omitted | JWT, OAuth, URL parameters |
Why decoded Base64 can look corrupted
Base64 restores bytes but does not record the character encoding that created them. Modern web content normally uses UTF-8, while older systems may use ASCII, ISO-8859-1, or UTF-16LE. Choose the original character set instead of encoding the broken result again. This tool reports invalid alphabets, padding, and malformed UTF-8 explicitly.
Working with text, images, and files
Paste text for an immediate conversion or drop a file to encode its local bytes. A decoded data URI retains its MIME type, so supported images can be previewed and binary output can be downloaded. Base64 adds roughly 33% to the original byte size; direct binary upload is usually better for large files.
# Encode on Linux or macOS
printf '%s' 'hello' | base64
# Decode
printf '%s' 'aGVsbG8=' | base64 --decodeCommon development workflows
Use Base64URL when inspecting JWT segments, remember that Kubernetes Secrets are encoded rather than encrypted, open the Base64 image converter for image-specific work, or connect multiple transformations with the data pipeline.
Related guides and troubleshooting
- Why Base64 decoding produces garbled textTrace UTF-8, legacy charset, and replacement-character failures from the original bytes.
- Base64 vs Base64URL and JWT paddingUnderstand the URL-safe alphabet, omitted equals signs, and the verification boundary.
- Java 8 Base64 for text, URLs, and filesUse the supported Java 8 APIs with reproducible output.
Common uses
- Encode UTF-8 text, API payloads, data URIs, and local files
- Decode Base64 logs, attachments, images, and Kubernetes Secret values
- Convert Base64URL values used by JWT, OAuth, and URL parameters
- Process newline-separated values and diagnose invalid characters or padding
Privacy and limitations
Text and file bytes are processed entirely in this browser tab. ParseNest never receives the input, decoded content, or result.
Always validate security-sensitive output in the authoritative application or platform.
Frequently asked questions
Is Base64 encryption?
No. Base64 is reversible encoding for transporting bytes as text. It does not provide confidentiality or authentication.
Does this decoder support Chinese and Unicode?
Yes. UTF-8 is the default, and ASCII, ISO-8859-1, and UTF-16LE are available for data created by older systems.
What is the difference between Base64 and Base64URL?
Base64URL replaces + with - and / with _, making the value safer in URLs. JWT and OAuth commonly omit trailing = padding as well.
Why does Base64 sometimes end with = or ==?
Padding completes the final four-character block when the source byte length is not divisible by three. Many Base64URL consumers allow padding to be omitted.
Can I encode or decode a file?
Yes. Drop a file to encode its bytes. Decoded data URIs preserve their MIME type, supported images can be previewed, and binary results can be downloaded.
Why is the Base64 result larger than the original?
Every three input bytes become four Base64 characters, so the encoded value is about 33% larger before line breaks or a data URI prefix.
Does ParseNest upload my content?
No. Conversion uses browser APIs on your device. The page works without sending the input or result to the ParseNest server.