Dear reader, there’s a metric shit(coin) ton happening in the world of “Metaprotocols on Bitcoin”. These metaprotocols didn’t come out of nowhere, we can actually trace them back to the launch of the Ordinals protocol itself. Let’s take a look at how we got here:
What is a metaprotocol?
At the highest level a metaprotocol is a set of rules for communicating data. In this way, Ordinal Theory – and the ruleset that guides the ord software implementation – itself is a metaprotocol on top of Bitcoin. The original idea for tracking satoshis is defined in Casey’s inaugural blog on the subject and additional implementation details come from the Ord reference client, which implements the ruleset for indexing ordinals. The ord client also defines a scheme for encoding and interpreting arbitrary data on Bitcoin that we call “Inscriptions.” By releasing Ordinals, Casey effectively opened Pandora’s Box for the future of arbitrary data on Bitcoin and new Bitcoin metaprotocols.
The BRC-20 phenomenon
BRC-20 was initially a gitbook published in March 2023 that briefly described a token scheme using the Inscription data structure to execute token operations (instructions for creating/minting/sending tokens). The gitbook included no implementation details nor protocol specifications – just the high level concept. Because BRC-20 leveraged the Inscription data structure, we would consider it a token metaprotocol on top of the Ordinals metaprotocol.
Within 2 months of the gitbook being published, there was absolute chaos trying to standardize BRC-20 tickers across the ecosystem. For example, Marketplace A sold Token A which was being sold as Token A and B on Marketplace B. The BRC-20 transfer mechanics as defined in the original gitbook also changed before anyone noticed (per the original rules, instead of providing an address, you sent the actual inscription that said “transfer” – a truly insane system).
Subscribe to the Blockspace Newsletter - the best in Bitcoin twice weekly.
By the end of the spring 2023, Unisat emerged victorious as the leading marketplace for BRC-20 tokens and the de facto indexer for all BRC-20s. Users quickly grew frustrated at Unisat’s monolithic indexing of what was considered an “open” standard, but ultimately Unisat held the reins (and still does).
Now, Unisat is launching a merge mined sidechain called “Fractal Bitcoin.” On Monday, the company announced that you would soon be able to “Inscribe BRC-20s” on Fractal, and you can try out inscribing them on the Fractal Testnet.
As I am looking through the BRC-20s on Fractal Bitcoin testnet explorer, they appear to be issued in Fractal Bitcoin blocks, which are not layer-one blocks on Bitcoin’s blockchain. This raises a burning question: is this another fork in BRC-20 indexing? I have more questions than answers at this time.
Forcing programmability onto Bitcoin with custom indexers
This isn’t the first time we’ve seen an obfuscation of on-chain/off-chain indexing.
In July, the “Programmable Runes” narrative swept through Ordinals Twitter. After some confusion, it became clear that this was a scheme to use off-chain logic to interpret on-chain data, specifically an extension of the Runes protocol.
But what is actually happening when an off-chain application interprets on-chain data?
If we post data to Bitcoin, we can then grant additional rules to that data using off-chain programs. Those rules can be “let’s treat this data as if it were operations in a smart contract” which is tracked by a piece of software off-chain that we call an “indexer.” Users can (theoretically) run their own indexer or (realistically) just plug into the API that you provide them saying “trust me bro, I’m indexing things the same way you would.” This indexer treats arbitrary data on Bitcoin a specific way, perhaps interpreting it like a smart contract, but the enforcement of that smart contract does not happen on Bitcoin’s base layer – it is through social consensus & users opting-in and acknowledging the state of that indexer. In some ways this is similar to the Ordinals protocol itself, albeit inelegant.
By leveraging this off-chain data layer, project leaders are claiming that they are “putting smart contracts on Bitcoin” or “adding programmability via Bitcoin’s Layer 1.5.” I actually don’t have much of an issue with the latter marketing term but it is extremely misleading to claim the smart contracts are “on” Bitcoin.
Regardless, apparently this was all we needed to set the stage for what appears to be one of the most interesting (and potentially lucrative) times to be a shitcoiner on Bitcoin. You have “Protorunes”, OPNET, TRAC systems, and probably many others that aren’t top of mind. You can even put a lot of these schemes on top of a merge mined sidechain like Fractal Bitcoin as it works within the same tapscript as Bitcoin’s mainnet. Hell, you can even handle uncooperative blockchain architecture at the indexer level.
If you want to get extremely high level you could even just consider an indexer to be a cross-chain solution if it gets enough social consensus buy-in. As long as you are able to tie in the order of events in some way to Bitcoin blocktime, you can go really far with the idea of an indexer interpreting arbitrary data.
I actually love this trend. I am amazed that we haven’t seen this type of activity take off on Bitcoin to-date as we’ve pretty much been able to do this type of data blob posting to Bitcoin since the 2017 SegWit fork. If this stuff takes off it could generate loads of fees for miners.
Bottom line: leave room in your skeptical mind for the possibility that there might actually be some interesting trends in the “Bitcoin as a platform” thesis.
Who indexes the indexers?
If this thesis pans out, then the off-chain economy it sprouts will provide opportunities for growth beyond the metaprotocol/platform providers themselves.
For instance, we have the meta-indexers, the ones who are indexing everything. Indexers are difficult to run and the business model of running an indexer either means that you yourself have to find a way to profit off the protocol or you have to adopt an Infura type model to index-as-a-service. The Oyl team is building Metashrew, the Infura route (see this relevant Bitcoin Season 2 episode). They are working on “SUBFROST” which supposedly works as a “Layer 0” providing cross-indexer assets, such as products similar to Wrapped Bitcoin.
It’s Metaprotocols all the way down
At this point I’m not even sure which audience I am writing for.
Clearly the degens have stopped reading at this point and I would be surprised if any serious developer or builder still cares about these things.
But I do think that it’s incredibly important to keep your eye on these developments. As we saw with Ordinals, the user behavior on Bitcoin can change in the blink of an eye. If you’re not paying attention, you could find yourself completely confused by the transactions on your own node or maybe you could be caught on the wrong side of a feerate trading position