What Is Base64 Encoding and How Do You Use It?
Base64 appears constantly in web development — embedded images, JWT tokens, email attachments, API responses. Understanding it makes a range of tasks much clearer.
What Is Base64?
Base64 is a binary-to-text encoding scheme. It represents binary data (bytes) using only 64 printable ASCII characters:
A–Z, a–z, 0–9, +, / (and = for padding)
The name "Base64" refers to these 64 characters. Every 3 bytes of binary data become 4 Base64 characters.
Why Does Base64 Exist?
Many systems were originally designed to handle text only — email (SMTP), HTML attributes, JSON fields, URLs. When you need to include binary data (an image, a PDF, raw bytes) inside a text-based system, you need a way to represent that binary data safely as text.
Base64 solves this by encoding any binary content as a string of safe, printable characters that won't be misinterpreted by text parsers.
Common Use Cases
Embedding Images in HTML/CSS
Instead of linking to an image file:<img src="data:image/png;base64,iVBORw0KGgo..." />
This technique is useful for small icons in single-file HTML exports or email templates where external links may be blocked.
JSON Web Tokens (JWT)
JWTs consist of three Base64-encoded parts separated by dots:Header.Payload.Signature
The header and payload are Base64-encoded JSON objects. Note: they're encoded, not encrypted — anyone can decode them. Use ZapFile's JWT Decoder to inspect a token's contents.
Email Attachments (MIME)
Email attachments are Base64-encoded binary files embedded inside the plain-text email protocol. Your email client handles this automatically.API Responses
Some APIs return binary data (images, PDFs) as Base64 strings inside JSON responses, since JSON doesn't natively support binary.HTTP Basic Authentication
TheAuthorization: Basic header encodes username:password as Base64. This is not encryption — it's just encoding. Always use HTTPS.
Encoding and Decoding Online
Use ZapFile's Base64 Encoder/Decoder to:
- Encode text or files to Base64 strings
- Decode Base64 strings back to text or downloadable files
- Preview embedded image data URLs instantly
Does Base64 Compress Data?
No — the opposite. Base64 increases data size by approximately 33%. Three bytes become four characters. Base64 is for compatibility, not compression.
Base64 vs Base64url
Standard Base64 uses + and /, which have special meanings in URLs. Base64url replaces them with - and _ to make the output safe for URL parameters and JWT tokens.
Summary
- Base64 encodes binary data as printable ASCII text for use in text-based systems
- Common in embedded images, JWTs, email attachments, and API responses
- It increases size by ~33% — it's for compatibility, not compression
- Decode a JWT or Base64 string instantly with ZapFile's tools