Base32/Base58/Base62 Encoder/Decoder

Encode and decode text using various base encodings.

Base Encoding

Beyond Base64, other encodings serve different purposes. Base32 uses only uppercase letters and digits (good for case-insensitive systems). Base58 avoids confusing characters like 0/O and l/1 (used in Bitcoin addresses).

This tool converts between Base32, Base58, Base62, and other encodings. Each has tradeoffs between character set, output length, and human-readability.

When to Use Each

  • Base32: Case-insensitive systems, TOTP tokens
  • Base58: User-facing IDs (avoids confusing chars)
  • Base62: Short URLs (A-Z, a-z, 0-9)

Understanding Base Encodings

Base encodings convert binary data into text using a limited character set. Base32 uses 32 characters (A-Z, 2-7), avoiding ambiguous characters like 0/O and 1/I. Base58 (used by Bitcoin) excludes similar-looking characters for easy human transcription. Base62 uses all alphanumerics (A-Z, a-z, 0-9) for URL-safe, compact encoding.

Different encodings have different overhead: Base64 expands data by ~33%, Base32 by ~60%, and Base62 by ~36%. Choose based on your constraintsBase32 for case-insensitive systems, Base58 for human-readable data, Base62 for compact URL-safe strings.

When Developers Actually Use This

Base64 encoding comes up in more places than most developers initially realize. The most frequent scenario is dealing with authentication headers — Basic Auth requires your username and password to be Base64-encoded before being sent in the Authorization header. If you're debugging an API that uses Basic Auth and the request is failing, decoding the header value is the fastest way to confirm the credentials are being sent correctly. Something like Authorization: Basic dW1hZGhhcjpteXBhc3N3b3Jk decodes to umadhar:mypassword — immediately telling you whether the encoding happened correctly.

Email attachments, embedded images in HTML (src="data:image/png;base64,..."), JSON Web Tokens (the payload section is Base64-encoded), and environment variables containing binary config data all use Base64. Decoding a JWT payload manually to inspect its claims without needing a dedicated JWT tool, or encoding a small image directly into a CSS file to avoid an extra HTTP request, are both things working developers do regularly. This tool handles all of those cases in one place without sending your potentially sensitive data anywhere.

Frequently Asked Questions

Why does Bitcoin use Base58?

Base58 was designed specifically for cryptocurrency addresses. It excludes characters that look similar (0/O, 1/l/I) to prevent transcription errors when people manually type addresses. This reduces the chance of sending funds to the wrong address.

When should I use Base32 vs Base64?

Base32 is case-insensitive, making it ideal for systems that normalize case (like DNS or some filesystems). Base64 is more compact but case-sensitive. Use Base32 when you need case insensitivity; use Base64 for efficiency when case is preserved.

What is Base62 best for?

Base62 is perfect for URL shorteners and identifiers because it uses only URL-safe characters (no punctuation) and is more compact than Base32. YouTube video IDs and URL shortening services like bit.ly often use Base62 encoding.