Free text tools — updated for 2025 | All Text Tools

Base64 Encoder & Decoder

Encode text to Base64 or decode Base64 back to plain text. Supports UTF-8 and URL-safe Base64 variants. Runs entirely in your browser.

Base64 Encoder & Decoder

What is Base64 and when do you need it?

Base64 encodes binary data as a string of 64 printable ASCII characters (A–Z, a–z, 0–9, +, /). It's not encryption — it's encoding. The encoded output is about 33% larger than the original. You need it when a protocol or system can only handle text and you need to pass binary or arbitrary bytes through it.

  • Email attachments (MIME) — binary files (images, PDFs) are Base64-encoded inside email messages
  • Data URIs — inline images in HTML/CSS are Base64 strings: src="data:image/png;base64,..."
  • JWT tokens — the header and payload of a JSON Web Token are Base64url-encoded
  • Basic Auth — HTTP Basic Authorization sends credentials as Base64: Authorization: Basic dXNlcjpwYXNz
  • API secrets and keys — many services encode binary keys in Base64 for safe transport in JSON

Frequently Asked Questions

No. Base64 is encoding, not encryption. Anyone can decode it instantly without a key — there's no secret involved. It offers zero security. If you see someone using Base64 for "security", that's a red flag. Use Base64 for safe text transport of binary data. Use AES or RSA for actual encryption.
Standard Base64 uses + and / as the 62nd and 63rd characters. These are special characters in URLs — + means space and / separates path segments. URL-safe Base64 (RFC 4648 §5) replaces + with - and / with _, making the result safe to put in a URL or filename without percent-encoding. JWT tokens use URL-safe Base64.
Base64 encodes 3 bytes at a time into 4 characters. If your input isn't a multiple of 3 bytes, the last group has 1 or 2 bytes short. One = means 1 padding byte, == means 2. Without padding, the decoder wouldn't know where the data ends. Some implementations omit the padding (common in JWTs) and add it back during decoding.