DevToolbox

Base64 Encode / Decode

Base64 Encode / Decode: Paste text to encode it as Base64, or paste Base64 to decode it back to readable text. The conversion is UTF-8 safe (it handles emoji and non-ASCII characters) and runs entirely on your device — nothing is uploaded.

Data as of 2026-06-13.

How it works

Base64 represents arbitrary bytes using 64 printable ASCII characters (A–Z, a–z, 0–9, + and /), encoding every 3 bytes as 4 characters. It is commonly used to embed binary data in text formats such as JSON, data URIs, and email.

This tool first converts your text to UTF-8 bytes with the browser's TextEncoder, then encodes those bytes, so multi-byte characters like accents and emoji round-trip correctly. The URL-safe option swaps + and / for - and _ and drops the = padding, matching the Base64URL alphabet used in tokens.

Runs fully client-side in your browser. Source: published web standards (RFCs and the WHATWG/W3C specifications), as implemented by your browser. Verified 2026-06-13.

Frequently asked questions

Does this tool handle emoji and accented characters?

Yes. The input is encoded as UTF-8 before Base64 encoding, so characters outside ASCII — including emoji and accented letters — are preserved on both encode and decode.

What is the difference between standard and URL-safe Base64?

Standard Base64 uses + and / and pads with =. URL-safe Base64 (Base64URL) replaces them with - and _ and usually omits padding, so the value is safe to place in URLs and JWTs.

Is my text uploaded anywhere?

No. Encoding and decoding run entirely in your browser using the built-in btoa/atob and TextEncoder/TextDecoder APIs. Nothing is sent to a server.

Related tools

Last updated: 2026-06-13