Tutorials

What Are Runes? A Beginner's Guide

December 16, 2024
min read

Bitcoin-native assets gained momentum in 2023 with the launch of Ordinals and are likely to continue with the introduction of the Runes Protocol in April 2024. 

In this guide, you will learn about Bitcoin Runes tokens and how they might impact the Bitcoin ecosystem.

What Is the Runes Protocol on Bitcoin?

The Runes protocol is a token standard for issuing fungible tokens on Bitcoin that seeks to give users a more efficient way of creating fungible tokens. 

Runes were launched during the fourth Bitcoin halving in April 2024. 

Since then, millions of runes have been minted, and the total runes market cap has surpassed $1 billion, marking them as another significant development in the Bitcoin ecosystem.

Who Created the Runes Protocol?

Bitcoin developer Casey Rodarmor proposed the Runes protocol in September 2023 as an improved token standard for fungible asset issuance on Bitcoin, and prepared the protocol for its launch at the time of the halving. 

Rodarmor is a well-known developer in the crypto space. He is the creator of the Ordinals Protocol, which developers have used to develop various token standards for native asset issuance on Bitcoin. 

Even before Runes launched, a few developers were already building projects based on it. 

Today, dozens of notable projects have launched using this protocol, including DOG•GO•TO•THE•MOON, one of the most popular meme runes and chronologically the third rune to launch; BILLION•DOLLAR•CAT, a later project with a similar aim like DOG; and PUPS•WORLD•PEACE, to mention a few. 

Runes are often created as meme coins, so the choice of name and logo usually corresponds with a meme within the target community. 

Why Was the Runes Protocol Created?

On his blog, Rodarmor describes Runes as a simple protocol with minimal on-chain footprint and responsible UTXO management. 

UTXOs (Unspent Transaction Outputs) are individual units of Bitcoin value associated with specific addresses on the blockchain, representing funds that have not yet been spent and can be used as inputs in new transactions.

Runes is different from the BRC-20 token standard, which is complex and not UTXO-based. The latter characteristic causes the BRC-20 token standard to produce excessive junk UTXOs, which congest the Bitcoin network. 

The goal of Runes is to replace the less efficient Ordinals-based BRC-20 token standard.

Furthermore, the Runes protocol also strives to be better than other existing fungible token protocols on Bitcoin like RGB and Taproot Assets. These options rely on off-chain data. 

For instance, Taproot Assets stores the metadata of its assets off-chain, making the asset information detached from Bitcoin’s main layer. On the other hand, options like Omni Layer and Counterparty need a native token to operate. In a nutshell, Rodarmor believes that these issues make these existing protocols cumbersome and less user-friendly. 

How Does the Runes Protocol Work?

Let’s look at how the Runes protocol works, starting with an overview.

Overview

The Runes UTXO-based model integrates naturally with Bitcoin, which uses UTXOs. This helps minimize the creation of junk UTXOs, which can clog the network. 

A UTXO is a specified quantity of BTC you haven’t yet spent, which you can use to make a new payment. It’s an output of a previous Bitcoin transaction and remains available for spending until it is used as an input in a new transaction.

A Rune is assigned to a UTXO through a protocol message that designates the output, ID, and amount using OP_RETURN. 

OP_RETURN is a unique function for data storage on Bitcoin. OP_RETURN outputs don't congest the UTXO set since they are provably unspendable. 

The ID is a numeric identifier of the Rune, while the output specifies the output index to receive the Rune token. The amount defines how many Rune tokens will be transferred. 

All rune messages, be it creating (etching) new runes or transferring runes, are encoded in a single OP_RETURN output in a transaction. Divisibility, rune name, and other metadata are in the same OP_RETURN in the same transaction.

The token supply of a Rune is contained in a single UTXO. The supply/transfer amount is a 128-bit unsigned integer, so the maximum is 340282366920938463463374607431768211455. Each rune has a "divisibility," which is the number of decimals it can have. The maximum is 38. The human-readable maximum supply also has this many decimals, e.g., with 18 decimal places (similar to most ERC-20 tokens), the human-readable max supply is 3402823669209384634633.74607431768211455. 

UTXOs are used to track the balances of Runes tokens. Interestingly, the Runes protocol doesn’t link the balance record of a token to a wallet address but holds it within a UTXO.

