Web3/Blockchain

Bech32 Address Validator

Validate bech32 and bech32m addresses, decode the witness version and program, and see exactly which character is wrong when the checksum fails.

Last reviewed by the Radiatus Cloud team

Results appear here.

Need this done properly for your business?

Radiatus delivers secure cloud, DevOps & compliance engineering.

Book a free consult

Bech32 detects the errors people actually make

The encoding was designed around the specific mistakes humans make when copying strings: a substituted character, two characters swapped, and small groups of adjacent errors. Its checksum guarantees detection of any four errors and detects more than that with overwhelming probability, which is far stronger than the base58 checksum it replaced. It also uses a character set that excludes 1, b, i and o, so the pairs most often confused visually cannot both be valid.

Taproot needs bech32m, and the difference is one constant

A flaw was found in the original construction: an address ending in a p followed by a run of q characters could have those q characters inserted or removed without breaking the checksum. Bech32m fixes it by changing a single constant, and the rule that followed is that witness version 0 uses bech32 while versions 1 and above use bech32m. An address encoded with the wrong variant for its version is invalid, and this is the most common reason a valid-looking Taproot address is rejected.

Mixed case is invalid, not merely unusual

The specification permits an address to be entirely lowercase or entirely uppercase, because uppercase encodes more compactly in a QR code, and it forbids mixing the two. That is not a style preference: a mixed-case bech32 string is invalid by definition, and software that accepts it is being lenient in a way that discards an error check the format deliberately provides.

Related tools

Frequently Asked Questions

What errors does bech32 catch?

Any four character errors are guaranteed to be detected, and more than four are detected with overwhelming probability. The character set also excludes 1, b, i and o so the most visually confusable pairs cannot both be valid.

What is bech32m and why does it exist?

A one-constant change to the checksum, fixing a flaw where a p followed by a run of q characters could be inserted or removed undetected. Witness version 0 uses bech32; versions 1 and above use bech32m.

Why is my Taproot address rejected?

Most often because it was encoded with bech32 rather than bech32m, or checked by software predating the change. Version 1 and above require bech32m.

Is mixed case allowed?

No. An address must be entirely lowercase or entirely uppercase, and a mixed-case string is invalid by definition rather than merely unusual.

Does a valid checksum mean the address is safe?

It means the string was not corrupted in transit. It says nothing about who controls the address, which is a different question no checksum can answer.

Privacy & Security

Everything runs in your browser; nothing is uploaded.

Data: None
Client-side-Side
Active
v1.0

How to Use

Paste addresses to validate their bech32 checksums.

Disclaimer: This tool is provided "as is" without warranty of any kind. Results are for educational and utility purposes.