🔗 Base64 & URL Encoder/Decoder

Encode or decode text as Base64 or URL-safe strings, with full support for special characters and emojis. Everything runs locally in your browser.

Encode a file

Pick any file — an image, a PDF, a certificate — and get its Base64 straight into the box above. Useful for embedding a small asset in CSS or JSON, or for pasting a key into a config file. The file is read by your browser; nothing is uploaded.

What is Base64 and URL encoding?

Base64 converts arbitrary text or binary data into a string of printable ASCII characters. It's commonly used to embed data (like images or tokens) inside JSON, HTML, or email, where raw binary or special characters wouldn't survive transport unchanged.

URL encoding (percent-encoding) replaces characters that aren't safe in a URL - such as spaces, `&`, or `?` - with a `%XX` escape sequence, so the string can be safely used as a query parameter or part of a URL path.

Base64 makes data bigger, not smaller. Three bytes become four characters, so an encoded file is about a third larger than the original. That is the trade for making binary safe to paste into text. It is worth it for a 2 KB icon in a stylesheet and a bad idea for a 2 MB photo — past a few hundred kilobytes you are usually better off linking to the file than embedding it.

Base64 is not encryption. Anyone can decode it in a second, including on this page. It hides nothing.

Other tools you might need next

See all Developer Tools tools, or browse every free tool on the site.