Oddbean new post about | logout
 https://m.primal.net/HxhK.png

# Halving Fee Chaos

The Bitcoin halving is an anticipated event, one of those Bitcoin holidays that happen every once in a while. Along with Soft Fork Activation and various financial instrument introduction days, it's one of those not-quite-predictable days that occur every few years which give Bitcoiners reason to pay attention and mainstream media to speculate.

This year's halving was much anticipated, as halvings usually are, but we had a bit of an incident that requires some further explanation. The block subsidy decreased from 6.25 BTC to 3.125 BTC on block 840,000 as expected, but what wasn't expected was the 37.626 BTC in fees that came along with it. To give some context, that's easily the highest ratio of fees to block subsidy that Bitcoin has *ever* had. [One transaction](https://mempool.space/tx/152b928e97bb9e874da1bd4abdf766ae0cdc7a2f260dad5542967cb414c58489) paid nearly 8 BTC in fees by itself.

## More Fees

It wasn't just block 840,000 that had high fees, over the next 5 blocks, we had fees of 4.486, 6.99, 16.068, 24.008 and 29.821 BTC respectively. The fees are the highest it's ever been. This situation in Bitcoin is unprecedented. 

Up to this point in Bitcoin's history a block whose fees were higher than block subsidy were pretty rare. There were a few in the 50 and 25 BTC eras, but these were mistakes by the user (usually forgetting to put in a change address) and almost all of the fee came from a single error transaction. In the 12.5 BTC subsidy era, there were a few transactions toward the end of 2017 when the cumulative fees exceeded the 12.5 subsidy. In the just-ended 6.25 BTC subsidy era, there were many blocks during the ordinals craze which exceeded the 6.25 BTC subsidy.

Still, these were relatively rare, and most blocks even in the most recently completed era mostly didn't exceeded 1.5 BTC. Yet in this new era of 3.125 BTC subsidy, every single block as of this writing (block 840018) has had fees exceed the subsidy, some by many multiples. So what happened? Why was the halving block getting so much in fees?

## Runes

The reason has to do with a new protocol called Runes. It's yet another colored coins protocol on top of Bitcoin that Casey Rodarmor designed back in [September of 2023](https://rodarmor.com/blog/runes/). The main idea is to allow coin issuance on Bitcoin that uses the UTXO set natively.

Now to back up a bit, colored coins have been around for a long time. The main idea is that you can "color" certain Bitcoin transaction outputs as meaning something in addition to the Bitcoin amount in the output. It could be another "asset" and issued as a token. The first implementation of such a protocol happened 11 *years* ago in 2013 and there have been many attempts since, including MasterCoin (renamed Omni), CounterParty, and more recently, RGB, Taro Assets and BRC-20.

As Rodarmor states in his blog, his motivation for making another protocol is to bring some of the asset issuing from other chains to Bitcoin. To make the launch of this protocol more interesting, Rodarmor decided to start the issuance on block 840,000, leading to the chaos we saw.

## Simplification vs Game Theory

Casey Rodarmor is also the creator of ordinals, and he took one of the concepts, which was to name assets using the capital latin alphabet on Runes. This is a normal fine choice, but what happens when there's a conflict? If two assets have the same name, how do we distinguish between them?

To simplify things, the protocol just looks up what assets exist already and if the name conflicts with something that exists, then the new asset isn't issued. This indeed simplifies the client and gives a global unique name to each asset. Unfortunately, it also makes for some terrible incentives.

## Sniping Asset Issuance

The first incentive problem is that if the transaction issuing the asset is sent out to the Bitcoin mempool, then as that transaction is gossiped to nodes around the network, other observers can snipe the name by getting the transaction in earlier.

Now "earlier" in Bitcoin is a strict concept. Blocks are ordered and transactions within a block are ordered. Whichever comes first gets the symbol and the asset issuance. But if you want to squat on a good symbol name, you can just look for mempool transactions that are attempting to create a new asset and create your own with a bigger fee. That's the essence of sniping.

What's really terrible about a situation like this is that *both* transactions will likely go into the block, but only the first will successfully issue the asset. The second will not issue the asset but *still pay the fee*.

Miners generally order transactions by fee rate, so a higher fee likely means that they'll get to issue the asset. I say likely, because there's a second incentive problem here I'll discuss later. But game-theoretically, both participants are incentivized to increase fees continually to one-up each other. The dynamic is similar to the [One Dollar Auction](https://en.m.wikipedia.org/wiki/Dollar_auction), where participants end up making rational choices, but end up with an irrational result (like paying $1.50 for $1). Every loser pays lots in fees for nothing.

## Second order Game Theory

Now given this first-order incentive playing out, it's not a surprise that a lot of issuers purposefully put in a very high fee initially to discourage anyone from trying to snipe the symbol. After all, if your sniping attempt fails, then you lose out on the fees you tried to snipe with. There's also a significant uptick in the usage of RBF for this reason, so that you have the option to one-up the sniper and the sniper to do the same to the issuer.

