Developer Tools
Base64 Encode / Decode
Encode and decode Base64 strings or files. Supports URL-safe Base64 (base64url).
Files processed in your browser
Your files never leave your device. No upload, no servers.
About Base64 Encode / Decode
Base64 Encode / Decode converts text or binary data to and from Base64 — the standard ASCII-safe encoding used to embed images in CSS, send binary data over text-only protocols, and pass values through URLs that don't tolerate special characters. Switch between Encode and Decode with a single click; toggle URL-safe Base64 (base64url) when you need a result that's safe inside a URL or filename.
The tool runs entirely in your browser. Text inputs are decoded with full Unicode (UTF-8) support, so emoji, accented characters, and non-Latin scripts encode and decode correctly. You can also pick a file from your device — its raw bytes are encoded directly without leaving your browser, useful for embedding small images as data URIs or inspecting how a file gets serialized.
Common uses include encoding small images for inline embedding in HTML or CSS, decoding the payload of a Base64-encoded API response, encoding credentials for HTTP Basic Auth (user:pass → Base64), generating data: URLs for prototypes, and inspecting Base64 fields inside JWTs, JSON Web Encryption envelopes, or webhook payloads. The decode-to-file action is handy when you receive a Base64 blob and want to save it back as the original binary.
Standard Base64 uses '+' and '/' characters and pads with '=', which causes problems in URLs and filenames. URL-safe Base64 (sometimes called base64url) replaces '+' with '-', '/' with '_', and drops the padding. Use the URL-safe toggle when working with JWTs, OAuth tokens, or anywhere the result needs to survive URL encoding intact.