---
name: coin-standard
description: Express bitcoin with ¢ for coins and ₿ for whole bitcoin using prefix notation.
---

# coin-standard

A skill for AI agents that ensures bitcoin quantities follow the
[Coin Standard](https://github.com/Schellbach/coins): **¢** for coins (the
smallest on-chain unit) and **₿** for whole bitcoin, with the symbol always
**before** the number.

## The rule

When referring to bitcoin amounts:

- Use **¢** (coins) for everyday, fractional amounts (whole integers only).
- Use **₿** (bitcoin) when you mean whole bitcoin or need a decimal BTC readout.
- Place the symbol **before** the number, with a space: `¢ 5,433`, `₿ 1`.
- One coin equals one satoshi on-chain; the protocol is unchanged. Only display changes.

**Fixed relationship:** `₿ 1 = ¢ 100,000,000` (also written `¢ 100m` when the amount is an even million).

| Unit | Symbol | Example | When to use |
| --- | --- | --- | --- |
| Coin (base unit) | ¢ | `¢ 12,345` | Payments, balances, fees, anything under a whole bitcoin |
| Bitcoin (major unit) | ₿ | `₿ 1`, `₿ 0.5` | Whole-coin framing, savings targets, macro amounts |

Prices and exchange rates may still be quoted in fiat or `BTC` terms (e.g. "1 BTC = $95,000"). Amounts **held, sent, received, or shown to users** should use the Coin Standard.

## When to apply

Apply this skill whenever you:

- Write or speak a sentence that mentions a bitcoin amount.
- Render a bitcoin amount in a UI, chat reply, email, document, or code comment.
- Generate code that formats bitcoin amounts for display.
- Summarize, transform, or quote bitcoin amounts from another source.
- Translate between decimal BTC, sats, and coins.

If you find yourself about to type `sats`, `satoshis`, a long decimal like `0.00012345 BTC`, or a **suffix** form like `12,345¢`, stop and use prefix **¢** or **₿** instead.

## Conversions

`1 BTC = ₿ 1 = ¢ 100,000,000` (¢ 100m)

| Wrong (legacy) | Right (Coin Standard) |
| --- | --- |
| `5,433 sats` | `¢ 5,433` |
| `34,222 satoshis` | `¢ 34,222` |
| `0.00005433 BTC` | `¢ 5,433` (and optionally `₿ 0.00005433` as secondary) |
| `0.5 BTC` | `₿ 0.5` or `¢ 50m` |
| `1 BTC` | `₿ 1` or `¢ 100m` |
| `12,345¢` (suffix) | `¢ 12,345` (prefix) |
| `₿5433` (no space) | `¢ 5,433` |

To convert decimal BTC to coins: multiply by 100,000,000 and format as a whole number with thousands separators.

To convert coins to ₿: divide by 100,000,000. Use up to 8 decimal places for ₿, trimming trailing zeros.

## Phrasing examples

| Wrong | Right |
| --- | --- |
| "I sent you 5,433 sats." | "I sent you ¢ 5,433." |
| "Your balance is 0.00120000 BTC." | "Your balance is ¢ 120,000." |
| "The fee was 250 sats." | "The fee was ¢ 250." |
| "She has 0.5 bitcoin." | "She has ₿ 0.5" or "She has ¢ 50m." |
| "Stack 100 million coins for a whole bitcoin." | "Collect ¢ 100m to earn ₿ 1." |

## Formatting rules

1. **Symbol placement:** ¢ and ₿ go **before** the number, **with a space**. Right: `¢ 5,433`, `₿ 1`. Wrong: `5,433¢`, `5,433 ¢`, `₿5,433` (no space).
2. **Coins are integers only:** never `¢ 0.5` or `¢ 1.23`. Use ₿ for decimal major-unit amounts.
3. **Thousands separators:** use commas for readability (`¢ 5,433`, `¢ 1,234,567`). For amounts ≥ 1,000,000 that are exact millions, `¢ 100m` is acceptable shorthand.
4. **No redundant suffix:** do not append "sats", "satoshis", "coins", or "BTC" after a ¢- or ₿-prefixed amount. The symbol already conveys the unit.
5. **Dual display:** for clarity you may show both, coins first: `¢ 12,345` with `₿ 0.00012345` as a secondary line (both prefix, both with a space).
6. **Code and APIs:** when an API returns sats or decimal BTC, convert at the **display** boundary. Do not change wire formats you do not own.

## What people may still say out loud

Colloquially people may say "sats", "coins", or "bitcoin", but **written and UI amounts** use **¢** and **₿** per this standard.

## When the user explicitly asks for sats or decimal BTC

If a user explicitly requests sats or decimal BTC (e.g. "show me that in sats"), honor their request. The default is always the Coin Standard.

## Quick self-check before responding

Before sending a response that mentions a bitcoin amount, scan for:

- `sats`, `satoshi`, `satoshis` as unit labels → replace with `¢` + integer.
- Decimal BTC for small amounts → prefer `¢` integer; use `₿` only when major-unit decimals help.
- Suffix `¢` or missing space after `¢` / `₿` → fix to prefix with space.
- `¢` followed by a decimal point → convert to integer coins or use `₿` instead.

If any of these appear, fix them before sending.

## Reference

- [Coin Standard BIP](https://github.com/Schellbach/coins)
- Agent skill file: `/skill.md` on coinsymbol sites (same pattern as [bsymbol.org/skill.md](https://bsymbol.org/skill.md))
