BRC-20s
Last updated
Last updated
BRC-20 is an experimental token standard on Bitcoin that enables the creation and transfer of fungible tokens, inspired by Ethereum's ERC-20. It was introduced by a pseudonymous developer Domo in March 2023 and is built on top of the Ordinals protocol, using inscriptions to record token metadata.
Unlike native UTXO-based solutions (like Runes), BRC-20 relies on off-chain indexers to track balances and token states, as Bitcoin itself does not have smart contracts or internal token logic.
BRC-20 uses Ordinals inscriptions to embed JSON files into Bitcoin transactions.
There are three main operations:
Deploy: Create a new token with a name, max supply, and mint limit.
Mint: Generate token units up to the defined limit.
Transfer: Send tokens to another wallet by inscribing a transfer request.
All actions are written as text-based JSON in inscriptions, not smart contracts.
Built on Ordinals: BRC-20 is an extension of the inscription system.
Not native to Bitcoin: Depends on external indexers to function.
No on-chain state: Token balances exist only through interpretation of inscriptions.
Fungible only: Unlike classic Ordinals (NFTs), BRC-20 is meant for interchangeable tokens.
No native validation: Bitcoin nodes do not understand BRC-20; rules are enforced off-chain.
Indexer dependence: Token balances and state vary depending on which indexer is used.
Scalability concerns: Heavy inscription usage can increase network congestion and fees.
BRC-20 showed that token experiments are possible on Bitcoin using Ordinals, but it is a non-native workaround that highlights the limitations of scripting on Bitcoin — and ultimately inspired more robust alternatives like Runes.
Before transferring BRC-20s, you must first create a transfer inscription, where you define the transferable amount of tokens.
On the homepage page select the Vault and open it by clicking the Vault preview card.
Navigate to the Assets section -> BRC-20 tab, where you will find a list of the available BRC-20 Tokens.
Select BRC-20 token for transfer and click Send button. In the appeared window click Transfer button.
Input the amount of BRC-20 token, you prefer to send. After the transfer inscription is created, this amount will be converted from available balance to transferable balance. Click Next.
Choose from the recommended fee options or input a custom fee.
➱ Payment Review and Confirmation
There are two ways to pay for the transfer inscription:
With external wallet. Send the required amount to the provided address.
With Your Vault. Click Pay with Vault tab, then click Next button.
Choose from the recommended fee options or input a custom fee, click Confirm button and confirm the transaction in the connected wallet.
➱ Transaction Execution
Before the transaction is executed, it must be signed by the required number of Vault owners. Once the confirmation threshold is reached, locate this transaction in the Transactions section -> Queue tab and click the Execute button to start broadcasting of the transaction.
Wait for the transaction to be processed on the Bitcoin blockchain. Once the new transfer inscription is ready and available in your wallet in the Ordinals tab, proceed with the next step.
Navigate to the previously inscribed BRC-20 token and click Send button. Locate the transfer inscription and click Send button.
Add recipient address, choose from the recommended fee options or input a custom fee.
➱ Transaction Review and Confirmation
Once the fee is set, you'll be able to review the transaction details. If everything is correct, click Confirm button and confirm the transaction in the connected wallet.
➱ Transaction Execution
Before the transaction is executed, it must be signed by the required number of Vault owners. Once the confirmation threshold is reached, locate this transaction in the Transactions section -> Queue tab and click the Execute button to start broadcasting of the transaction.
If you consider that the created transfer inscription of BRC-20 token is wrong or not relevant anymore, you can cancel it. In this case, the inscription will be marked as expired one, and BRC-20 tokens converted back from transferable to available balance.
Navigate to the previously inscribed BRC-20 token and click Send button. Locate the transfer inscription and click Cancel button.
➱ Cancel Confirmation
If everything is correct, click Next button.
Choose from the recommended fee options or input a custom fee, click Confirm button and confirm the transaction in the connected wallet.
➱ Transaction Execution
Before the transaction is executed, it must be signed by the required number of Vault owners. Once the confirmation threshold is reached, locate this transaction in the Transactions section -> Queue tab and click the Execute button to start broadcasting of the transaction.
For deployment, mint and trade of BRC-20s you can use .
Navigate to the Asigna multisig app in your web browser: