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

# Credits

> How JoyStream meters consumption — balance, ledger, and what draws credits down.

Credits meter what your workspace consumes. Both surfaces are read-only: credits are granted, and spending is recorded.

## Balance

```bash theme={null}
jstm credits balance
jstm credits balance --workspace acme-corp/finance
```

The balance reports three numbers:

| Field             | Meaning                |
| ----------------- | ---------------------- |
| `balance_credits` | What remains           |
| `granted_credits` | What has been granted  |
| `spent_credits`   | What has been consumed |

Credits are held per workspace, not pooled across an organization. A team that runs a lot draws down its own balance.

<Note>
  Every human-facing field is expressed in credits. No surface converts credits to a currency amount.
</Note>

## Ledger

```bash theme={null}
jstm credits ledger
jstm credits ledger --limit 100 --workspace acme-corp/finance
```

Entries are newest first. Each carries the amount, a reason, when it happened, and an action category — `build` or `execution` — so you can tell package builds apart from runs.

The ledger is the answer to "where did the credits go". A balance that dropped faster than expected almost always has a visible cause here.

## What consumes credits

Two things: building a package, and executing a run.

The usual surprises:

**A schedule firing more often than intended.** A `*/5 * * * *` expression left over from testing runs 288 times a day.

```bash theme={null}
jstm agent installations   # shows each schedule and next fire
```

**A retry loop.** A `MUST_HAPPEN` step that fails retries with backoff before giving up, doing that work repeatedly on every run.

```bash theme={null}
jstm agent stories failed-payment-digest --status failed
```

**An agent staged live that should be dry-running.** Dry Run still executes, so it still consumes — but it's the right mode while you're iterating on a spec, and it won't compound with real side effects.

## Keeping it predictable

Check schedules after testing, clear the ones you don't need, and look at failed stories periodically rather than only when something breaks.

```bash theme={null}
jstm agent schedule clear 8c41f2b9-77de-4a30-b0c5-2e1f6a9d4b77
```

## See also

* [Manage credits](/guides/manage-credits) — walkthrough.
* [`jstm credits`](/cli/credits) — full reference.
