Skip to content

Account

Usage and billing

Pay as you go, monthly plans and their allowances, rate limits and spend limits.

Every request is paid for one of two ways, and an account never mixes them on the same request.

Two ways to pay

  • Pay as you go. Each request draws down your prepaid credit balance at the model's listed price. New accounts start with $2 of credit.
  • A monthly plan. Pro, Pro+, Max, Ultimate or Odyssey, bought a month at a time. While a plan is running it serves every request with no per-token charge, within the plan's allowances, and your credit balance is left untouched.

When a month ends with no other month after it, requests go back to pay as you go automatically. Current prices are on the pricing page.

Plan allowances

Plan usage is measured in dollars at each model's listed price, the same amount pay as you go would have charged. Two allowances apply at once:

PlanDescription
Pro · $10/mo$10 per 5-hour session, $70 per week.
Pro+ · $20/mo$20 per 5-hour session, $150 per week.
Max · $50/mo$50 per 5-hour session, $500 per week.
Ultimate · $100/mo$150 per 5-hour session, $1,100 per week.
Odyssey · $200/moNo session limit, no weekly limit, no rate limit.
  • A session starts with your first request and lasts 5 hours. The first request after it ends starts a new one.
  • Weeks run in 7-day blocks from the moment your month began. The last block of a 30-day month is 2 days long.
  • A request is let through while both allowances have room, so the one that crosses a limit completes and the next is refused. Your Billing page shows both meters and when each resets.
  • When a limit is reached, requests return 429 with session_limit_reached or weekly_limit_reached and a retry-after of the time left until it resets. Switch on Continue on credits in Billing to have them billed to your credit balance at pay-as-you-go rates and rate limit instead, until the limit resets.
  • Upgrading mid-month starts the new plan at once, for a fresh month, with the unused part of the current one taken off the price. Renewals and lower plans start when the months you already hold end.
{  "error": {    "type": "rate_limit_error",    "code": "session_limit_reached",    "message": "Your Pro plan's 5-hour session usage limit ($10.00) is used up. It resets at 2026-10-01T17:04:11Z. To keep going now, turn on Continue on credits in Billing, or upgrade your plan.",    "param": null,    "request_id": "req_4f02b1c9d8e77a3160b5e2d1",    "retry_after_ms": 9540000  }}

What a request costs

(input_tokens - cached_tokens) / 1_000_000 * input_per_m+ cached_tokens                 / 1_000_000 * cached_input_per_m+ output_tokens                 / 1_000_000 * output_per_m= cost_usd
  • Prices are per million tokens and set per model. Where a model runs doesn't change what you pay.
  • Prompt-cache reads bill at the cached rate, where the model has one. Reasoning tokens bill as output.
  • Image models bill per generated image.
  • Failed requests are free. If a stream breaks or you disconnect partway through, you pay for what you received.
  • On a plan, the same request is recorded with a cost of $0, and its listed price counts toward the plan's allowances.

Rate limits

AccountDescription
Pay as you goUntil you have purchased $10 of credit in total.
Pay as you go, $10+ purchasedPermanent once reached. Promotional credit, like the signup bonus, doesn't count.
PlanSet by the plan: Pro 15, Pro+ 30, Max 100, Ultimate 300. Odyssey is unlimited.

Requests over the limit return 429 with rate_limit_exceeded and a retry-after header. Responses carry x-ratelimit-limit-requests and x-ratelimit-remaining-requests whenever a limit applies.

When requests are refused

An empty balance and a spend limit are billing problems, not rate limits, so they return a different status:

{  "error": {    "type": "billing_error",    "code": "insufficient_credit",    "message": "Your credit balance is empty. Add credit or subscribe to a plan to keep making requests.",    "param": null,    "request_id": "req_91c7de24af03b5168e2c4d70"  }}
  • insufficient_credit: the pay-as-you-go balance is empty. A request is allowed while the balance is above zero, so the last one can take it slightly negative.
  • key_spend_limit_reached: the key has spent its limit. Raise it on the API keys page, or use another key.

Set a spend limit on every key

A per-key limit is the one control that works while you are asleep, and it is the usual way to keep a test harness from draining the balance.

Tracking usage

Usage groups spend, tokens and requests by model or key. Activity keeps the per-request detail: status, timing, tokens and cost.

Buying credits or a plan

Buy either yourself on your Billing page, paying by card, SBP, SberPay or crypto — credit and plans apply automatically once the payment confirms. Plans are sold one month at a time and do not renew by themselves. Your credit history and plan months are listed on the same page.