Runes Protocol — The Proper Way to Do Tokens on Bitcoin
Casey Rodarmor's Runes protocol is the BRC-20 killer. UTXO-based, efficient, and doesn't bloat the chain. Here's the design.
Uvin Vindula — IAMUVIN
Published 2025-12-18 · Updated 2026-03-15
Runes Protocol Explained
After watching BRC-20 tokens bloat Bitcoin's UTXO set and clog the mempool, Casey Rodarmor (the creator of Ordinals) built something better: Runes. Launched at the April 2024 halving, Runes is a UTXO-based fungible token protocol that actually respects Bitcoin's architecture.
Why Runes Exists
BRC-20's problems were clear:
- UTXO bloat: BRC-20 creates "junk" UTXOs that every node must store forever
- Off-chain indexing: Balances exist only in indexer databases, not in Bitcoin's UTXO set
- Inefficient transfers: Two-step transfer process wastes block space
Runes addresses all of these.
How Runes Work
Rune balances are stored in Bitcoin UTXOs using OP_RETURN outputs. The protocol defines how rune balances are assigned to outputs within a transaction.
Key Design Decisions
- UTXO-based: Rune balances live in real UTXOs, not in off-chain databases. This means Bitcoin nodes naturally track them
- OP_RETURN: Protocol messages are in OP_RETURN (prunable), not witness data. This is more honest — it doesn't exploit the witness discount
- Efficient transfers: Single-transaction transfers, unlike BRC-20's two-step process
- No junk UTXOs: Unallocated runes in a transaction are burned, not scattered into dust UTXOs
Etching (Deploying a Rune)
Creating a new rune is called "etching." The etcher specifies: name, symbol, supply, divisibility, and optional mint terms (open mint, capped mint, etc.). Rune names use a unique naming scheme with a decreasing character requirement over time.
Minting and Transferring
Minting follows the rules set during etching. Transfers use an "edict" system — instructions in the OP_RETURN that assign rune balances to specific outputs. Clean, efficient, and explicit.
Runes vs BRC-20 Comparison
| Feature | BRC-20 | Runes |
|---|---|---|
| Balance tracking | Off-chain indexer | UTXO-based |
| Data location | Witness (discounted) | OP_RETURN |
| Transfer steps | Two (inscribe + send) | One |
| UTXO impact | Creates junk UTXOs | Burns unallocated |
| Complexity | Simple but hacky | Well-designed |
Market Adoption
Runes launched with massive hype at the 2024 halving, driving fees to astronomical levels on launch day. After the initial mania cooled, Runes settled into a steady pace of adoption, accounting for a meaningful percentage of daily Bitcoin transactions.
My Take
If people are going to create tokens on Bitcoin (and they clearly are), I'd rather they use a protocol that respects the UTXO model and doesn't bloat the chain. Runes is a responsible design. Whether you think tokens on Bitcoin are a good idea is a separate philosophical question.
Runes is Casey Rodarmor saying: "If you're going to do this, at least do it properly." And he's right.
Track the latest Runes and Bitcoin development on our blog.

By Uvin Vindula — IAMUVIN
Sri Lanka's leading Bitcoin educator. Author of "The Rise of Bitcoin".
Learn more →Related Articles
The Bitcoin Brief: LK
Weekly Bitcoin insights, market analysis, and Sri Lanka crypto news. Join 1,000+ readers.
Unsubscribe anytime · Educational content only