Runes are transferred with a bitcoin transaction with an OP_RETURN output that specifies what amounts of runes from inputs go to what UTXOs.

Etching, Minting, Transferring & Cenotaphs

Runes are etched, minted, and transferred using runestones. A runestone is a Runes protocol message stored in a Bitcoin transaction output. Once the Runes protocol activates on Bitcoin block 840,000, all runestones in earlier blocks will be disregarded.

In theory, a runestone has the following fields:

Source: Github

Etching is the process of creating a new rune and setting its properties. These properties include:

  • Name: A rune token should contain letters between one and 28 characters long. For example, UNCOMMONGOODS is a rune's name. 
  • Divisibility: Divisibility is the number of units a rune can be divided into. 
  • Symbol: This is the currency symbol of a rune. It is displayed after the quantity of a rune. Runes without a symbol are given the generic scarab (`¤`)sign.
  • Premine: A premine refers to the initial allocation of runes set aside by its creator.
  • Terms: Terms established during an open mint allow anyone to mint and allocate units.
  • Cap: This is the number of times a rune token can be minted.
  • Amount: This property defines the fixed amount of rune units created with each mint transaction.
  • Start height: An etcher uses this element to say that minting will begin in the block with a specific start height.
  • End height: A creator uses this property to prevent minting in or after a block with a given end height.

Once the rune is etched and the properties are set, the next step is minting

Etchers are required to enter the Rune ID in the mint field when minting tokens. A rune ID contains the transaction index and block height (a block’s location in the blockchain measured by how many blocks came before it) of the transaction in which the token was etched. 

The Runes protocol allows open minting just like the BRC-20 token standard. However, open minting in Runes is subject to the terms established during etching.

The next step after minting is transferring a rune from a transaction input to output using an instruction known as an edict. 

Edicts are messages defining how a rune should be transferred from an input to an output. They contain the output number, the rune’s ID, and the amount. Edicts are specified in OP_RETURN, and runestones can have any number of edicts. The Runes protocol can allow users to make batch transfers, airdrop runes, and transfer all remaining units of that rune ID. 

Below is the code of runes transferred by edict:

Source: Github

Runestones with errors are called cenotaphs, and they could result from inaccurate encoding or missed outputs. The Runes protocol burns tokens in transactions with a cenotaph to encourage users to practice proper UTXO management. This differs from the BRC-20 token standard that permits users to try again when they make mistakes.

BE THE FIRST TO USE ZERO

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

BRC-20 vs. Runes: What’s the Difference?

Here is a comparison between the BRC-20 and Runes token standards.

The most notable difference between Runes and BRC-20 is the former’s reliance on a UTXO-based model that lowers the on-chain footprint compared to the latter. By using this feature that better fits into Bitcoin’s architecture, Runes decreases the amount of so-called “junk UTXOs” that remain after BRC-20 issuance.

Additionally, Runes offers improvements across other areas, like making errors non-permissible, simplifying the design for an easier onboarding process for new users, and including Lightning Network compatibility for faster and cheaper transactions.

What Will Runes Bring to the Bitcoin Ecosystem?

Let’s look at the possible advantages of the Runes protocol.

More Users

The Runes protocol will allow projects to issue different types of fungible tokens, such as security tokens, stablecoins, and governance tokens, on the Bitcoin blockchain. This could expand Bitcoin’s utility and attract more users, who will enjoy near-instant and low-cost transactions due to the protocol’s potential Lightning compatibility. In other words, Runes could help Bitcoin achieve its goal of widespread adoption.

Increased Revenue

More transaction fees will be generated as more people interact with Runes tokens. This will boost revenue for miners, incentivizing them to keep securing the Bitcoin network. With the block reward set to decrease further in April 2024, Bitcoin miners will be in need of more revenue drivers and Runes could be just the protocol needed to keep miners motivated. 

Innovation

The Runes protocol is encouraging developers to innovate in new and exciting ways, giving users a chance to experience activities on the Bitcoin blockchain that no one would have ever thought possible. It will also open the door for developers wanting to tap into Bitcoin development while doing so on the world’s most stable and secure public blockchain. 

Effective Issuance of Fungible Tokens

