About Base64 Encode / Decode

Base64 Encode / Decode converts text or a file to Base64 and back. Text is handled as UTF-8, so any language and emoji round-trip, and there is a URL-safe option that uses dash and underscore and drops the padding.

Files are read with the browser File API and encoded in the page. Nothing is uploaded and no copy is kept on a server.

How to use it

  1. For text, type in the plain box to encode or the Base64 box to decode. The two stay in sync.
  2. Tick URL-safe to use - and _ instead of + and /, with no = padding.
  3. For a file, drop it in to get its Base64, then copy it or save it as a .txt.
  4. To rebuild a file, paste Base64 into the lower box, name it, and press Save file.

Common questions

Is my text or file uploaded?

No. Encoding and decoding run in JavaScript in the open tab.

Does it handle non-English text?

Yes. Text is encoded as UTF-8, so any script and emoji survive a round trip.

What if the Base64 decodes to binary, not text?

The text view says so. Use file mode to save the decoded bytes instead.

Does pasted Base64 need exact padding?

No. Whitespace and missing = padding are tolerated, and URL-safe input is accepted.