Home / Developer Tools / Base64 Encoder and Decoder
Free online tool

Base64 Encoder and Decoder

Encode UTF-8 text as standard Base64 or decode Base64 back to UTF-8 text, then copy the result. Runs in your browser.

Start using

Base64 Encoder and Decoder

Encode UTF-8 text as standard Base64 or decode Base64 back to UTF-8 text, then copy the result. Runs in your browser.

Base64 Encoder and Decoder

Provides two explicit actions: encode browser text as UTF-8 Base64, or decode Base64 bytes as strict UTF-8 text. It does not offer a character-encoding selector in this text tool; use the separate Base64 file decoder for arbitrary binary payloads.

Verified examples: Hello encodes to SGVsbG8= and decodes back to Hello. The text 你好 encodes to 5L2g5aW9 using UTF-8 and round-trips to the same Unicode characters.

Whitespace is removed from Base64 before decoding, so wrapped input such as SGVs followed by a line break and bG8= decodes as Hello. Malformed Base64 and decoded byte sequences that are not valid UTF-8 produce an error rather than replacement characters.

Encoding accepts at most 8,388,608 UTF-16 code units, and the UTF-8 bytes before Base64 encoding must not exceed 16 MiB. Decoding accepts at most 16,777,216 raw code units and at most 8,388,608 Base64 characters after whitespace removal. These are separate limits; UTF-16 length is not the UTF-8 byte count.

Conversion occurs locally in the browser and the result can be copied. Base64 is reversible representation, not encryption, hashing, compression or authentication; do not paste secrets merely because the output looks unreadable. Padding = characters may appear when the source byte count is not divisible by three.

Hello ↔ SGVsbG8=
🙂 ↔ 8J+Zgg==

For a direct round trip through this text tool, the UTF-8 input must be no more than 6 MiB: that produces at most 8 MiB of Base64. Longer encoded results can be decoded as bytes with the separate file decoder, subject to its limits.

Processing takes place locally in your browser.