The Runes protocol seeks to enable asset issuance directly on Bitcoin with as few minimal negative effects as possible. As mentioned earlier, the protocol is improving on the current fungible token protocols that rely on native tokens and off-chain data. Moreover, its design is better thought out than the BRC-20 token standard, which was rolled out for fun to showcase what the Ordinals protocol can achieve. Therefore, the seriousness of this protocol could potentially make Runes more successful than BRC-20 tokens.

Rodarmor plans to introduce direct trading between users in the unspecified future. This could minimize reliance on centralized crypto exchanges and solve the problem of Replace-By-Fee (RBF). RBF is the process of replacing a previous unconfirmed transaction with another version that includes a higher transaction fee. RBF aims to encourage miners to prioritize the transaction with a higher fee.

Also, Rodarmor expects that once the OP_CAT Bitcoin Improvement Proposal (BIP) is approved, it will be possible to bridge runes tokens to Layer 2 networks. He estimates that the BIP will be introduced to Bitcoin within a year. OP_CAT is an operation code (opcode) in the original Bitcoin script. “CAT” represents the word “concatenate,” where two elements in a script are joined together. Satoshi Nakamoto disabled the opcode to prevent DoS attacks.

Although this proposed OP_CAT upgrade is said to have security risks, some developers claim it can enable bridging to other chains and enhance Bitcoin’s functionality.

How to Buy & Sell Runes on Sovryn DEX

You can buy and sell runes via Sovryn’s decentralized exchange (DEX) by following these simple steps.

First, you’ll need to set up a MetaMask wallet in your browser. 

Sovryn’s DEX 2.0 is built upon BOB (Build on Bitcoin), which hosts dapps built for Ethereum Virtual Machine (EVM)-compatible environments. MetaMask is an Ethereum-first wallet, making it a compatible choice for the DEX.

Then, you’ll need to fund your wallet. Transfer ETH from other wallets or exchanges so you can swap it for runes.

Since you’ll want to swap on BoB, you’ll need to add this network to your MetaMask wallet. 

Visit the BoB Explorer, find the Add BoB button with the MetaMask icon on the bottom left part of the page, and then follow the steps in your wallet to add this network.

After you get the notification that it was successfully added, click on ‘Import Tokens’ to choose the runes you want to buy. You’ll need to enter their address to import them; runes usually have this information on their websites. 

Once your rune shows up in MetaMask, it’s time to open the Sovryn dapp and swap your ETH for the runes of your choice. 

Make sure the dapp is set to the BoB network in the dropdown option in the upper right corner of the screen, then connect your wallet through the ‘Get Started’ button right next to it. Follow the steps shown on your screen.

Then, at the top of the screen, there’s a tab titled ‘Convert.’ Here, you can enter the coin you’re exchanging (in this case, ETH) and the one you’re receiving (a rune of your choice). 

When you click ‘Confirm,’ it’s only a matter of seconds before the rune lands in your wallet.

What’s Next For Runes?

The Runes protocol is up and running, with no significant changes since its launch. In more than half a year since their launch, runes made up around 0.05% of Bitcoin’s total market cap. 

While the number may seem small in percentage terms, the growth during the first months of Rune's existence and its market capitalization in the hundreds of millions of US dollars still indicate interest in this asset type from the Bitcoin user base.

Other improvements to the Runes protocol, like the bridging of runes to Layer 2 networks, depend upon the approval of the OP_CAT Bitcoin Improvement Proposal (BIP). There’s no timeline on when this may happen (if it happens at all, as this is up to the Bitcoin community), so these possibilities are currently pretty far off.

Connect your wallet to the Sovyrn DEX to start trading runes tokens.

FAQ

What is Runes on BTC? 

Runes is a protocol on Bitcoin that allows users to issue new fungible digital asset types. It addresses issues like “junk UTXOs” that came with the BRC-20 token standard and simplifies the token creation process. They’re considered to be another showcase of the potential within the Bitcoin ecosystem beyond payments and the store-of-value use case.

How to trade Runes on Bitcoin?

To trade runes on Bitcoin, you’ll need a wallet that supports them and a platform where you can swap your coins for runes. Sovryn DEX uses MetaMask on the BoB blockchain to let you send and receive the runes you can find on their platform. Once you’ve set up your wallet, the trading process is pretty straightforward and only takes a few minutes.

Sovryn

socials
learn more

Take your sovereignty to the next level

The road to financial self-sovereignty is long. Take a step in the right direction.