Base32 Decode
Decode Base32 strings to plain text — paste, decode, and copy instantly.
Decoded text will appear here...About Base32 Decode
Base32 Decode is a free online tool that converts Base32-encoded strings back into their original plain text. Base32 encodes binary data using only 32 characters — the uppercase letters A through Z and the digits 2 through 7 — making it safe for case-insensitive environments such as DNS labels, file systems that ignore case, and two-factor authentication secret keys. When you receive one of these strings and need to read its raw content, this tool reverses the encoding instantly.
The decoder is built for practical situations: inspecting a TOTP/HOTP secret before entering it into an authenticator app, verifying a Base32-encoded configuration value, checking a Tor v3 onion address component, or auditing a token passed through a system that cannot handle arbitrary bytes. Unlike Base64, Base32 avoids characters such as + / = that can break URL parsing and shell variables, so it turns up in places where Base64 would cause problems.
All decoding runs entirely in your browser using JavaScript. The Base32 string you paste is never sent to a server, stored in any log, or shared with a third party. The tool accepts both padded (trailing =) and unpadded input, normalises lowercase to uppercase automatically, and uses the TextDecoder API to reconstruct multi-byte UTF-8 characters faithfully. There are no file size limits, no accounts, and no cost.
Key Features
RFC 4648 Base32 alphabet
Decodes the standard A-Z / 2-7 alphabet defined in RFC 4648. Padding characters (=) are stripped automatically, so both padded and unpadded input decode correctly.
Case-insensitive input
Accepts uppercase, lowercase, or mixed-case input. The decoder normalises to uppercase before processing, matching the real-world habit of copying TOTP secrets in lowercase.
Full UTF-8 output
Reconstructed bytes are decoded via the native TextDecoder API, so text originally encoded in any language or character set is reproduced correctly, not as garbled bytes.
Instant error feedback
If the input contains a character outside the Base32 alphabet, the tool immediately identifies the offending character rather than silently producing corrupt output.
100% client-side privacy
The JavaScript decode function runs entirely in your browser. TOTP secrets, API tokens, and other sensitive values never leave your machine.
One-click copy
Copy the decoded result to the clipboard with a single click, ready to paste into a terminal, config file, or authenticator app.
How to Use
Paste Base32
Paste your Base32-encoded string into the input pane.
Decode
Click "Decode" to convert the Base32 string back to readable text.
Copy Result
Use the copy button to grab your decoded text.
Example
A Base32-encoded string is converted back to its original plain text. Trailing padding characters and lowercase input are handled automatically.
ONSWG4TFOQYTEMY= secret123 Common Use Cases
- arrow_circle_right
Inspecting TOTP/HOTP authenticator secrets
Two-factor authentication apps store secrets as Base32 strings. Decode the secret before entering it manually to confirm the value is correct and matches what your server expects.
- arrow_circle_right
Verifying Base32-encoded configuration values
Some config systems, CI pipelines, and secrets managers pass tokens through Base32 to avoid special-character escaping issues. Decode the value directly here without needing a local script.
- arrow_circle_right
Auditing tokens in case-insensitive systems
DNS labels, certain file systems, and legacy email systems all fold case. Base32 was designed for these environments. Decode Base32 tokens from those systems to read their underlying content.
- arrow_circle_right
Checking Tor v3 onion address components
Tor v3 .onion addresses embed Base32-encoded data. This tool lets you inspect that encoded segment to understand what it contains without installing specialist software.
- arrow_circle_right
Debugging encoded data in logs and URLs
When a Base32 string appears in a server log, a query parameter, or an API response, paste it here to read the underlying value and quickly determine what it represents.