Skip to content

Sources behind this page

Every claim on this page resolves to these pinned revisions. Follow a path to read the exact source the statement was verified against.

atomicals-electrumx-1.5.2.0

Atomicals ElectrumX

Revision v1.5.2.0 (2025-03-27)

Open pinned path: normalFtAllocation

Version-sensitive ARC-20 and Atomicals validation behavior used as the pinned reference baseline.

atomicals-guide

Atomicals protocol guide

Revision unversioned

Open pinned path: arc20

Concept and command-line explanation. Explicitly states that the specification is defined in code.

What is ARC-20?

Raw

The Atomicals fungible token model, where one unit is one coloured satoshi and transfers are an allocation problem rather than an account update.

Protocol behavior Verified 2026-08-31 Metadata & Sources

Describes the Atomicals protocol itself at the pinned reference revision. It does not promise that any product exposes it.

Page ID
start/what-is-arc-20
Normative authority
Atomicals reference implementation
Networks
mainnet
Documentation version
2026.08
Audience
everyone
Owner
bitcoin-universe-docs
Sources
Known limitations
  • Allocation behavior is version sensitive. The numbers on this page follow the pinned reference revision only.

ARC-20 is the fungible token model inside Atomicals. Its rule is short:

One ARC-20 unit is one satoshi in a Bitcoin output that a validator recognises as coloured.

That single sentence decides everything else. Supply is measured in satoshis. A transfer is a question about which outputs receive how much value. Value that cannot be placed is destroyed.

One unit is one satoshi

An ARC-20 balance is not a number stored somewhere. It is the satoshi value of the outputs a validator recognises as coloured for that token. An output worth 700 satoshis that a validator colours for a ticker carries exactly 700 units. Spending it spends the units. Splitting it splits the units, subject to the allocation rules.

Account transfer against ARC-20 allocation

An account transfer subtracts a number from one row and adds it to another, and an invalid transfer simply fails. An ARC-20 transfer spends whole coloured outputs and assigns their value to new outputs in order. The Bitcoin transaction confirms either way, so an unwanted result is not reported as a failure. It is reported as a different allocation, which can include a burn.

In an account model a transfer subtracts from one row and adds to another, and the transaction either succeeds or fails. In ARC-20 the transaction succeeds on Bitcoin either way. What changes is where the coloured value lands.

Question Account model ARC-20
Where is the balance? A row in a ledger Spread across your unspent outputs
What is a transfer? Debit and credit Assigning input value to outputs in order
Can value vanish? No Yes. Unplaceable value is burned
Who decides the result? The contract The validator revision your indexer runs
Does confirmation mean success? Yes No. Confirmation and allocation are separate answers
Mode Operation Shape
Direct issuance ft The entire supply lands in output zero of one transaction
Fixed decentralised dft then dmt A deployment sets the rules, then claimants mint a fixed amount each
Perpetual decentralised dft with perpetual parameters Activation gated, with progressing Bitwork and an optional global cap

See direct issuance, fixed DFT, and perpetual DFT.

A ticker is a globally allocated name. Winning it means the Atomicals rules resolved a candidate into a verified winner. It does not mean:

  • the project is who it says it is;
  • the metadata is accurate;
  • the image belongs to the minter;
  • anyone stands behind the supply.

Always store and display the resolved Atomical ID next to any ticker. See tickers and candidates.

decimals is presentation metadata. It changes how a wallet formats a number on screen. It never creates sub-satoshi units. Native ARC-20 quantities are integers, always. See metadata and decimals.