Runes vs BRC-20: Bitcoin Token Standard Comparison
Compare Runes and BRC-20 token standards on Bitcoin across efficiency, UTXO impact, tooling, and adoption.
Runes vs BRC-20 at a Glance
Bitcoin now supports multiple fungible token standards, each with fundamentally different architectures. BRC-20, introduced in March 2023 by the pseudonymous developer domo, uses Ordinals inscriptions to embed JSON data in transaction witness fields. Runes, created by Ordinals inventor Casey Rodarmor, launched at block 840,000 on April 20, 2024 (coinciding with the Bitcoin halving) and stores token data directly in OP_RETURN outputs using Bitcoin's native UTXO model.
The distinction matters for developers, miners, and node operators. BRC-20 created millions of unspendable UTXOs that permanently bloated Bitcoin's chainstate, while Runes was purpose-built to avoid that problem. The following table summarizes the core differences.
| Feature | Runes | BRC-20 |
|---|---|---|
| Launch date | April 20, 2024 (block 840,000) | March 2023 |
| Creator | Casey Rodarmor | domo (pseudonymous) |
| Data storage | OP_RETURN (provably unspendable) | Witness data (Ordinals inscriptions) |
| Balance model | UTXO-native (balances live in UTXOs) | Off-chain indexer (JSON state tracking) |
| On-chain footprint | ~80 bytes per operation | Up to 4 MB per inscription |
| UTXO set impact | Minimal (no junk UTXOs) | Severe bloat (millions of junk UTXOs) |
| Indexer required | Yes (ord) | Yes (multiple implementations) |
| Lightning compatibility | Possible (UTXO-native) | Not compatible |
| Premine support | Yes (configurable) | No |
| Minting options | Open or closed, with terms | Open only (first-come-first-served) |
For a broader view of all Bitcoin token protocols including RGB and Taproot Assets, see our Bitcoin token standard comparison.
Technical Architecture
How BRC-20 Works
BRC-20 piggybacks on the Ordinals protocol, which assigns sequential numbers to individual satoshis and allows data to be inscribed into witness data via Taproot script-path spends. A BRC-20 token lifecycle involves three JSON inscription types: deploy (creates a token with a name, supply cap, and mint limit), mint (claims units up to the per-mint limit), and transfer (moves tokens between addresses).
Critically, Bitcoin nodes do not understand BRC-20 balances. The JSON inscriptions are just arbitrary data from the protocol's perspective. An off-chain indexer must scan every block, parse the JSON, and maintain a separate ledger of who owns what. If two indexers disagree, users can end up with conflicting views of token balances.
How Runes Works
Runes encodes token operations in OP_RETURN outputs, which are provably unspendable and excluded from the UTXO set. A Runes protocol message (called a "runestone") is stored in a transaction output whose script begins with OP_RETURN followed by OP_13. The data pushes are concatenated and decoded into 128-bit integers that specify token operations.
Runes supports three primary operations: etching (creating a new token with optional premine and minting terms), minting (claiming units of an open-mint token), and transferring via edicts (instructions that allocate rune balances to specific transaction outputs). After all edicts are processed, any remaining unallocated runes default to the first non-OP_RETURN output.
Malformed runestones are called "cenotaphs." When a transaction contains a cenotaph, all input runes are burned and any newly etched rune is marked unmintable. This is a deliberate design choice: rather than silently misallocating tokens, the protocol destroys them, preventing accidental state corruption.
UTXO Set Impact
The most significant technical difference between Runes and BRC-20 is their impact on the UTXO set. The UTXO set is the database every full node must keep in memory to validate transactions. A larger UTXO set means higher memory and storage requirements for anyone running a Bitcoin node.
BRC-20's inscription-based design generates large numbers of small, effectively unspendable outputs. Between April and November 2023, the UTXO set ballooned from approximately 86 million entries (5 GB) to over 140 million entries (8.74 GB). By early 2024, the chainstate had exceeded 11 GB. Much of this growth was directly attributable to BRC-20 minting activity, which sprayed thousands of tiny outputs across the ledger with no economic incentive to consolidate them.
Runes avoids this problem by design. Token data lives in OP_RETURN outputs, which nodes prune immediately because they are provably unspendable. Token balances are tracked within regular UTXOs that follow normal spending patterns. When a Runes UTXO is spent, it leaves the set like any other transaction output.
Block Space and Fee Dynamics
Both standards have had measurable effects on Bitcoin's fee market. The BRC-20 minting frenzy in May 2023 pushed average transaction fees above $30, congesting the mempool for days. A second wave in December 2023 produced similar spikes.
The Runes launch on April 20, 2024 generated the most dramatic fee event. Within hours of block 840,000, Runes transactions consumed over 80% of all Bitcoin network fees. Average fees climbed to $90 to $120, with priority transactions briefly exceeding $200. Runes accounted for roughly 40% of all Bitcoin transactions in the weeks following launch. Miners earned record fees: block 840,000 itself generated over 37 BTC in fees.
However, activity normalized quickly. Within a year, Runes' share of network fees dropped from over 90% at peak to under 2%. For a deeper analysis of how token protocols affect Bitcoin's fee market, see our research on the Bitcoin fee market dynamics and the Bitcoin second-layer scaling landscape.
Rodarmor's Design Rationale
Casey Rodarmor announced the Runes concept in a September 2023 blog post. His reasoning was pragmatic rather than idealistic. He acknowledged that "fungible tokens are 99.9% scams and memes" but argued they "don't appear to be going away any time soon." His position: if people are going to create fungible tokens on Bitcoin regardless, a protocol that minimizes on-chain damage is preferable to one that bloats the UTXO set.
Rodarmor framed Runes as the "less bad" option, comparing it to harm reduction rather than prohibition. He believed a well-designed fungible token protocol could "bring significant transaction fee revenue, developer mindshare, and users to Bitcoin" while keeping the network healthy. The UTXO-native design was central to this goal: tokens that follow UTXO spending rules do not leave permanent debris in the chainstate.
Wallet and Marketplace Support
Both standards are supported by the major Bitcoin-native wallets, though tooling maturity varies.
| Platform | BRC-20 Support | Runes Support | Type |
|---|---|---|---|
| Xverse | Yes | Yes (with built-in swap) | Wallet |
| UniSat | Yes | Yes | Wallet + Marketplace |
| OKX Wallet | Yes | Yes | Wallet + Marketplace |
| Leather | Yes | Yes | Wallet |
| Magic Eden | Discontinued (March 2026) | Discontinued (March 2026) | Marketplace |
| Horizon Market | Yes | Yes | Marketplace (launched March 2026) |
| UniSat Hexa | Yes | Yes | Trading engine (hybrid DEX) |
Magic Eden, previously the largest marketplace for Bitcoin-native assets, shut down its Ordinals, Runes, and EVM NFT support in March 2026. Trading migrated primarily to UniSat, Xverse's built-in swap feature, and the Horizon Market, which launched on March 30, 2026 as a unified platform for all major Bitcoin token protocols.
Indexer Dependency
Both BRC-20 and Runes rely on off-chain indexers to interpret token state. Bitcoin's base layer does not natively understand either protocol. This creates a shared limitation: token validity depends on the indexer's interpretation, not on consensus rules enforced by miners.
For BRC-20, multiple competing indexer implementations have occasionally produced divergent state, leading to confusion about "true" balances. The BRC-20 community has worked to standardize indexer behavior, but the JSON-inscription approach leaves more room for parsing ambiguity.
Runes uses the ord indexer (the same software that powers Ordinals). Because Runes data is structured as binary-encoded integers rather than freeform JSON, parsing is more deterministic. The cenotaph mechanism also reduces ambiguity: if a runestone cannot be parsed cleanly, all associated runes are burned rather than misallocated.
Notable Tokens
Both ecosystems have produced tokens with significant market activity, though valuations fluctuate heavily.
Top BRC-20 tokens:
- ORDI: the first BRC-20 token ever created, reaching exchange listings on major centralized platforms including Binance and OKX
- SATS: the largest BRC-20 by unit count, designed around Bitcoin's smallest denomination
- RATS and MUBI: secondary BRC-20 tokens with active trading communities
Top Runes tokens:
- DOG•GO•TO•THE•MOON: the largest Runes token by market cap, which approached $1 billion in valuation during late 2024
- RSIC•GENESIS•RUNE: one of the earliest Runes, airdropped to early Ordinals adopters as the 8th rune etched on the protocol
Both ecosystems remain heavily driven by speculative and meme-oriented projects. Utility-focused tokens represent a small fraction of total activity. For more context on the evolution of these ecosystems, see our research on Ordinals and BRC-20 evolution.
Developer Tooling
BRC-20 development relies on community-built libraries and the broader Ordinals tooling ecosystem. Developers interact with BRC-20 tokens primarily through inscription services and indexer APIs. The JSON-based format is straightforward to generate but offers limited programmability.
Runes development centers on the ord command-line client maintained by the Ordinals project. The same tool handles inscription creation, rune etching, and indexing. Because rune balances are UTXO-native, they integrate with standard Bitcoin transaction construction tools including PSBTs and coin control workflows. This UTXO-native design also opens a path toward Lightning Network compatibility, since Lightning channels operate on UTXOs.
The broader Bitcoin scaling landscape continues to evolve. Protocols like Taproot Assets and RGB take different approaches to token issuance, with client-side validation and native Lightning support. Layer 2 solutions such as Spark enable fast, low-cost transfers of Bitcoin and stablecoins like USDB without the on-chain footprint concerns that affect both Runes and BRC-20.
How to Choose Between Runes and BRC-20
If you prioritize on-chain efficiency and UTXO hygiene: Runes is the clear choice. Its OP_RETURN-based design avoids permanent UTXO set bloat and produces a smaller on-chain footprint per operation.
If you want the largest existing ecosystem of established tokens: BRC-20 has a longer track record. ORDI is listed on major centralized exchanges, and the BRC-20 ecosystem has more trading infrastructure built around it.
If Lightning compatibility matters: Runes' UTXO-native model is architecturally compatible with payment channels, whereas BRC-20's inscription-based approach is not.
If you are building a new token project: Runes offers more flexibility with configurable minting terms, premine options, and open or closed minting. BRC-20 supports only open, first-come-first-served minting.
For a broader comparison including RGB Protocol and Taproot Assets, see our Bitcoin Ordinals and inscriptions guide.
Frequently Asked Questions
What is the difference between Runes and BRC-20?
Runes stores token data in OP_RETURN outputs using Bitcoin's native UTXO model, while BRC-20 uses JSON inscriptions embedded in Taproot witness data via the Ordinals protocol. Runes produces a smaller on-chain footprint (~80 bytes vs up to 4 MB), avoids creating junk UTXOs, and supports configurable minting terms. BRC-20 has a longer track record and more established exchange listings.
Do Runes cause Bitcoin UTXO bloat?
No. Runes was specifically designed to avoid UTXO bloat. Token data is stored in OP_RETURN outputs, which are provably unspendable and immediately pruned from the UTXO set. Token balances attach to regular UTXOs that follow standard spending patterns. By contrast, BRC-20 minting caused the UTXO set to grow from approximately 86 million entries to over 140 million entries between April and November 2023.
Can Runes tokens be used on the Lightning Network?
Runes' UTXO-native design is architecturally compatible with the Lightning Network, since Lightning channels are built on UTXOs. However, full Lightning integration for Runes tokens has not been widely deployed. BRC-20 tokens, which use inscription-based tracking rather than UTXO balances, are not compatible with Lightning channels.
Which wallets support both Runes and BRC-20?
Xverse, UniSat, OKX Wallet, and Leather all support both Runes and BRC-20 tokens. Xverse includes a built-in Runes swap feature. UniSat launched the Hexa hybrid trading engine in 2025 for trading BRC-20, Runes, and Taproot Assets. Magic Eden discontinued Bitcoin token support in March 2026, with trading migrating to UniSat, Xverse, and the Horizon Market.
Why did Casey Rodarmor create Runes?
Rodarmor observed that BRC-20 and similar protocols were creating permanent UTXO bloat on Bitcoin. Rather than try to stop fungible token activity, he designed Runes as a "less bad" alternative: a protocol that accommodates token creation while minimizing on-chain damage. He acknowledged that most fungible tokens are speculative but argued that a well-designed protocol could bring fee revenue, developer interest, and users to Bitcoin without degrading the network.
Are BRC-20 tokens still actively traded?
Yes. BRC-20 tokens like ORDI and SATS continue to trade on centralized exchanges and through UniSat's marketplace. The BRC-20 sector saw renewed interest in April 2026, with ORDI surging over 100% in a single day. However, overall BRC-20 market capitalization and on-chain activity have declined significantly from the peak levels of late 2023.
What happens if a Runes transaction is malformed?
A malformed Runes transaction produces a "cenotaph." When this occurs, all rune balances input to that transaction are burned, and any rune being etched in the transaction is marked permanently unmintable. This is a deliberate safety mechanism: the protocol destroys tokens rather than risk misallocating them due to parsing errors.
This tool is for informational purposes only and does not constitute financial advice. Data is approximate and based on publicly available information. Market caps, trading volumes, and ecosystem support change frequently. Always verify current data before making decisions.
Build with Spark
Integrate bitcoin, Lightning, and stablecoins into your app with a few lines of code.
Read the docs →
