Base32 converter

What is a Base32 Converter?

Base32 represents binary data using 32 characters: the uppercase letters A to Z and the digits 2 to 7, as defined in RFC 4648. Compared with Base64 it is about 20% longer, but it is case-insensitive and avoids easily confused symbols, which makes it suitable for values people need to type or read aloud.

How to use it

  1. Paste plain text to encode it, or paste a Base32 string to decode it.
  2. Copy the result.

How Base32 works

The input bytes are split into groups of 5 bits, and each 5-bit value (0 to 31) is mapped to one character of the alphabet. Every 5 input bytes (40 bits) become exactly 8 output characters. If the input is not a multiple of 5 bytes, the output is padded with = characters to a multiple of 8.

Example

The text Hi is the bytes 0x48 0x69, or bits 01001000 01101001. Split into 5-bit groups: 01001 00001 10100 1(0000), which are 9, 1, 20 and 16, or J, B, U, Q. With padding the result is JBUQ====.

Where Base32 is used

  • Two-factor authentication: the TOTP secrets in authenticator QR codes are Base32 encoded.
  • DNS and file names: case-insensitive systems cannot preserve Base64's mixed case.
  • Onion addresses and some content identifiers use Base32 variants.

Note that there are other Base32 alphabets, such as Crockford's Base32 and base32hex. This tool uses the standard RFC 4648 alphabet.

Frequently Asked Questions

What characters does Base32 use?

The standard alphabet is A to Z plus the digits 2 to 7, with = used for padding. Digits 0, 1, 8 and 9 are left out to avoid confusion with letters.

Is Base32 encryption?

No. Base32 is an encoding, so anyone can decode it. It does not protect secrets.

Why are my TOTP secrets in Base32?

Authenticator secrets must be typed by humans sometimes, and Base32 is case-insensitive and avoids look-alike characters, which reduces typing mistakes.

Can I omit the = padding?

Many systems, including authenticator apps, accept Base32 without padding. Strict RFC 4648 decoders may require it.