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

# Plans

> The four plans, what each one gives, and the three things a plan actually governs

A plan governs three things: how fast you may spend (two rolling usage windows),
how many machines you keep and whether they stay running, and a short list of
features that cost real money per call. It does not govern which models you may
use — every model the platform offers is on every plan, free included.

The plans come from the server, and the list is public:

```bash theme={null}
curl -s "$SPLOX_BASE_URL/v1/subscriptions/plans"
```

```json theme={null}
{
  "plans": [
    {"slug": "free",    "name": "Free",    "monthly_price_microdollars": 0,
     "yearly_price_microdollars": 0,          "machine_limit": 1, "machines_persistent": false},
    {"slug": "pro",     "name": "Pro",     "monthly_price_microdollars": 25000000,
     "yearly_price_microdollars": 240000000,  "machine_limit": 1, "machines_persistent": true},
    {"slug": "max",     "name": "Max",     "monthly_price_microdollars": 99000000,
     "yearly_price_microdollars": 948000000,  "machine_limit": 3, "machines_persistent": true},
    {"slug": "max_20x", "name": "Max 20x", "monthly_price_microdollars": 300000000,
     "yearly_price_microdollars": 2880000000, "machine_limit": 5, "machines_persistent": true}
  ]
}
```

Trimmed: each plan also carries its `id`, its `sort_order` and the Stripe price
ids checkout uses.

Money is in **microdollars** everywhere in this API: 1,000,000 µ$is one dollar. `25000000` is$25.

## The four

| Plan    | Monthly | Yearly           | Machines | Kept running |
| ------- | ------- | ---------------- | -------- | ------------ |
| Free    | \$0     | \$0              | 1        | No           |
| Pro     | \$25    | $240 ($20/mo)    | 1        | Yes          |
| Max     | \$99    | $948 ($79/mo)    | 3        | Yes          |
| Max 20x | \$300   | $2,880 ($240/mo) | 5        | Yes          |

`Max` and `Max 20x` are one card in the app with a `5×` / `20×` toggle on it.

<Frame caption="The plan grid: price, what the tier adds, and the machines it runs">
  <img src="https://mintcdn.com/sploxltd-165e0515/FtagtnY5r9E1DKmP/images/account/plans.png?fit=max&auto=format&n=FtagtnY5r9E1DKmP&q=85&s=a4858f47abb9c4ddfddee6e44a67d86e" alt="The Splox pricing page showing Free, Pro and Max" width="2880" height="1800" data-path="images/account/plans.png" />
</Frame>

## What a plan governs

### Pace

Every plan holds two rolling windows, five hours and a week, and the plan sets
the cap on each. A bigger plan is a bigger cap, not a different product: the
same models, the same tools, more of them per window.

The caps themselves are not published — the plans endpoint deliberately omits
them, and the app's pricing cards compare tiers in multiples rather than in
units. What you read instead is how full yours is, as a percentage, on
[Usage](/account/usage).

### Machines

`machine_limit` is how many machines the account keeps, counted over the ones
you have not deleted. `machines_persistent` is whether they stay up.

A machine on a paid plan has no idle timeout: it runs until somebody stops it.
A free machine stops after 30 minutes with nothing touching it, which is the
line that decides whether a long-running program — a Telegram bot, a watcher, a
nightly job — is something you can actually run. Either way the disk survives:
stopping is not deleting. See [Machine](/concepts/machine).

Asking for a machine past the limit is refused before anything is created:

```bash theme={null}
curl -s -X POST "$SPLOX_BASE_URL/v1/machines" \
  -H "Authorization: Bearer $SPLOX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "second-machine"}'
```

```json theme={null}
{
  "error": "machine_limit_reached",
  "detail": "your plan runs one machine at a time: delete one, or move up a tier",
  "machine_limit": 1,
  "plan_slug": "pro"
}
```

That is a `402`, not a `429`, and the code is deliberately not `out_of_funds`:
nothing resets on its own here and a full wallet buys no extra machines. Only a
different plan does.

### Features that cost per call

3D model generation runs on Max and Max 20x: `media_generate_3d`, `media_rig_3d`
and the `media_job` poll that goes with them. A mesh is minutes of GPU time, so
it is part of what a Max subscription buys rather than something every run can
reach for. On any other plan the tool answers `3D generation is available on the
Max plan`.

Two more things need a paid plan, and both are refusals a free account meets
rather than features it sees:

* **Top-ups.** The wallet that funds [extra usage](/account/extra-usage) can
  only be filled on Pro or Max. A free account gets
  `topup_requires_subscription`.
* **API tokens.** Minting a key for the API needs a paid plan. See
  [API keys](/account/api-keys).

## What a plan does not govern

**Models.** Every plan reaches every model the platform offers, and the free
plan is not restricted to a cheap one. What differs is how much of a window a
call consumes, and an expensive model consumes more of it. See
[Model](/concepts/model).

**Tools and MCP servers.** All of them, on every plan.

**Your own provider keys.** A call made on a connection you added yourself is
paid to your provider, not to us: it is not priced, it is not written to the
ledger, and it does not fill a window.

## Changing plans

The pricing page and the **Manage** button on **Usage & billing** both end at
Stripe. Which one you get depends on whether you already pay for something —
first subscription goes to Checkout, a change of plan or interval goes to the
Customer Portal. [Billing](/account/billing) has the endpoints and what each
answer means.

<CardGroup cols={2}>
  <Card title="Usage" icon="gauge" href="/account/usage">
    The two windows, and how to read the bars.
  </Card>

  <Card title="When a window fills" icon="hand" href="/account/limits">
    The refusal, the wait, and what does not lift it.
  </Card>

  <Card title="Extra usage" icon="wallet" href="/account/extra-usage">
    The wallet that pays past a full window.
  </Card>

  <Card title="Billing" icon="receipt" href="/account/billing">
    Subscribing, invoices, canceling, and what a downgrade does.
  </Card>
</CardGroup>
