Base64 Encode & Decode Online – Free Tool Encode and decode Base64 strings
100% offline
Input13 chars · 1 lines
Output20 chars
Encoded · 20 chars
SGVsbG8sIEFudmlsIQ==

About Base64 Encode & Decode Online – Free Tool

Base64 is an encoding scheme that represents binary data using a 64-character set of ASCII letters, digits, and the symbols "+" and "/". It's widely used to embed images in CSS or HTML (data URIs), send binary payloads inside JSON, encode email attachments (MIME), and store small blobs in text-only fields — anywhere raw bytes need to travel safely through systems that expect text.

This free Base64 encoder and decoder converts text and Unicode (including emoji) in both directions, supports the URL-safe alphabet, and runs entirely in your browser. Nothing you paste is ever uploaded.

Features

  • Encode text to Base64 and decode Base64 back to text
  • Full UTF-8 support — handles accents, non-Latin scripts, and emoji
  • URL-safe variant (-_ instead of +/), with padding handled automatically
  • Clear errors on invalid input; works completely offline

How to use

  1. Paste your text or a Base64 string into the input pane.
  2. Choose Encode to convert text → Base64, or Decode for the reverse.
  3. Copy the result from the output pane — or clear and start again.

Frequently asked questions

Is Base64 encryption?

No. Base64 is encoding, not encryption — it provides no security. Anyone can decode it instantly. Use it to transport data safely as text, not to protect it. For protection, use a real cipher (see the AES tool).

Why does Base64 output look ~33% larger?

Base64 represents every 3 bytes of input as 4 ASCII characters, so encoded output is about one-third bigger than the original. That overhead is the cost of being text-safe.

What is the URL-safe variant?

Standard Base64 uses "+" and "/", which have special meaning in URLs. The URL-safe alphabet replaces them with "-" and "_" and usually drops the "=" padding, so the value can be used directly in URLs and filenames.

Does my data get sent anywhere?

No. All encoding and decoding happens locally in your browser using the built-in btoa/atob and TextEncoder APIs. Your input never leaves your device.

Everything runs locally in your browser — your input is never uploaded.