Bitcoin Core Vs Knots - The Node Wars Have Begun

In this article:
If you’ve spent any time on Bitcoin Twitter this week, you won’t have been able to miss the latest big controversy that’s brewing. The Bitcoin Core developers are proposing a change to their software, and the Bitcoin communities’ views on it have been far from unanimous.

Memes are flying, strong opinions are being voiced, and ad-hominem attacks on those with differing opinions are commonplace. For the casual bystander, making sense of all this is far from straightforward.
It looks like it could be time to brace yourselves folks, because the node wars have just begun.

Seeing all this chaos erupt on your timeline can be a little disconcerting. People are busy throwing around terms like “OP_RETURN” and “datacarrier”, and the whole community is engaged in heated debate about whether users should continue using Bitcoin Core, or migrate to an alternative node software called Bitcoin Knots.
If you’re not particularly technical, the jargon being thrown around can leave you feeling a bit like a rabbit caught in headlights. Especially given the debate has descended into mud slinging, overblown claims, and in some cases even alleged censorship.

So what on earth is actually going on?
Well, before we break it down, the first thing to make clear is that there is no need to panic. Your self-custodied funds aren’t at risk, and nobody is forcing you to make an immediate decision or take any immediate action.
Like most things in Bitcoin, it’s best to remain calm and approach things with a cool head.

With that in mind, let’s spend a bit of time trying to make a balanced appraisal of the arguments being made by the two warring factions so that we can make better decisions for ourselves.
True sovereignty means making your own choices, not having them made for you.
Bitcoin Core & OP_RETURN
Bitcoin Core is the primary open-source software client for the Bitcoin network, and is the most common implementation used by Bitcoiners looking to run their own full node, validate transactions, and participate in Bitcoin’s consensus process.
The controversy that exploded this week all centers around a proposed update to that software called ‘Pull Request #32359’. Some people in the community are in favour of the proposed changes while others are strongly opposed to it.
To make sense of this debate, we need to first explore what exactly this proposed change is, and what implications it might have for both node runners and the Bitcoin network at large before we start jumping to any immediate conclusions.

At the heart of this debate is a feature called OP_RETURN, which lets users attach a small piece of data to a Bitcoin transaction. In the current version of Bitcoin Core, the amount of data that can be included is limited to just 83 bytes, or roughly the length of a short text message, and only allows one such ‘note’ per transaction.
When these transactions get added to Bitcoin’s blockchain, the OP_RETURN data included in them becomes immutable, immortalised forever on Bitcoin’s blockchain.
Over the years we have seen people find some interesting use cases for this. For example:
In block 437,760 in 2016, amid rumors on 8chan that WikiLeaks founder Julian Assange had died, WikiLeaks used OP_RETURN to publish the message “we’re fine, 8chan post fake” to counter the false claims in a way that everyone could verify.
In 2018 in block 503,888, another user embedded the romantic message “Yuki will you marry me? Tetsu.” An immutable marriage proposal! You have to admit it’s a pretty creative and romantic way to use an immutable ledger.
And in 2021, in block 686,474, El Salvador marked their historic adoption of Bitcoin as legal tender by using OP_RETURN to encode the message “Diario El Salvador 6/Jun/2021 Bitcoin tendra Validez Legal” into Bitcoin’s blockchain.
These three examples are fairly benign, and to a certain extent you could even call them useful or historic. They are pretty infrequent and by and large most people pay little attention to them. By remaining under the 83 byte limit, they don’t cause a lot of bloat on the blockchain and don’t cause any meaningful headaches for node runners.
In any event, if node runners were strongly opposed to these types of transactions, then the current implementation of Bitcoin Core allows them to change settings called ‘datacarrier’ and ‘datacarriersize’ and filter them out. They don’t have to relay them through their own mempool if they choose not to.

