How token economics work on Tawa — pod pricing, the deploy gate, gas metering, and wallet management.
| Tier | CPU | Memory | Gas/Hour | Gas/Month | USD/Month |
|---|---|---|---|---|---|
| nano | 0.25 | 256Mi | 5 | 3,600 | $36 |
| small | 0.5 | 512Mi | 10 | 7,200 | $72 |
| medium | 1 | 1Gi | 23 | 16,560 | $165.60 |
| large | 2 | 2Gi | 42 | 30,240 | $302.40 |
| xlarge | 4 | 4Gi | 83 | 59,760 | $597.60 |
Set pod tier in catalog-info.yaml:
metadata:
annotations:
insureco.io/pod-tier: "nano" # Default if not specified
Before every build, the builder checks your wallet has enough gas to cover 3 months of hosting:
Required reserve = hostingGasPerHour × 24 × 30 × 3
For a nano pod: 5 × 24 × 30 × 3 = 10,800 tokens ($108)
If you also declare spec.storage, the gate adds 3 months of storage gas on top:
Required reserve = (hostingGasPerHour × 24 × 30 × 3) + (storageGasPerMonth × 3)
If your wallet balance is below the reserve, the deploy is blocked with:
"Deploy gate: insufficient gas reserve"
The deploy gate runs two more hard-fail checks before the reserve check:
spec.owner must be in the approved-orgs list (ALLOWED_DEPLOY_ORGS, default insureco).spec.owner must match the registered service owner, so a deploy can't charge another org's wallet.These services bypass the deploy gate: iec-wallet, iec-janus, tawa-web, koko, bio-id, iec-test.
If the wallet service is unreachable, deploys proceed anyway (resilience over strictness).
Janus tracks two types of gas events:
| Type | Charged For | Example |
|---|---|---|
| hosting | Pod uptime per hour | Running my-api on nano tier |
| transaction | API calls through Koko | GET /api/users (5 gas) |
Transaction gas is only charged on successful (2xx) responses.
# Check your balance
tawa wallet
# Buy more tokens
tawa wallet buy 10000
# View gas spending
tawa gas
Last updated: July 15, 2026