Tallyloom

Base64 Encode / Decode

Convert text to Base64 and back, with proper UTF-8 handling for emoji and non-Latin scripts. Nothing you type leaves your browser.

How to use this tool

  1. Choose Encode to convert text to Base64, or Decode to convert Base64 back to text.
  2. Type or paste your input — the result appears instantly.
  3. Copy the result with one click.

How it works

Base64 represents binary data using 64 safe characters (A–Z, a–z, 0–9, +, /), turning every 3 bytes into 4 characters — which is why encoded output is about 33% larger than the input. This tool encodes text as UTF-8 bytes first, so emoji and non-Latin scripts round-trip correctly (naive btoa-only tools corrupt them).

Base64 is an encoding, not encryption: anyone can decode it. It exists so binary data can travel through text-only channels like JSON, email, and data URLs.

Frequently asked questions

Can I convert a file to Base64 or turn Base64 back into a file?

Yes — File → Base64 reads a local file (up to 25 MB) and outputs its Base64, optionally as a data URL ready for CSS or HTML embedding. Base64 → file decodes pasted Base64 (or a data URL) and saves it as a download. Both directions run entirely in your browser.

Why is Base64 output about 33% larger than the original?

Base64 represents every 3 bytes of binary data as 4 text characters, so encoded output is 4/3 the size of the input. That's the cost of making binary data safe to embed in text formats like JSON, HTML, and CSS.

Is Base64 encryption?

No. Base64 is a reversible encoding anyone can decode — it provides zero secrecy. If you need confidentiality, you need actual encryption.

Why is Base64 output longer than the input?

Every 3 bytes become 4 characters, so output is roughly 133% of the input size, plus up to two = padding characters.

What is URL-safe Base64?

A variant that replaces + with - and / with _ so the encoded string can live in URLs without percent-escaping. It's common in JWTs and web APIs.