Base64 Encoder / Decoder

Encode plain text to Base64 or decode Base64 back to text. Supports Unicode.

How it works

Select Encode or Decode mode. In Encode mode, paste any plain text (including Unicode and emoji) and click Encode — the tool uses btoa() with URI encoding to handle the full Unicode range. In Decode mode, paste a Base64 string and click Decode to recover the original text. The tool uses atob() with URI decoding for Unicode support. Nothing leaves your browser.

Frequently asked questions

What is Base64 encoding?

Base64 converts arbitrary bytes into a safe ASCII character set (A–Z, a–z, 0–9, +, /). It is used to embed binary data in JSON, HTML, email, and HTTP headers where only plain text is allowed.

When should I use Base64?

When embedding binary data (images, files, cryptographic keys) in JSON payloads, encoding JWT payloads, creating data URIs for inline images, or sending attachments via email (MIME encoding).

Does Base64 compress data?

No — Base64 increases data size by approximately 33%. It is an encoding scheme, not a compression algorithm. Use gzip or brotli for size reduction.

Is Base64 secure?

No. Base64 is trivially reversible and provides no security whatsoever. It is encoding, not encryption. Use AES or RSA for encryption, and bcrypt/argon2 for password hashing.