home / tools / base64

Base64 Encoder & Decoder.

Type in either box for instant text conversion. Or upload a file to get its Base64 (with optional data-URL prefix for inline embedding). UTF-8 safe. Everything happens locally.

Upload any file (image, PDF, font, anything) and get a Base64-encoded representation. Useful for embedding small assets inline in CSS or HTML.

// what is Base64 used for?

Base64 represents arbitrary binary data using only 64 printable ASCII characters (A-Z a-z 0-9 + / =). It's how computers safely move binary content through systems that only handle text.

  • Email attachments: MIME-encoded as Base64
  • HTTP Basic auth: credentials as username:password encoded
  • JSON Web Tokens (JWT): header and payload are Base64URL-encoded
  • Inline images in CSS/HTML: background-image: url(data:image/png;base64,...)
  • Embedding small assets in single-file HTML or email signatures

UTF-8 safe: the browser's built-in btoa() chokes on non-Latin characters. This tool uses TextEncoder to handle emoji, accented characters, and any other UTF-8 input correctly.

Privacy: nothing you type or upload is sent anywhere. The whole tool is one small JavaScript file running locally.

Related: JWT header and payload segments are themselves base64url-encoded, and the JWT Decoder splits a token and labels the standard claims for you.

// a free, browser-only tool by Tiempo Software, built in Omaha, Nebraska. Runs entirely in your browser; nothing you enter is uploaded. see all tools.