Developer tools

Base64 encoder & decoder

Convert readable text and Base64 without silent character replacement.

UTF-8 text

Standard Base64 with padding. UTF-8 text, up to 488.3 KB. Unpaired surrogates are rejected rather than replaced.

Result

No result yet. Enter text and choose Encode.

Encoding text

Text is encoded as UTF-8 bytes, then written with the standard Base64 alphabet A–Z a–z 0–9 + / and padding. An emoji or accented character can occupy several bytes, so the Base64 length is based on bytes, not visible characters. Unpaired UTF-16 surrogates are rejected rather than being replaced with a question-mark character.

Decoding Base64

Standard Base64 is required. Spaces and line breaks are ignored so wrapped values can be pasted. Other characters, padding in the wrong place, an impossible length and non-zero trailing bits are reported. The decoded bytes must be valid UTF-8 text; binary data and URL-safe Base64 (- and _) are outside this workflow.

Example

Example

Two Trees 🌳 encodes toVHdvIFRyZWVzIPCfjLM=. Decoding that value returns the same text and emoji.

Limits and privacy

Up to 500,000 UTF-8 bytes when encoding, and a decoded result of the same maximum. Text and output are processed in this tab; nothing is uploaded, stored or placed in analytics. The result can be copied or downloaded as a .txt file.