Bitcoin Core’s Controversial New Proposal
The reason that OP_RETURN has suddenly become so controversial is because Bitcoin Core developer Peter Todd’s new proposal (‘Pull Request #32359’) seeks to remove the current 83 byte data limit altogether, allowing users to attach significantly more data to their transactions using this method.
And alongside this change, Bitcoin Core are also planning to remove the settings (‘datacarrier’ and ‘datacarriersize’) that allow individual node runners to set their own preferences about which types of transactions they relay to the rest of the network via their mempool.

Bitcoin Core itself is the most widely adopted Bitcoin client with more than 96% of nodes on the network running it. There are other implementations, the most popular being Bitcoin Knots, but their adoption is very small in comparison. This is significant because it means that if these updates are made by Core, there’s a strong likelihood that a lot of nodes on the network will adopt them, even if just by default.
If the majority of nodes do adopt these changes, then people wishing to include larger amounts of data in their transactions using OP_RETURN will arguably find it much easier to have these transactions propagate around the network.

This change could potentially make it much easier for people to immortalise arbitrary data on Bitcoin’s immutable blockchain and in formats much larger than the messages we referenced earlier. In theory it could open up possibilities to store things like legal contracts, notarised documents, or long form texts like whitepapers or manifestos.
At first glance, some of those things sound like they could be useful. But remember, Bitcoin is permissionless and changes like this could open the door to undesirable second order effects.
What if people start using OP_RETRUN to store illegal content, spam the network or god forbid produce thousands of soulless ‘generative art’ collections trying to pass themselves off as something meaningful rather than just a shameless grift?

The only limiting factors to the proliferation of this larger OP_RETURN data would be blocksize and transaction costs. The more data a transaction contains, the more expensive it is to send, and there is also a limit to how much data each Bitcoin block can contain.
These proposed changes are controversial because it poses the question, Should Bitcoin be used as an immutable database used to store anything and everything, or should it remain focussed on being used solely as a decentralised peer to peer payment system? If Bitcoin’s blockchain is increasingly used to store non-financial information, does that crowd out users who just want to use it as money?
It’s these questions that are driving all of the animosity and division within the Bitcoin community. These two positions are diametrically opposed meaning it’s inevitable that those falling either side of the fence on this topic will clash.

A lot of controversies in Bitcoin last just a few days. This debate however feels very reminiscent of the blocksize wars and is likely to drag on for a lot longer. You might want to settle in for the long haul.
The Proponents’ Case - Bitcoin Should Evolve
Now we have a high level understanding of what the proposed changes are, and their potential implications, let’s start to explore the various arguments being made by those who support it:
New Use Cases for Bitcoin
Within the broader group of people who support these changes lies a subset who favour them because they believe it will deliver new ‘use cases’ for Bitcoin. By allowing more data to be inscribed onto Bitcoin’s blockchain it will give developers more ways to experiment.
The immutability of Bitcoin’s blockchain is a very unique characteristic and there are a lot of people who would like to find ways to leverage this property. Some developers believe this could allow things like decentralised voting systems, identity systems, and ways to provide verifiable records.
In fairness to Bitcoin Core, these new ‘use cases’ don’t appear to be the driving motivation behind the changes, unless you believe they might be concealing it.
(There are very strong arguments to suggest these ideas are fundamentally flawed and unworkable from inception anyway regardless of whether you can store data on Bitcoin. We don’t have time to discuss it here but we explain this in more detail in this article: Bitcoin Not Blockchain)

The Current ‘Spam Filters’ Don’t Work
A more technical justification being used for removing the 83 byte limit on the amount of data that can be included in current transactions is that these 83-byte ‘spam filters’ aren’t 100% effective.
Supporters of the changes point to the fact that despite these filters currently being in place, people are still able to find workarounds that allow them to include more than 83 bytes of data into a transaction. People are already bypassing the filters by stuffing data into things like bare multisig scripts or segwit witness data, and there are at least 5 known workarounds to using OP_RETURN to include data in transactions.

They argue that these alternative methods are actually more harmful. Unlike OP_RETURN data which is marked as unspendable and can be pruned by nodes, the alternatives create unique UTXOs. This creates bloat of the UTXO set which unlike OP_RETURN data is something nodes have to reference frequently to validate transactions.
This line of argumentation is not without evidence. In 2023 / 2024 millions of UTXOs were added to the UTXO set due to BRC-20 tokens and Ordinals. Like it or not, every single node on the network now stores this data permanently regardless of any mempool filters on their node.
Supporters of Core’s updates argue that if people are going to find ways around OP_RETURN filters anyway, then it’s better to remove them so at least the data inscribed to Bitcoin’s blockchain is more likely to be done in a more appropriate place than UTXOs. This could actually keep the blockchain leaner. Afterall, you can prune OP_RETURN data, but you can’t prune UTXOs.
Spammers Will Submit Transactions Directly to Miners
Another argument being made by those that support removing the OP_RETURN filters is that by placing limitations on which transactions they will relay around the network, node runners will create an incentive that encourages these transactions to be submitted directly to miners to try and get included in a block.
They argue that this could lead to increased centralisation in mining because those wishing to make these larger transactions will only work with larger miners due to practicality and that this will create a disparity between the transactions being relayed by nodes and what is being included in blocks by the miners. If this gives larger miners a slight profitability advantage it could lead toward centralisation.
These arguments are a little more complex and theoretical but do carry some weight. The best explanation we could find was posted in 2025 by Greg Maxwell, one of Bitcoin’s most influential contributors to Bitcoin’s technical development between 2011 and 2018.

OP_RETURN Filters Equate to Censorship
Some people in favour of Core’s decision to remove the OP_RETURN filters argue that having them in place is the equivalent of censorship. By filtering transactions that are valid at a protocol level, you are restricting how people use Bitcoin despite them adhering to the rules. It raises the question “who defines spam?”
For example if OP_RETURN were removed or strictly limited it would limit users from using certain privacy tools like PayNyms (BIP 47) or Samourai’s Whirlpool as these services need OP_RETURN in order to store metadata for signaling and coordination.
Everybody probably agrees that NFTs are ‘spam’ but is that also true of data that enables privacy tools?

Those in favour of removing the OP_RETURN filters claim that they challenge the fundamental principles of Bitcoin. If transactions are valid and pay the appropriate fees to be included in a block, then it shouldn’t be possible to censor them. They would argue that if people truly want to enforce rules to prevent arbitrary data on the network, then the only truly effective way to do it would be to enforce stricter controls at a protocol level.
Of course, any changes at a protocol level would result in a fork. If this debate reaches that point, you can expect the division within the community to become even more ferocious!

The Opponents’ Case - Bitcoin Should Remain a Financial Network Only
Now that we’ve explored the proposed changes to Bitcoin Core and the arguments being made by those that support it, let’s cross to the other side of the debate to appraise the reasons why some people are so vehemently against them.
People are concerned for a variety of reasons:
Subversion of Bitcoin as a Financial Network
The primary reason people are so opposed to this change being pushed by Bitcoin Core is that they believe it acts as a subversion of Bitcoin’s original purpose, to be used as a peer to peer electronic cash system. Satoshi designed a monetary network not a general purpose data storage platform.
Opponents argue that removing the OP_RETURN filters will make it much easier for transactions carrying arbitrary data to propagate throughout the network and make it more likely they will be picked up by miners and included in the blockchain.
The argument being made here is that by making it easier for people to store arbitrary data on Bitcoin’s blockchain it will diminish available bandwidth and make it harder for users to use the network for its intended purpose, financial transactions. Blockspace is limited and any data added to the blockchain will necessarily consume it.
Critics claim that this is at odds with the wishes of the wider Bitcoin community who want to use Bitcoin as a monetary network and that Bitcoin Core is trying to force consensus without support from the wider community.

The Filters Do Work!
Bitcoin Core claims that removing the OP_RETURN filters makes sense because they are already being overcome in other potentially more harmful ways and it’s better to have arbitrary data in OP_RETURN than causing bloat in the UTXO set.
There is validity to the claim that storing arbitrary data using OP_RETURN might be preferable to bloating the UTXO set, but people opposed to the changes claim it will eventually lead to the problem getting worse rather than better. Removing the filters entirely makes it easier for ‘spammers’ to inscribe data to Bitcoin’s blockchain compared to the more complicated work arounds and by doing so it could potentially encourage the behaviour.
They also point out that even if you were to remove OP_RETURN filters, spammers will continue using their current methods like Segwit because it’s actually cheaper to do so. Removing the filters won’t stop spammers using methods that cause UTXO bloat, all it will achieve is opening up a new avenue for abuse.
If these changes result in an explosion of data being recorded on Bitcoin’s blockchain, then this could lead to some negative consequences. Bitcoiners who wish to use Bitcoin for financial transactions could find them competing for limited blockspace with those who want to use it to store data instead.
Opponents to Core’s changes will often pose the question - “If the filters don’t work to discourage spam, then why would there be any benefit to removing them in the first place?”
At which point the people in favour of the changes say that the spam will happen anyway via other methods clogging up the UTXO set AND the blockchain, so it’s better to put the spam in OP_RETURN where it can be pruned unless you want to fork off and block spam completely at a protocol level. Although this argument relies heavily on the assumption that spammers would use OP_RETURN instead of their current UTXO heavy methods.

(At this point the argument can get quite recursive and you have to accept that nobody can predict with exact precision how these changes would work out and there will always be second order effects that nobody predicts).
Alleged Censorship and Corporate Interests
A sore point in this whole debate is the perception a lot of people have that Bitcoin Core is not behaving in an open and transparent way.
Critics claim that maintainers are silencing opposition to the changes by muting or banning contributors like Luke Dashjr and Bitcoin Mechanic on Github, preventing them from debating the proposal’s risks. The allegations include selective moderation, and locking discussions to limit comments just to those people who support the changes.

Bitcoin Core maintainers have tried to justify their actions by arguing that moderation is necessary to maintain productive discussions. They claim that muted or banned contributors, like Luke Dashjr, engaged in abusive or off-topic behavior and were derailing technical debates making it impossible to focus on code review.
Whatever the reasons, this has caused a lot of people to question whether Bitcoin Core wields too much power in their ability to silence dissent and move forward with proposals that have not achieved any sort of rough consensus within the community.
The argument is becoming increasingly heated and in some cases very personal with some people claiming that Core Contributors may have conflicts of interest from ties to projects that may benefit from the changes.
All of the above is disputed fiercely by both sides and it looks unlikely that the mud slinging will stop anytime soon.
A Reduction In Sovereignty
One particular gripe that a lot of people have with Bitcoin Core’s proposed changes to their software is that it removes features that give people more control over how their Bitcoin node operates.
Bitcoin Core’s proposal removes the OP_RETURN limits on transactions but also goes as far as to prevent users from adjusting any settings related to it on their nodes. Previously users could change ‘datacarrier’ and ‘datacarriersize’ settings on their nodes and decide for themselves which transactions they would accept in their mempool. With Core’s proposed changes they would no longer be given a choice.
To many in the community this feels like a direct affront to their sovereignty. Why should a node runner not be allowed to manage these settings locally? To many this raises concerns that Core wants to make these decisions on their behalf and force the changes through more unilaterally across the network.

The Choice is Yours - Run Bitcoin Your Way
We appreciate that this is a lot to unpack and the reality is, this article barely skims the surface of all the myriad arguments being made, the technical and economic trade-offs, and the possible motivations of those involved. At some point someone will probably write a book about this just like with the Blocksize Wars.

The good news is, you’re still in control. Regardless of which side of the debate you fall on, the way you interact with Bitcoin’s network will always be down to you. Nobody can force you to adopt these changes, and you will always be free to run any software implementation you wish on your own node.
If anything, all of this OP_RETURN drama is a perfect example of why running your own node matters. It allows you to make your own decisions. You could stick with Bitcoin Core and accept the proposed changes or you could switch to an alternative like Bitcoin Knots. You could even decide to keep running Bitcoin Core and just not update to the latest version that contains these changes.
Ultimately the choice is yours.
To help you get a sense of the trade-offs here is a brief summary of how these implementations differ in regards to how they handle OP_RETURN:

(Other node implementations are available and there are far more variables than this that would be important to consider).
A Note From The Author
Hopefully this article has helped in some way to demystify things, but please bear in mind that this debate is extremely broad in nature. It has aspects that are both technical and philosophical and contains a lot of nuance. Some of these arguments date back years to the time when Satoshi was still around and it’s unlikely that it will all be settled in the coming weeks.
To the best of my ability I have tried hard to present these arguments as objectively as possible. My goal is to help you understand the arguments from both sides to help you draw your own conclusions.
If you’re feeling overwhelmed you’re not alone. I have probably changed my own opinion 3 or 4 times just writing this article and still don’t claim to fully understand all the nuances or technical elements completely. That’s the trouble when Core developers start arguing with each other. For us mere mortals, making sense of it all can be a painful experience.
This is how I looked writing this article:

If I could offer any advice it would be to move slowly and try to make considered decisions. Having lived through several Bitcoin ‘wars’ I have learned that jumping to conclusions too quickly or getting sucked into tribalism can easily lead you astray. Play it cool, and assess your options carefully.
This isn’t a protocol change, your funds are safe, and if you run your own node you will always have the freedom to run whatever software you like. Just take your time and use it as an opportunity to learn as much as you can.
Nerds arguing over software is nothing new and will continue indefinitely. It’s OK to go outside and touch grass once in a while.

Your Bitcoin Node, Your Rules - The Bitcoin Way
Bitcoin lives right at the bleeding edge of technology and things will continue to change and evolve along the way. This can be stressful and confusing at times but the rewards are well worth it.
The best way to protect your interests along the way is to become fully self-sovereign. If these debates demonstrate anything it’s that you should be running your own Bitcoin node if you want to remain in control of your own choices.
If you want help navigating exactly how to do that. Our experts will equip you with the skills to make choices that reflect your values. Join us, and let’s build your Bitcoin journey together. Your node, your rules, your way.
Schedule a free 30-minute call to get started.