# Stats

> Check usage, reserve backing and rewards, and read the public figures as JSON.

[Stats](https://deference.si/stats) shows how much Deference is used, what the reserve behind INFERENCE holds, the markets, and the rewards so far. It is public and needs no account.

Choose a usage range to compare requests, tokens or credit spent. Open **Verify** to inspect the reserve figures and their block. Use the contract links to check addresses, or [read the data as JSON](#read-the-data-as-json) for your own analysis.

## Where the numbers come from

| Kind     | Source                                                                   | Refreshed          |
| -------- | ------------------------------------------------------------------------ | ------------------ |
| On chain | The reserve, INFERENCE and rewards contracts, read together at one block | Every 60 seconds   |
| Markets  | The Uniswap pools for INFERENCE and DEF                                  | Every 60 seconds   |
| Usage    | Deference's hourly totals of requests, never live request data           | Every 5 minutes    |
| Reported | Credit consumed, which Deference reports to the reserve                  | About once an hour |

Times are in UTC. Figures are read from the chain the site runs on, the Sepolia testnet today. The page shows how old its data is, and keeps the last values when an update is late.

## Reserve

| Figure                   | Meaning                                                                                      | Source                |
| ------------------------ | -------------------------------------------------------------------------------------------- | --------------------- |
| USDC in reserve          | USDC the reserve contract holds                                                              | On chain              |
| INFERENCE in circulation | INFERENCE that exists in wallets                                                             | On chain              |
| Activated as credit      | INFERENCE turned into credit, all time                                                       | On chain              |
| Purchases                | INFERENCE bought from the reserve, as a count and in USDC, in the last 24 hours and all time | On chain              |
| Credit consumed          | Paid credit spent on requests, all time                                                      | Reported by Deference |
| Outstanding              | INFERENCE in circulation plus activated credit not yet spent                                 | Calculated            |
| Backing                  | USDC in reserve divided by outstanding, rounded down                                         | Calculated            |

The page rounds these amounts to whole units; the JSON has them exactly. The contracts sit beside the drawing, each with its address to copy or open on Etherscan. **Verify** shows the backing and the block the figures were read at. Credit consumed is the one figure you take from Deference: it counts paid credit only, never free credit, and trails usage by up to an hour.

## Usage

The usage card draws requests, tokens or credit spent per UTC day, for the last 7, 30 or 90 days or since the first request, with the success rate and time to first token over the same range.

| Figure              | Meaning                                                                                                                  |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| Requests served     | Requests that reached a model                                                                                            |
| Tokens              | Input and output tokens of succeeded requests, as each provider counts them. Tokenizers differ, so models do not compare |
| Credit spent        | The cost of every completed request, free credit included. A cost is final about 15 seconds after the request ends       |
| Active accounts     | Accounts that made a request                                                                                             |
| Success rate        | The share of counted requests that did not fail                                                                          |
| Time to first token | Median (P50) and P95 time to the first token, for succeeded streamed requests                                            |
| Latency             | Median (P50) and P95 time from request to the end of the response, for succeeded requests that were not streamed         |
| Added by Deference  | Deference's time to first token minus OpenRouter's reported latency, never below zero. An estimate                       |

A request failed when it ended with a 5xx, a provider 408 or 429, an error inside a stream, a broken stream, an unreachable provider, or no answer for 15 minutes. A 400, 401, 402, 403, 404, 413 or 422 rejects the caller's own request, so it is neither a failure nor counted. Rates and percentiles appear from 20 requests.

[Status](https://deference.si/status) shows whether each part of Deference is working right now.

## Models

**Top models** lists the models with the most tokens in the last 30 days, each with its share. A model is named only when it has at least 50 requests from at least 5 accounts in the range, and the list appears once three models are named. The rest is summed into **Other**. **Used from** ranks the tools requests come from, folded the same way.

## Markets

| Figure          | Meaning                                                                                                                           |
| --------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| INFERENCE price | Price on Uniswap, in USDC, with the pool fee                                                                                      |
| Depth           | What a buy of $100, $1,000 and $10,000 would receive now, with the average price and price impact. Quotes only: nothing is traded |
| DEF price       | Price on Uniswap, in USDC, with the pool fee                                                                                      |

The reserve sells INFERENCE at 1 USDC each and does not buy it back. See [Selling](https://deference.si/docs/concepts/selling).

## Rewards

| Figure                | Meaning                                                                                       |
| --------------------- | --------------------------------------------------------------------------------------------- |
| Fees harvested        | USDC collected from DEF's trading fees, all time                                              |
| Fees waiting          | USDC the next payout can use                                                                  |
| INFERENCE distributed | INFERENCE bought with those fees and allocated to holders                                     |
| Claimed               | INFERENCE delivered to holders: sent automatically, claimed to a wallet, or claimed as credit |
| Payouts               | Hourly payouts published so far                                                               |
| Holders               | Wallets holding DEF now, not counting pools and contracts                                     |

The figures count from the launch of DEF, whose date shows under them.

See [Rewards](https://deference.si/docs/concepts/rewards) for how payouts work.

## Read the data as JSON

[Data as JSON](https://deference.si/api/network.json). Free to read and cache; no key needed.

```bash
curl "https://deference.si/api/network.json?range=7d"
```

`range` is `24h`, `7d` (the default), `30d`, `90d` or `all`. CORS is open and responses are cached for 60 seconds. `meta.version` versions the shape, and `definitions` repeats the counting rules above.

Amounts ending in `_micro_usd` or `_micro` are integer strings of micro-units: divide by 1,000,000 for dollars or USDC. INFERENCE amounts are also integer strings in base units, with 1,000,000 base units per INFERENCE. `null` means unknown, never zero. A `503` with `meta.error` means the data cannot be read right now.
