DRC-20

DRC-20

A JSON token standard inscribed on Dogecoin, cloned from BRC-20, enforced by indexers.

Last reviewed 2026-09-174 min readdrc-20 · tokens

Jump the story
Baker cartoon Shiba minting gold cookie-coins

DRC-20 is an experimental fungible-token metaprotocol for Dogecoin. A deploy inscription announces a ticker, a max supply, and usually a mint limit. Mint inscriptions create balance for the minter, up to those caps. Transfer inscriptions move balance in two steps. None of this is Dogecoin script. It is a state machine in indexer software that watches for JSON with "p": "drc-20".

The three operations

Deploy is a birth certificate. It does not credit anyone. It tells later mints the rules: tick, max, optional lim (per-inscription mint cap), optional dec (decimals, default 18 in the published tables).

Deploy (canonical teaching example uses WOOF; history used DOGI)
{ "p": "drc-20", "op": "deploy", "tick": "dogi", "max": "21000000", "lim": "1000" }

Mint credits the owner of the mint inscription, if the ticker exists, supply remains, and amt does not exceed lim. Using an inscription service can credit the service first — the indexer is literal about who held the mint.

Mint
{ "p": "drc-20", "op": "mint", "tick": "dogi", "amt": "1000" }

Transfer is a two-part trick copied from BRC-20. First inscribe a transfer intent to your own address. Then send that inscription. The first send of a valid transfer inscription is the one that moves the balance. A second send of the same object is, in the usual state machines, a souvenir.

Transfer
{ "p": "drc-20", "op": "transfer", "tick": "dogi", "amt": "100" }

Not a contract

There is no approve(), no allowance, no on-chain totalSupply you can query from Core RPC. Content types accepted for DRC-20 events are typically text/plain and application/json. A JPEG of the same JSON is, in a strict indexer, decoration. First-seen deploy wins inside a given indexer. A second deploy of the same tick is invalid there even if another indexer never saw the first.

The 2023 public notebook

Doge Labs made DRC-20 teachable. They published the deploy, mint, and transfer tables, the content-type rules (text/plain and application/json), and indexer warnings that markets treated as a contract. They ran a wallet and a peer-to-peer market so holders could see those JSON events as balances. That is a real contribution to the Doginals season of 2023. Honor it as history.

The hostname they pointed readers at is retired. As of 17 September 2026 the former market domain returns HTTP 301 to an unrelated third-party site. The former docs subdomain does not serve a usable spec (HTTP 500 on this review). This encyclopedia does not cite that host, leftover GitBook, or 2023 Medium recaps as sources. The JSON on this page is the historical record we keep.

Doge Soft Standard v1 — still DRC-20

The living production notebook is Doge Soft. Docs keep the three operations. They add commit-reveal detail (envelope in the reveal scriptSig, not inside the redeem script) and an indexer that is the source wallet, Explorer, and Swap all read. They also add DogeSoft Standard v1: ACTION tags on the ord envelope, omitted on DRC-20 text/plain so 2023 readers still decode the body. Eden announced that standard in public on 6 May 2026 (Part Deux) as a common language for other builders — open spec, forkable indexer path — not as a rewrite of Apezord’s 2023 envelope.

A Doge Soft transfer remains p:drc-20. Extra meaning lives in a ds object — app, version, flow — so a strict indexer that ignores unknown keys still sees a transfer, and the production indexer can label an AMM refund, a bridge release, or another registered pipeline. Docs show ds.flow = bridge_l1_release on L1 withdraw. Same pattern, AMM deposit refund:

Valid DRC-20 transfer plus Doge Soft ds (du$t AMM deposit_refund)
{ "p": "drc-20", "op": "transfer", "tick": "du$t", "amt": "692.000000000000000000", "ds": { "app": "drc20_swap_amm", "v": 1, "flow": "deposit_refund" } }

Liquidity uses the same coin protocol: an ADD_LP inscription plus DOGE to a pool deposit address. Bonding-curve launches price new ticks against reserved DOGE until they graduate to pool math. Fees on Swap are 2% in DOGE (1% LP + 1% platform). None of that is a Core opcode. It is still indexer state. Eden is the public builder of that stack. Apezord remains the envelope.

Questions

Is DRC-20 on Dogecoin Core?

No. Core will confirm the transaction as money. Token balances live in indexer databases.

Why do some sites show different DOGI supplies?

They are counting different first-seen windows. See the DOGI article and the indexer wars salon thread.

Where did the public DRC-20 docs live?

Doge Labs published teaching tables and a market UI in 2023. That house is wound down and this encyclopedia does not link their leftover docs. The living spec is Doge Soft Standard v1 on docs.dogesoft.io — still p:drc-20, plus ds and ACTION tags.

What is the ds field?

A Doge Soft Standard v1 object (app, v, flow) on a still-valid DRC-20 transfer. Other indexers that ignore unknown keys still see a transfer. The production indexer uses it to label AMM refunds, bridge releases, and other registered pipelines.

Sources

Primary texts for this chapter. The full index lives on Doginals sources.

the ticks

Coins on Dogecoin, listed as DRC-20.

The dialect is this page. The cabinet is all 1275 DRC-20 ticks from the 17 September 2026 partner dump. DOGI has a long story. The rest have a card with as-of tokenomics. Balances live in indexers.

Open the ticker cabinet

the living spec

When the archive ends, the implementation continues.

This page is the history and the mechanics of the notebook. Current tables, APIs, and wallet behavior live in the spec — not in a market pitch.

docs.dogesoft.io