Skip to main content
Developer Tools

Base64 Encoder & Decoder

Pure Frontend No Upload UTF-8 Safe Instant Convert
( chars)
( chars)

Type text or a Base64 string above, then click a button to convert

Encode text to Base64 or decode Base64 strings free online. Supports UTF-8 (emoji & multilingual), URL-safe variant and MIME line wrap. 100% private — runs in your browser.

What is Base64?

Base64 is an encoding that represents binary data using 64 printable ASCII characters, commonly used to transmit data through text-only systems like email, URLs, JSON and HTTP requests. It is not encryption — anyone can decode it, so never use it to hide passwords or tokens.

Tips

UTF-8 Correctness

This tool encodes text as UTF-8 bytes before converting to Base64, so emoji, accented characters, and CJK scripts all round-trip correctly with no garbled output.

URL-safe variant

The + and / in standard Base64 get escaped in URLs. JWT and OAuth tokens use a variant with - and _. Enable this when the output will live in a URL or cookie.

Privacy

All encoding and decoding happens in your browser via btoa / atob and TextEncoder / TextDecoder. Nothing is sent to a server — safe for credentials and sensitive text.

Common Use Cases

API Credentials

Encode keys and tokens for the HTTP Authorization header

Data URIs

Encode small images as data: URIs to embed in HTML/CSS

JWT Inspect

Decode header and payload segments to view token contents

FAQ

Is Base64 encryption?

No. Base64 is encoding, not encryption — the result can be decoded by anyone instantly. Never use it to hide passwords, API keys, or any sensitive value.

Why does direct btoa throw errors?

The browser's built-in btoa only supports Latin-1 characters and throws on emoji or non-Latin scripts. This tool first converts text to UTF-8 bytes via TextEncoder, so any Unicode works correctly.

Is my data sent to your server?

No. All conversion happens in your browser — open DevTools → Network and you'll see zero requests. Nothing is logged or stored.