# Plans

How a plan allowance is counted, what happens when it runs out, auto-renewal and changing plans.

A subscription plan gives a **token allowance** for one period, on top of your balance. What a plan contains is set by sivcloud and can differ from plan to plan. The Plans page in the console writes out each plan in the same sentences as the examples below.

## How an allowance is counted

The usage of one request is computed with one formula:

```text
used = plain input tokens × input weight
     + cache-read tokens × cache weight
     + cache-write tokens × cache-write weight
     + output tokens × output weight
       (× model price, when the plan uses the price multiplier)
```

Plain input tokens are the input outside cache reads and cache writes. Reasoning tokens count as output. The weights can differ for each plan. Examples:

- 5 million tokens per day for all models. Cached tokens do not count. Unused tokens expire at the end of the day. At most 60 requests per minute. At most 4 requests at the same time. When used up, usage is charged to your balance.
- 100 million tokens per period for deepseek-v4.1-flash. Cached tokens count in full. Unused tokens do not expire. When used up, requests are rejected until the allowance refills.
- 20 million tokens per period for all models. Cached tokens count in part. Output tokens count ×4. Usage is multiplied by the model price. Unused tokens expire at the end of the period. When used up, usage is charged to your balance.

These allowances are examples to explain the counting, not plans on sale. The plans on sale and their prices are in the console.

## Cache

A plan treats cache tokens in one of two styles:

- **Cache counts**: cache-read tokens reduce the allowance, in full or with a smaller weight.
- **Cache does not count**: cache-read tokens do not reduce the allowance at all.

The allowance sentence in the console says which: "Cached tokens count in full", "count in part", or "do not count". About the cache itself, see [Cache](https://sivcloud.com/en/docs/cache/).

## Tokens that do not expire

Some allowances with a per-period window can be set not to expire. What is left can be used until it is gone, also after the subscription ends, after a plan change and after an early renewal. A renewal adds tokens to the same allowance. Daily and weekly allowances always expire at the end of their day or week. Days and weeks follow WIB time (Asia/Jakarta), and the week starts on Monday.

## When the allowance runs out

Each allowance has its own setting:

- **Continue on balance**: the next requests are paid from your balance at the model price. One request is paid by one source only, never split in two.
- **Reject**: requests are rejected with `plan_quota_exhausted` (HTTP 429) until the allowance refills.

A request is paid by the plan only if its whole estimate (prompt + max_tokens, or 4,096 tokens when not set; at most 8,192) fits the remaining allowance; otherwise the whole request is paid from your balance.

The [Usage](https://sivcloud.com/en/docs/console/usage/) page marks each request: Balance, Plan, or Plan + Balance.

## Plan rate limits

An allowance can have limits on requests per minute, concurrent requests and requests per day. A request that hits one is rejected with `rate_limit_exceeded` (HTTP 429) and is not moved to your balance. See [Rate limits](https://sivcloud.com/en/docs/rate-limits/).

## Per-key limits do not apply

The spending limit in rupiah on an API key only limits balance spending. Usage paid by a plan allowance does not count against it.

## Periods and renewal

- A period is counted from the moment you subscribe (for example 7 or 30 days), not by the calendar.
- The first purchase is paid directly with QRIS.
- **Auto-renew from balance**: turn it on on the Plans page. Near the end of the period the plan price is taken from your balance and a new period starts.
- **Not enough balance**: the charge is tried every 10 minutes during the last 60 minutes of the period, until it succeeds or the period ends. You are told by email and in the console. If the balance is still too small, the subscription ends. You can always renew yourself with QRIS.
- At most one next period can be paid ahead.
- **Renew early**: when the plan allows it and the per-period allowance is used up, a new period starts at once and the old one ends. Remaining days are not refunded.
- You are reminded by email and in the console 3 days and 1 day before the last period ends (weekly plans: 1 day only), and when an allowance runs out. No reminder is sent while auto-renew is on and the balance covers the renewal.

## Changing plan

You have one active subscription per plan group; different groups can run side by side.

- **Up to a bigger plan**: takes effect now. You pay the price difference for the rest of the period, prorated, with QRIS. The extra allowance is active at once.
- **Down to a smaller plan**: takes effect in the next period, at no cost now. The old plan runs until its period ends.

Upgrading and buying a plan are paid by QRIS. The payment dialog has a checkbox **I understand how tokens are counted**; the tick is recorded with your order.

**Cancel a plan change**: a downgrade that has not taken effect yet (it waits for the next period) can be cancelled from the Plans page. Your plan stays as it is now.

## Ending

A subscription ends when its period ends and it is not renewed. Its allowances are withdrawn, except allowances that do not expire. Later usage is paid from balance.
