DUST-20 REV 1.1.0

DUST-20 documentation

DUST-20

A token unit is an exact number of satoshis.

Protocol
DUST-20Registry id dust20, alias dust-20
Chain
BitcoinNetwork: mainnet
Ownership model
UTXOUnits are carried by satoshis in unspent outputs
Carrier
Inscription + spendDeploy and mint are inscribed; movement is a spend
Decimals
0Balances are whole units only
Document version
1.1.0Revised 2026-09-01
Lifecycle
ExperimentalNot a ratified multi-party standard
Owning repository
bitcoinuniverseio/dust-20Documentation source of truth

0.1 What DUST-20 is

DUST-20 is a way of representing fungible tokens on Bitcoin where every unit is tied to a fixed number of satoshis. The token and the bitcoin carrying it move together, so the amount is physically present in the transaction rather than asserted in a message.

01 / THE RULE

A deploy fixes the ratio

A deploy declares a ticker, a maximum supply, and how many satoshis stand behind one unit. That ratio never changes, so any unit of that ticker always occupies exactly the same amount of Bitcoin.

02 / THE CREATION

A mint puts units in an output

A mint inscription states an amount and the satoshis backing it. The Bitcoin output carrying that inscription must hold exactly that many satoshis, to the satoshi.

03 / THE MOVEMENT

Sending is an ordinary spend

There is no transfer message. You move units by spending the satoshis that hold them, which means the transaction you build is the transfer, and its output layout decides the result.

Origin and status

DUST-20 originates outside Bitcoin Universe. The legacy specification documents the deploy and mint payloads and one colored-UTXO transfer example. Everything else on this site, in particular ordinal sat flow, burn conditions, ticker identity and output ordering, is settled by the Bitcoin Universe production indexer and is labelled UNIVERSE wherever it appears. This is an experimental protocol, not a ratified multi-party standard.

0.2 Availability in Bitcoin Universe

You can view DUST-20 in Bitcoin Universe products. You cannot trade it there. That is a recorded state with a recorded reason, not an oversight.

Marketplace availability is read-only

The Bitcoin Universe capability registry records DUST-20 marketplace availability as read-only with mode read-only. Viewing, browsing collections and reading activity are supported. Listing, updating a listing, unlisting, buying, selling, offers, settlement and reconciliation are all unavailable.

The recorded mutation gate reads: DUST-20 mutations are unavailable until a typed authoritative ownership resolver replaces the retired address-only legacy flow. The recorded ownership source of truth is No safe typed mutation resolver is configured, and settlement is No supported settlement while ownership is unverifiable.

Read the full recorded state, the action matrix and what would change it.

Any DUST-20 listing surface you see inside Bitcoin Universe is catalog data from a read-only legacy Universe catalog. It is discovery information. It is not proof that an output is unspent, not proof of who owns it, and not a basis for moving money.

0.3 The shape of the protocol

DUST-20 lifecycle: deploy, mint, hold and spend Four stages left to right. Deploy is an inscription that fixes supply and unit_sats. Mint is an inscription in an output holding exactly amt times unit_sats satoshis. Hold is an unspent output carrying an allocation. Spend is an ordinary Bitcoin transaction whose output layout decides which whole units survive and which are burned. 01 DEPLOY 02 MINT 03 HOLD 04 SPEND CARRIER: INSCRIPTION CARRIER: INSCRIPTION CARRIER: UTXO CARRIER: TRANSACTION tick, supply unit_sats max_sats tick, amt sats = amt x unit_sats outpoint offset_sats amount inputs -> outputs ordinal FIFO The ratio is fixed for the life of the ticker. Output value must equal sats exactly. Inscription sits at satoshi offset 0. Ownership is control of the output. No accounts. Whole units that land inside one output survive. Anything else is burned. RULES DUST-5.1 to 5.8 RULES DUST-6.1 to 6.9 RULE DUST-7.2 RULES DUST-7.3 to 8.5
Fig 0.1 The four stages. Only the first two are written messages; the last two are Bitcoin doing what Bitcoin does.
The four operations, and what physically carries each one
OperationCarrierRequired fieldsOptionalProvenance
DeployCreates a ticker and fixes the satoshi backing rule for every one of its units. Inscription p op tick supply unit_sats max_sats lim_sats VERIFIED
MintCreates units in a Bitcoin output whose value equals the declared satoshi backing. Inscription p op tick amt sats none VERIFIED
TransferAn ordinary Bitcoin spend. There is no transfer inscription. Bitcoin spend none none UNIVERSE
BurnA derived outcome, not an operation anyone writes. Bitcoin spend none none UNIVERSE

Reference payloads

A deploy of one million units, each backed by 546 satoshis, capped at 100 units per mint:

{"p":"dust-20","op":"deploy","tick":"dust","supply":"1000000","unit_sats":"546","max_sats":"546000000","lim_sats":"54600"}

A mint of 100 units, which must sit in an output holding exactly 54,600 satoshis:

{"p":"dust-20","op":"mint","tick":"dust","amt":"100","sats":"54600"}
Numeric ceilings a reader enforces
QuantityCeilingRule
Satoshi fields2,100,000,000,000,000DUST-3.3
Unit quantities340282366920938463463374607431768211455DUST-3.4
Content size4096 bytesDUST-2.3
Ticker length1 to 64 bytesDUST-4.3
Decimal places0DUST-5.8

0.4 Who this is for

0.5 Entry points

Sources this document is built from
SourceWhat it provides
Legacy DUST-20 specification

Documents the deploy and mint payloads and a colored-UTXO transfer example.

Bitcoin Universe production indexer

index-dust20 reconstructs colored UTXO ownership from Bitcoin Core and a shared Ord 0.29 instance.

Bitcoin Universe capability registry

Records, per protocol, which product surfaces and marketplace actions are actually available.

This documentation repository

Source of the published documentation and its conformance fixtures.

Source repository
github.com/bitcoinuniverseio/dust-20
Documentation portal
docs.bitcoinuniverse.io
Universe products that handle DUST-20
Core (view, discover, collections, activity, transactions), Wallet (view, send, receive), Inscribe (deploy, mint, transfer). Full matrix.
Report a vulnerability
Private advisory on GitHub. Do not open a public issue for a security report.
Machine readable
llms.txt, docs.json, conformance.json, search-index.json, docs.manifest.json

Provenance labels

Provenance labels used throughout this document
LabelMeaning
VERIFIED

Documented in the legacy DUST-20 specification and enforced by the Bitcoin Universe production indexer. Both sources agree.

UNIVERSE

Enforced by the Bitcoin Universe production indexer. The legacy specification does not settle this point, so an independent implementation may differ.

LEGACY

Stated by legacy DUST-20 documentation. Superseded, narrowed, or not enforced identically by the current implementation.

IMPL

The behaviour of one application or service. Useful evidence, but not a protocol rule. Do not rely on it across implementations.

UNRESOLVED

No authoritative answer exists. Documented as an open question rather than invented. Stop before an irreversible step.