Skip to content
Back to skills

Brc 20

ASecurity

BRC-20: fungible token standard via JSON inscriptions. Deploy / mint / transfer operations. Permissionless and unaudited; large ecosystem post-2023. USE WHEN: building BRC-20 tooling, evaluating token issuance on Bitcoin, comparing with Runes / Taproot Assets.

  • 31 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 8, 2026
ai-agentsapi

Works with

  • cli
  • api

Security analysis

A100/100

Scanned September 22, 2026

npx -y skills add claude-dev-suite/claude-dev-suite --skill brc-20 --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Brc 20?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Brc 20
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/claude-dev-suite-brc-20/badge)](https://www.skillsdirectory.com/skills/claude-dev-suite-brc-20)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: bitcoin-metaprotocols-brc-20
description: |
  BRC-20: fungible token standard via JSON inscriptions. Deploy /
  mint / transfer operations. Permissionless and unaudited; large
  ecosystem post-2023.
  USE WHEN: building BRC-20 tooling, evaluating token issuance on
  Bitcoin, comparing with Runes / Taproot Assets.
allowed-tools: Read, Grep, Glob
---

# BRC-20

Token standard defined via JSON inscriptions. Created May 2023 by
@domodata. Originally a "fun experiment", became massive ecosystem.

## Mechanics

Each operation is a JSON inscription:

### Deploy
```json
{
  "p": "brc-20",
  "op": "deploy",
  "tick": "ordi",
  "max": "21000000",
  "lim": "1000"
}
```

`tick` = 4-character ticker (case-insensitive). Once deployed, max
supply fixed.

### Mint
```json
{
  "p": "brc-20",
  "op": "mint",
  "tick": "ordi",
  "amt": "1000"
}
```

Each mint must respect `lim` and total `max`. First-come-first-served
until cap.

### Transfer (two steps)

Step 1: inscribe transfer:
```json
{
  "p": "brc-20",
  "op": "transfer",
  "tick": "ordi",
  "amt": "100"
}
```

Step 2: send the inscription to recipient. Receipt = balance moves.

## State tracking

BRC-20 has **no on-chain validation** — it's an indexer convention.
Each indexer must:
- Watch inscriptions for BRC-20 ops.
- Compute balances per address.
- Validate against `max` / `lim` constraints.

Indexers must agree on rules (otherwise different indexers see
different balances).

## Major indexers

- **OrdiScan** — primary public indexer.
- **UniSat** — wallet + indexer.
- **OKX** — exchange-side.
- **Magic Eden** — former BRC-20 marketplace; closed its entire
  Bitcoin marketplace on 9 March 2026 (announced 27 February 2026,
  Bitcoin API retired 27 March 2026) to refocus on Solana.

## Compared to other token standards

| Aspect | BRC-20 | Runes | Taproot Assets |
|--------|--------|-------|----------------|
| Activation | May 2023 | April 2024 (halving) | 2023 |
| Mechanism | JSON inscriptions | Native protocol op_returns | Client-side validation |
| State tracking | Off-chain indexer convention | Native (each rune is a UTXO commitment) | Client-side merkle |
| Efficiency | High overhead | Native, smaller | Smaller |
| Validation rules | Indexer-defined | Protocol-defined | Schema-defined |

Most agree: Runes > BRC-20 in efficiency. BRC-20 is "first-mover"
but architecturally suboptimal.

## Critique

- **Off-chain validation** = consensus uncertainty about what is
  "valid".
- **First-mint-wins** rewards bots over real users.
- **High fees** during deployment / minting frenzies.

## Status

As of September 2026:

- Active ecosystem; many tokens exist.
- Trading volume on UniSat and OKX; Magic Eden closed its Bitcoin
  marketplace on 9 March 2026 and no longer carries BRC-20.
- Some migration to Runes underway (similar use cases).

## Use cases

- **Memecoins on Bitcoin**.
- **Loyalty / community tokens** for projects.
- **Trading vehicles** within Bitcoin.

## Common bugs

- Indexer disagreement on edge cases (e.g., simultaneous mints in
  same block, ordering rules).
- Stale balance display when wallet doesn't sync indexer state.
- Two-step transfer: forgetting step 2 (just inscribing transfer
  doesn't move funds).

## See also

- [inscriptions/SKILL.md](../inscriptions/SKILL.md)
- [runes/SKILL.md](../runes/SKILL.md)
- [atomicals/SKILL.md](../atomicals/SKILL.md)

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.