Note that RBF isn't useful here to *get out* of paying the fee, as a replacement transaction has to pay more than the previous transaction in fees. Either way, the miner ends up with the fees.

Now back to the miner's role. The miner can, if it so desires, give preference to the *lower* fee transaction by including it earlier in the block. Indeed, the incentive is to give miners off-band fees if possible to order transactions in such a way as to win by not revealing how much you've paid. Miners in this protocol have a lot of leverage.

## Conclusion

Runes have resulted in some really high fees, though it's hard to know if the design was intentional or unintentional. What we do know is that Runes have been hyped up for the last few months and have been anticipated for a while, and certainly being one of the first assets issued under the protocol has some marketing value for the eventual goal of getting them listed on an exchange.

Sadly, in addition to the normal scamming of altcoins being completely centralized, there is a deeper cost in terms of block space congestion, where fees of 1000 sats/vbyte are currently not enough to get into certain blocks. The Runes asset issuance has overridden almost every other use case at the moment.

That said, the current rate of Runes issuance is completely unsustainable. Just in the first 18 blocks, there's been over $20M in fees spent, most of that in Runes issuance. At this rate, Runes issuers would be spending $150M a day or $1B a week. I honestly can't see them doing this for much longer than a month or two. In the meantime, it must be great to be a miner finding these blocks.
 
 Thanks for the summary  
 Thanks for the explanation! 
 Is there a general consensus on whether this is purely profit driven behavior vs. an actual attack on Bitcoin itself? I see debate supporting both sides from people whose opinions I respect, but there is very clearly a real impact on the fundamental functioning of the network and no clear answers given.

Is the only possible options as a pleb to fight against it to not participate and just wait for the initial hype frenzy to die down? 
 If it is an attack it's not a sustainable one. Costing $1b a week means only the largest state actors would be able to pull off a coordinated attack and even then they couldn't sustain it indefinitely.

It's much more likely to be grifters who want to make a quick bit of fiat flipping these runes/inscriptions. 
 nice write up. though i highly doubt these shitstains have enough of a sack to keep this up for even a week. some sub 100 sat/vb transactions are making it through before may. 
 Runes and ordinals. Educating the government on new attack surfaces. 
 Thanks for the explanation regardless of whether I actually understood wtf is happening ha. 
 fuck i want to be miner now 🥹 
 Well written! 
 thanks 
 https://m.primal.net/HxiC.png Seeing a lot of this. Miners enriched at the expense of rubes. 
 Why write everything onto Bitcoin? What about something like Stacks? 
 Very enlightening. Thank you for the synopsis 
 Thanks Jimmy, fucking shitcoiners. 
 Thanks just woke up and didn’t know what was going on 
 Great, detailed explanation. Thanks. 
 This isn't how it works. 

Runes have built-in anti-name-sniping protection: the "etching" transaction has to include an inscription commitment with 6 confirmations, so by the time the name is revealed in the mempool it's too late to make a copycat. 
 The extremely elevated fees in the halving block are a result of competition to be the "first" Rune, not to snipe or discourage sniping names.

With so many new tokens appearing simultaneously, it was assumed that the ones at the top of the list will form a Schelling point for speculators and pump the hardest. 
 @jimmysong über die aktuell höchsten Netzwerk Gebühren aller Zeiten und was Runes damit zu tun hat.

nostr:nevent1qqs0qds60adqfq74qzneczu5kjpufksvl9lwc3ca6fkll4mxv40l90sppamhxue69uhkummnw3ezumt0d5pzq7el0qph2p6x7325zw3zr7qfvhhvk600xz8jatga4zwv9jy396tgqvzqqqqqqy83cpxf 
 Transaction Expiration (inverse Locktime) could be very useful here. Don’t you think? 
 nostr:nevent1qqs0qds60adqfq74qzneczu5kjpufksvl9lwc3ca6fkll4mxv40l90spz3mhxue69uhhyetvv9ujumn0wd68ytnzvupzq7el0qph2p6x7325zw3zr7qfvhhvk600xz8jatga4zwv9jy396tgqvzqqqqqqy9evxvs 
 Well written! 
 Is the bitcoin network a permissionless money transmittal service or is it a permissionless graffiti train? Why should it be both? Why should it be either? 
 Coloured coins were fun. In like 2015. 
 Play stupid games, win stupid prizes 
 ⚡️ 
 When those “spammers“ run out of fees to pay the miners, that “stuff” is still on the blockchain and taking space on the nodes.
And for some, they feel like they are just storing some useless garbage on their node, loosing some storage space.
 
If there is possible (and optional) to filter out those runes from the Nodes, like @Luke Dashjr is pointing out on the other platform (link below), will the Nodes get the storage space back, if they do not include those runes/ordinals TXs?? 🤔

https://x.com/LukeDashjr/status/1781749769431650700