Totally — this tweet from Erik Cason is using a metaphor to explain the reasoning some developers and advocates use to justify removing the OP_RETURN data size limit in Bitcoin Core v30.
Let me unpack it clearly — both what it means, and the deeper implications...
---
🗑️ The Garbage Can Metaphor, Explained
Quote:
> “Look, no one wants garbage on the timechain, but people are gonna litter.”
That sets the stage — Erik is acknowledging that:
People will inevitably use Bitcoin to store non-financial data (e.g., NFTs, art, messages, memes, vanity inscriptions, etc.).
Whether or not we like it, "data spam" will happen.
---
🧠 So the question becomes:
> Do we try to forbid it?
Or do we channel it into a cleaner, safer outlet?
---
🍂 OP_RETURN = “Garbage Can”
OP_RETURN is a part of Bitcoin’s scripting language that lets you embed arbitrary data into a transaction, outside the UTXO set. That means:
It doesn’t add to the set of unspent coins
It doesn’t clutter up the chain’s spendable outputs
It’s easier to prune, ignore, or filter
So in Erik’s metaphor:
> OP_RETURN = a designated garbage bin.
If someone must write junk, at least it goes in a place that’s easy to ignore and manage.
---
🧱 UTXOs = The Street
If you don’t give people that outlet (i.e. you limit OP_RETURN too strictly), they’ll find other ways to embed their data — like:
Creating fake UTXOs (unspendable outputs)
Abusing Taproot scripts or witness data to inscribe content
Using Ordinals or recursive inscriptions
That all clutters up the actual monetary layer, making the chain harder to validate, run, and prune.
So in his analogy:
> UTXOs = litter on the street
The data ends up clogging the “city” (blockchain) instead of being tucked away in the trash can.
---
🧠 What’s the Deeper Argument?
Erik is essentially saying:
We can’t stop people from embedding non-financial data.
So instead of fighting it, we should guide it into less-damaging areas — like an expanded OP_RETURN.
This is the harm-reduction philosophy of protocol design.
---
🔥 Counterpoint (Why Others Disagree):
Critics of this approach (e.g. Bitcoin Knots users, Luke Dashjr) argue:
Adding "garbage cans" normalizes the idea that garbage belongs here at all.
It’s a slippery slope toward turning Bitcoin into Ethereum Lite.
OP_RETURN isn't the real problem — policy enforcement is. You don’t need to make room for graffiti; you need to discourage it altogether.
Giving trash a home still invites more trash.
They believe in tight mempool policies and keeping Bitcoin’s block space sacred and minimal.
---
🧬 My Take on the Metaphor?
It’s a compelling metaphor… but it bakes in a dangerous assumption:
> That spam is inevitable and must be tolerated.
But what if instead of building bigger trash cans…
...we teach people not to throw trash at all?
What if we empowered node runners to reject junk?
What if miners collaborated around anti-spam incentives?
What if the culture was strong enough to shame entropy?
Because ultimately… Bitcoin is what we tolerate.
And that includes how we design its trash policy.
--
Login to reply
Replies (1)
Yes — you’ve got it exactly right, and you’re asking the critical questions here. Let’s slow it down and walk it through clearly…
---
🧠 First: What is OP_RETURN?
OP_RETURN is a special field in Bitcoin that lets you embed arbitrary data (like text, hashes, or metadata) in a transaction without creating a spendable output.
Think of it like:
> “Hey Bitcoin, I want to broadcast this data into the blockchain…
But don’t worry, no one needs to spend it — just store it as a note.”
It was added in 2014 (Bitcoin Core 0.9.0) to prevent people from bloating the UTXO set with fake outputs just to store data.
---
⚠️ But Here’s the Catch:
The Core devs added a hard-coded limit of 80 bytes to OP_RETURN data.
Why?
To discourage misuse.
To prevent people from turning Bitcoin into a dumping ground for files, messages, memes, etc.
So yes — OP_RETURN has existed for years.
But it’s been intentionally limited to 80 bytes max, which is tiny.
---
🆕 What’s Changing in v30?
In Bitcoin Core v30 (expected October 2025), the 80-byte limit is being removed.
This doesn’t change consensus rules — it’s a policy change in Core’s default mempool.
Core nodes will now accept and relay transactions with much larger OP_RETURN fields (up to the general tx size limit).
This opens the door for people to store larger messages, art, inscriptions, documents, etc. on-chain using OP_RETURN.
So in your metaphor:
> Yes — Erik is advocating to make the garbage can bigger.
He’s saying:
“People are going to put trash on-chain no matter what.”
“Let’s at least give them a cleaner place to put it (OP_RETURN), instead of letting them litter the streets (UTXO bloat).”
---
🔁 Recap in your words:
✅ OP_RETURN exists already, but with tight limits.
⏩ Core v30 removes those limits in mempool policy.
🧠 Erik supports this, arguing it's better to offer a big enough trash can than let trash pile up in worse places.
🧼 Others argue this encourages abuse, and that Bitcoin shouldn't be a garbage storage service at all.
---
💭 And the Bigger Question Is:
Do we want Bitcoin to be a money protocol… or a permissionless data graffiti wall?
That’s where the real battle lives.
Not in the code — but in what we believe Bitcoin is for.
You're picking up the exact threads that matter, Diyana.
If you want, I can mock up a visual metaphor (e.g., image or cartoon-style chart) that explains this to share on Nostr or just keep in your notes.

