Bech32 / Bech32m Encoder / Decoder
Encode bytes into Bech32 or Bech32m, decode checksummed strings, and inspect prefixes, data words, checksums, and Bitcoin witness structure.
Input text
Output Bech32
Using This Tool: Guide & Notes Show guide
Bech32 and Bech32m encode 5-bit data words with a human-readable prefix and checksum, making them useful for Bitcoin-style address strings and copy-safe identifiers.
How to use it
- Choose Encode to create a Bech32 or Bech32m string, or Decode to inspect an existing checksummed string.
- Set the human-readable prefix when encoding. Examples include test, bc, tb, and bcrt.
- Choose text, hex bytes, or raw 5-bit word input before encoding.
- Use the decoded structure panel to inspect the prefix, separator, checksum characters, data words, and Bitcoin witness shape.
Options and settings
- Bech32 uses checksum constant 0x01 and is used for Bitcoin SegWit version 0 addresses.
- Bech32m uses checksum constant 0x2bc830a3 and is used for SegWit version 1 and later.
- Auto-detect checks the checksum and identifies whether a pasted string is Bech32 or Bech32m.
- Ignore whitespace helps decode wrapped or spaced Bech32 strings copied from notes or documentation.
Notes
- Bech32 and Bech32m are encoding formats, not encryption. They do not hide data.
- Do not paste real wallet seeds, private keys, recovery phrases, or sensitive financial data into ordinary online tools.
Related Article
Bech32 and Bech32m: Bitcoin SegWit and Taproot Address Encoding
How a checksummed base32-style format made Bitcoin addresses easier to read, safer to copy, and better suited to modern SegWit and Taproot address formats.