BRC-20 currently relies on the Taproot upgrade. I'm wondering how blockchains such as Dogecoin, which have Bitcoin as their predecessor and did not upgrade to Taproot, manage to support BRC-20. More specifically, I'm wondering if Bitcoin was actually able to support BRC-20 without the Taproot upgrade.

I wasn't able to find much on how to implement BRC-20 without relying on Taproot. However, I did find an example implementation for Dogecoin here. It seems to boil down to splitting chunks of inscription data among several chained transactions. Each chunk is included in an unlocking script.

Is there something I'm missing here? Was BRC-20 possible all this time on Bitcoin even without Taproot?


1 Answer 1


As far as I know, in principle, BRC-20, or something equivalent, only really needs to store about 60 bytes in some predictable location in a Bitcoin transaction. Nothing else.

There is a very long history of storing arbitrary data in the Bitcoin blockchain. From the earliest days people stored images etc as data "in addresses" which I guess means in places intended for public keys or hashes of keys, etc.

So far as I know, new features like OP_RETURN, Segwit, etc just made this less problematic and cheaper.

  • If I understood correctly, when data is stored "in addresses", it makes transactions unspendable, meaning that the UTXO set gets bloated unnecessarily. But in this case, if I understood the Dogecoin inscription code, transactions are still spendable - spending is in fact necessary to "reveal" the data, since the script contains the data (and this data is not visible from just the script hash). I suppose Taproot made this process more convenient/cheaper then, but it isn't "essential" as many sources claim.
    – leotron
    Jun 19, 2023 at 11:00

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.