Ad space (728×90)

Base32 Encode / Decode

Free online Base32 encoder/decoder using the RFC 4648 standard alphabet — the format behind TOTP/2FA secret keys. Runs entirely in your browser.

← Back to all tools

Why Base32 exists alongside Base64

Base64 packs more information per character (6 bits vs. Base32's 5), but its alphabet includes both uppercase and lowercase letters plus `+` and `/`, all of which matter for case-sensitive, punctuation-safe contexts. Base32 trades some density for robustness: an uppercase-only, punctuation-free alphabet that survives being read aloud, typed by hand, or passed through case-insensitive systems (like certain legacy filesystems or DNS labels) without any risk of a lowercase letter being silently uppercased and corrupting the data. That specific property — safe under case-folding — is exactly why TOTP/2FA secret keys use Base32: a human might need to type one in by hand from a printed backup code, where case sensitivity would be a real source of errors.

Why the alphabet skips certain letters and digits

RFC 4648's standard Base32 alphabet deliberately excludes 0, 1, 8, and 9 (along with never needing lowercase) specifically because certain digit/letter pairs are easy to visually confuse — 0 and O, 1 and I and L — especially in a font or handwriting where they render similarly. For a scheme partly designed around being read and typed by humans, that's a meaningful design choice, not an arbitrary restriction; it's also exactly why this tool rejects any input containing characters outside A-Z and 2-7 during decode, rather than trying to guess what a stray 0 or 1 was supposed to mean.