Base64 Encode / Decode

Cmd/Ctrl+Enter saves this input to history.

Advertisement

Encode text to Base64 or decode Base64 back to text, instantly. Unlike a naive btoa() call, this handles full Unicode input — emoji, accented characters, anything outside plain ASCII — by encoding to UTF-8 bytes first, so round-tripping never corrupts multi-byte characters.

Frequently asked questions

Is this Base64 tool free to use?
Yes. It runs entirely in your browser — no signup, no data sent to a server.
Does it handle emoji and accented characters, or just plain ASCII?
Full Unicode. The browser's native btoa()/atob() only handle Latin1 and throw on anything outside that range, so encoding here routes through TextEncoder/TextDecoder first — that's what makes emoji, accented letters, and other multi-byte characters round-trip correctly.
Why does decoding fail with an error?
The input has to be valid Base64 — the right alphabet (A-Z, a-z, 0-9, +, /) and correct padding. Base64 copied with line breaks, URL-safe variants (using - and _ instead of + and /), or truncated text will fail to decode.
Is my data uploaded anywhere?
No. Encoding and decoding happen locally in your browser tab — nothing is sent to a server.

Read the full guide for this tool →

Related tools & guides

Part of Encoding & Decoding Tools

Advertisement