I’ve looked at the mailing list, the BIP, commits that implement BIP350, the author’s twitter posts, and here on Stack Exchange, but couldn’t find an answer. Has it ever been publicly established what the “m” in bech32m stands for?

  • 1
    While I don't have a source for this, I've always assumed it means "modified". Commented Jul 18, 2023 at 18:56

1 Answer 1


I believe I picked the name due to the fact that the difference between Bech32 and Bech32m is the introduction of a non-zero "M" constant, added to the checksum.

That constant (or the perceived need for one) existed before the name Bech32m was used. For example, this write-up was referenced in this mailinglist post in december 2019, and suggests the use of M = 0x3FFFFFFF. While the constant was changed later after further analysis, I believe the "m" in the name is in reference to the addition to that constant. In the BIP itself the constant is now called BECH32M_CONST, however.

The origin of "M" constant name itself I cannot remember, but it may well stand for "modifier" or "modified". So I guess it's fine to think of that as the meaning.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.