> ## Documentation Index
> Fetch the complete documentation index at: https://docs.9thprotocol.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Credits & usage

> How metering works, why cache hits matter, and where to see your spend.

## The unit

**1 credit = \$0.01 of raw model cost.**

Credits are denominated in what the model actually costs, so there's no hidden
markup that varies by model. An expensive model burns credits faster; that's the
whole difference.

Charges are fractional. A small call can cost `0.003` credits. Whole numbers
are a display convenience only.

## What a session costs

Measured raw cost for a heavy 5-hour session (\~29M cached + 1.2M fresh input +
0.36M output):

| Model          | Heavy session | Credits |
| -------------- | ------------- | ------- |
| GLM 4.7 Flash  | \$0.51        | 51      |
| Kimi K2.7 Code | \$6.46        | 646     |
| Sonnet 5       | \$11.80       | 1,180   |
| Kimi K3        | \$17.70       | 1,770   |
| Opus 4.8       | \$29.50       | 2,950   |
| Fable 5        | \$59.00       | 5,900   |

A \~115× spread between cheapest and most expensive. This is why the
[Auto router](/models) is the default and why `/bias economy` is a real lever.

## Cache reads are most of the bill

Agent sessions resend a growing conversation every turn, so the majority of
tokens are **cache reads**: billed at a fraction of fresh input. 9p sets cache
breakpoints automatically on models that support them.

In practice a warm session runs **95%+ cached**, and the cache-hit rate is the
single biggest factor in what a session costs. Two habits protect it:

* Don't switch models mid-task. A new model means a cold cache. (Auto resolves
  once per message for exactly this reason.)
* Use `/clear` between unrelated tasks, not in the middle of one.

## Seeing your usage

In-session:

```
/usage
```

Every turn also ends with a line:

```
⏺ 6 calls · 41.2k in (36.8k cached) · 1.1k out
```

On the [dashboard](https://app.9thprotocol.com), usage aggregates over the last
30 days grouped **by model, by day, or by session**, showing calls, tokens,
cache-hit rate, and credits, plus the raw ledger.

## Limits and resets

Two rolling windows apply: a **5-hour** session budget and a **weekly** ceiling.
When one is exhausted, 9p reports which and when it clears:

```
error: 5-hour session limit reached
● buy a window reset to continue now? [y/N]
```

### Session resets

A reset clears the spent counter for that window immediately.

| Plan | Window reset | Week reset |
| ---- | ------------ | ---------- |
| Core | \$3          | \$9        |
| Pro  | \$5          | \$15       |
| Max  | \$12         | \$35       |

Capped at **5 resets per rolling week**: past that, wait or upgrade.

<Note>
  Payments land in the next milestone. During private beta resets are recorded and
  capped but not charged.
</Note>

## Sub-agent cost

[Sub-agent](/sub-agents) usage rolls into your session totals and is tagged in
the ledger, so the dashboard can separate main-loop from fan-out spend. Explore
agents always use economy models.
