Encode text or files to Base64, or decode Base64 strings back to text. Supports standard Base64 and URL-safe Base64url (no +, /, = padding). Free, instant, private — nothing uploaded.
Free, no sign-up — one of the SaaSQuickStart Developer tools.
Base64 represents binary data using 64 printable ASCII characters (A–Z, a–z, 0–9, +, /), with = as padding. This tool uses the browser's built-in btoa() and atob() APIs wrapped with encodeURIComponent for correct UTF-8 handling. URL-safe mode replaces + with - and / with _ so the output is safe to embed in URLs and filenames without percent-encoding.
Base64 is used wherever binary data must be stored or transmitted as text: embedding images in HTML/CSS (data URIs), encoding email attachments (MIME), storing binary blobs in JSON, and transmitting JWTs. It is not encryption — anyone can decode Base64 without a key.
Use URL-safe Base64 when the encoded string will appear in a URL query parameter, path segment, or filename. Standard Base64 includes + and / characters, which have special meanings in URLs. URL-safe Base64 (RFC 4648 §5) replaces them with - and _ which are URL-safe without percent-encoding.
Base64 encodes 3 bytes into 4 characters, producing an output ~33% larger than the input. For a 1 MB file, the Base64 output will be about 1.37 MB. This overhead is the cost of making binary data text-safe.
Yes. The file encode option reads any file type and produces Base64. Common uses include PDFs in data URIs, audio files in email attachments, and binary data embedded in JSON payloads for APIs that don't support multipart uploads.