Decode Base32 back to text or bytes. Case and padding are handled automatically, and the error messages explain why 0, 1, 8 and 9 are not valid Base32 digits.
Show calculation steps
Processed privately in your browser — nothing you paste is uploaded, logged or stored.
How to use the Base32 Decoder
- Paste the Base32 string. Upper or lower case both work, and trailing "=" padding is optional.
- Select the matching variant – standard or base32hex.
- Leave the binary option on "Hex dump" if the data is a key or secret rather than text.
- Click "Decode Base32".
Frequently asked questions
My authenticator secret decodes to gibberish. Is that wrong?
No, that is expected. A TOTP secret is random binary key material, not words. Viewing it as a hex dump shows the actual bytes; the readable-text view only makes sense when the original data really was text.
Does the decoder mind lower-case input?
Not at all. Base32 is defined to be case-insensitive, so the input is normalised to upper case before decoding. This is a deliberate design feature of the encoding, not a leniency of this tool.
It says 0 and 1 are invalid, but my string has them.
Then the string is probably not standard Base32. Either it is the base32hex variant – switch the variant option – or a 0 has been mistyped for O and a 1 for I somewhere during transcription.
Is the padding required?
Not for decoding. Padding brings the length up to a multiple of eight characters, which some strict parsers expect, but the byte count is recoverable without it.