Base64 Encode / Decode

Convert text or files to Base64 and back — UTF-8 safe, with URL-safe and data-URI output, and one-click decode into a downloadable file. Everything runs in your browser.

100% client-side. Your text and files never leave your device.
Text to encode
Base64 output

About the Base64 Encoder / Decoder

Base64 turns any data — text, images, fonts, binaries — into a plain-text string made of letters, digits, and a couple of symbols. That makes it safe to drop into places that only accept text: JSON payloads, data URIs in CSS or HTML, JWTs, email attachments, API keys, and config files. This tool encodes and decodes it instantly, both directions, for text and files, without sending anything to a server.

Because it runs entirely in your browser, you can safely encode or decode sensitive values — tokens, credentials, private keys — without pasting them into a site that logs what you submit.

What it handles

Tips

No account, no upload — encode, decode, copy or download.

Common questions

How do I decode a Base64 string?

Paste the string and the decoded result appears instantly, with UTF-8 handled correctly so accented characters and emoji survive. If the payload is a file, one click turns it back into a downloadable file.

How do I convert a file to Base64?

Drop the file onto the tool and copy the Base64 output, optionally as a ready-to-paste data URI for embedding images in CSS or HTML.

What is URL-safe Base64 and when do I need it?

Standard Base64 uses + and / characters that break inside URLs. URL-safe Base64 swaps them for - and _, which is what JWTs and web APIs expect. The tool outputs either flavor.

Is it safe to decode tokens and secrets in an online tool?

Only if the tool is local, and this one is. Encoding and decoding happen entirely in your browser, so the JWT payload or API credential you paste never travels over the network.

Why does my decoded Base64 look garbled?

Usually the payload is binary data (like an image) rather than text, or it was encoded with a different character set. Try the decode-to-file option for binary payloads, and confirm the source used UTF-8 for text.

Related tools