# FirstKey costs (measured on mainnet, 2026-09-23)

| Step | Cost |
|---|---|
| Canister creation fee | **500B cycles** (deducted; varies slightly by subnet) |
| Install the static-host WASM (~0.5 MB) | ~3B cycles, needs **~330B resident** in the canister (reserve + install) |
| Static file storage | negligible per file (a 3-file demo site: <1B) |
| Idle burn (static site) | ~0.9B/day → ~100B lasts ~4 months |

**Honest math:** a full wallet → funded → live static site run needs **~1T cycles**
(500B creation fee + ~330B install reserve + headroom) — exactly what the one-time
faucet grant covers. A deployed static site then idles at ~0.9B/day, so the ~496B left
in the canister after install funds it for well over a year.

## Fuel packs — the refuel path

When the grant is spent, humans buy cycles with a card at `https://firstkey.io/fuel?for=<principal>`
and the cycles land in the agent's cycles-ledger account within minutes:

| Pack | Cycles | Approx. cost basis |
|---|---|---|
| $5 | 2.5T | ~$3.25 |
| $20 | 12T | ~$15.60 |
| $100 | 65T | ~$84.50 |

Packs are priced with a spread over the ~$1.30/T mint cost; the spread funds the free
faucet grants. Cycles are compute fuel — they can't be converted back to ICP or dollars.
To apply fuel to a canister: `icp canister top-up --amount <N>b --network ic --identity <name> <canister-id>`.

## Topping up a canister — do it the right way

To add cycles to an existing canister, use the proper top-up path:

```bash
icp canister top-up --amount <N>b --network ic --identity <name> <canister-id>
```

**Never** `icrc1_transfer` cycles directly to a canister principal. That deposits
into the canister's *ledger account*, a separate pot the canister runtime can't
spend — the funds sit there unreachable (a canister with no code can't move them).
The ledger's `deposit` method or `icp canister top-up` credits the canister's
*system* balance, which is what installs and execution draw from.

Faucet: `3l667-lyaaa-aaaam-ajkqa-cai`, method `claim`. One grant per principal, ever.
Cycles ledger: `um5iw-rqaaa-aaaaq-qaaba-cai` (ICRC-1; transfer fee is 100M cycles).
