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

# Billing & Credits

> How Aether meters usage: credits are VM runtime, tokens are never billed.

Aether bills on a single unit: the **credit**. A credit buys workspace VM runtime — the time an agent's machine is actively running. The LLM tokens an agent consumes are captured for [usage reporting](/guides/usage) but are never billed.

## What a credit buys

Every workspace runs on one of four [runtime classes](/concepts/pricing-and-tiers). Each class has a fixed per-hour credit rate:

| Runtime class    | Credits / hour |
| ---------------- | -------------- |
| Small            | 5              |
| Medium (default) | 10             |
| Large            | 20             |
| XL               | 40             |

Medium is the reference rate: **1 credit = 6 minutes of Medium VM active time** (10 credits/hour). Credits are charged for active runtime only, prorated by the second.

## What consumes credits

Credits are debited for two kinds of work:

| Reason             | What it covers                                                                                                              |
| ------------------ | --------------------------------------------------------------------------------------------------------------------------- |
| `vm_runtime`       | A workspace VM's active time, charged at its runtime class's per-hour rate.                                                 |
| `snapshot_refresh` | Rebuilding a [warm slot's](/concepts/warm-slots) pre-provisioned VM snapshot when the linked repo's default branch changes. |

Administrative grants and corrections appear under `adjustment`. Nothing else debits credits — there is no token-based charge anywhere in the system.

<Note>
  Token counts (in/out/total) are recorded per task, model, and agent and shown in the [usage explorer](/guides/usage), but they never affect your credit balance.
</Note>

## Balance and ledger

Your credit balance is a signed ledger. Each entry is one credit transaction:

**Credits added**

* `subscription_grant` — your monthly tier allowance, granted each billing cycle
* `credit_pack_purchase` — a one-time [credit pack](/concepts/pricing-and-tiers)
* `promo_grant` — promotional credits
* `admin_adjustment` (positive) — manual grant

**Credits removed**

* `vm_runtime_debit` — VM active time
* `snapshot_refresh_debit` — warm-slot snapshot rebuild
* `expiration_debit` — credit-pack credits that reached their expiry
* `refund_reversal` — reversal of a refunded purchase
* `admin_adjustment` (negative) — manual correction

When you spend, credits are drawn from your subscription grant first, then from credit packs (earliest expiry first), then from promotional and admin grants. The balance card reports your credit limit, credits used, and credits remaining for the current cycle.

<Tabs>
  <Tab title="CLI">
    ```bash theme={null}
    aether billing balance
    ```

    Prints your remaining credits plus a recent-activity ledger (task, credits, VM size, active seconds, timestamp).
  </Tab>

  <Tab title="Web">
    The billing settings page shows your current-cycle balance card and recent activity.
  </Tab>
</Tabs>

## Running a task costs credits

Starting a task spends VM-runtime credits, so each start passes through an **admission gate** before the agent runs. A task start is admitted only when all of these hold:

* Your billing state is billable (an active or in-grace subscription).
* Your [tier](/concepts/pricing-and-tiers) permits the requested VM size.
* You have at least **1 minute** of spendable credit for that runtime class.

If any check fails, the task start is refused with one of:

| Failure                | Meaning                                                                               |
| ---------------------- | ------------------------------------------------------------------------------------- |
| `billing_blocked`      | Your plan is not in a billable state for new task starts.                             |
| `tier_forbids_vm_size` | Your tier does not allow the requested VM size — upgrade or pick a smaller size.      |
| `credits_exhausted`    | Not enough spendable credit to start the task — buy more credits or wait for renewal. |

<Tip>
  The one-minute minimum prevents a near-zero balance from being immediately exhausted on launch. See [Pricing & Tiers](/concepts/pricing-and-tiers) for tier allowances and credit packs.
</Tip>
