What is Base32 Decode & Encode?
Base32 is a binary-to-text encoding scheme that represents binary data using 32 printable characters (A-Z and 2-7). It's commonly used in TOTP (Time-based One-Time Password) secrets, DNS records (Base32hex), and systems where case-insensitive encoding is needed. Unlike Base64, Base32 is case-insensitive and avoids visually ambiguous characters.
How to Use
- Select Decode or Encode mode
- Paste your Base32 string (decode) or plain text (encode) in the input
- Click the action button to process
- Copy the result from the output panel
Why Use This Tool?
Tips & Best Practices
- Base32 uses A-Z and 2-7 (32 characters total)
- Padding with = is optional for decoding
- Base32 is case-insensitive — both uppercase and lowercase input work
- Base32 output is ~60% larger than the original data (vs ~33% for Base64)
- For most use cases, Base64 is more efficient; use Base32 when case-insensitivity matters
Frequently Asked Questions
When should I use Base32 instead of Base64?
Use Base32 when you need case-insensitive encoding (e.g., TOTP secrets, DNS records, filenames on case-insensitive filesystems). Base64 is more compact but case-sensitive. Base32 avoids ambiguous characters like 0/O and 1/I/l.
What characters does Base32 use?
Standard Base32 (RFC 4648) uses A-Z (26 letters) and 2-7 (6 digits), totaling 32 characters. The = character is used for padding. This alphabet was chosen to avoid visually similar characters.
Why is my TOTP secret Base32 encoded?
TOTP (Time-based One-Time Password) secrets are Base32 encoded because users often need to type them manually when setting up 2FA. Base32 is case-insensitive and avoids ambiguous characters, making manual entry less error-prone.
Is Base32 encoding or encryption?
Base32 is encoding, not encryption. It transforms data into a different representation but provides no security. Anyone can decode Base32. Never use Base32 to protect sensitive data — use proper encryption instead.
What is the difference between Base32 and Base32hex?
Standard Base32 uses A-Z and 2-7 as its alphabet. Base32hex uses 0-9 and A-V, which maintains sort order (the encoded strings sort the same as the decoded values). Base32hex is used in DNS and some database systems.
Can I decode Base32 that has spaces or line breaks?
Yes. This tool automatically strips whitespace before decoding, so Base32 strings with spaces, line breaks, or other whitespace will work correctly.