Skip to content

Billing and Quota ​

How usage is charged ​

Each request is charged according to the model price, input and output usage, the group that actually handled the request, and any applicable tool-call surcharge. The final charge shown in the console usage log is authoritative.

View pricing ​

The model catalog lists available models, capabilities, protocols, and prices. Models may be billed by tokens, requests, images, audio duration, or dynamic rules.

For token-priced models, tools such as Web Search, File Search, and image generation can add a fee based on actual calls. Per-request models normally do not receive an additional tool fee. Administrators can change tool prices, so use the current Usage Log as the source of truth.

Google Search grounding can be billed per query or per prompt that was actually grounded. Other Web Search channels can likewise use channel-specific encoding and vendor-reported search usage. Video edits and extensions may settle against the final output resolution; the vendor usage and billing details in Usage Logs remain authoritative.

DeepSeek V4.1 models deepseek-flash and deepseek-v4-pro use built-in peak/off-peak expressions, while deepseek-search and deepseek-fetch charge successful result-bearing search or fetch requests. Claude streams preserve explicit zero usage and cache-only input, estimating only when counts are actually missing so cached input is not charged again as ordinary input. Vidu jobs are billed from the model, duration, and resolution actually sent to the vendor; metadata can no longer override fields that participated in reservation.

A task plugin can declare billing usage fields and examples such as seconds, resolution, or product tier, which administrators use to configure dynamic task expressions. The time-rule editor builds same-day ranges (for example, 09:00–12:00) with both bounds required and overnight ranges (for example, 21:00–06:00) across midnight. Equal bounds do not become an all-day match, and invalid hour, minute, or weekday values are rejected.

Explicit model modifiers do not arbitrarily change billing identity. The platform first looks for a price configured for the complete requested name, then normalized @effort / @thinking billing names, and finally the base model. @temperature and @topp do not participate in price matching. Task-plugin aliases from channel mappings likewise retain the original requested name for billing and fall back to the mapped target expression only when the alias has no expression.

Model cards now show cache-read prices from expression pricing and sort consistently by input, output, and per-request price. When a task model has several usage prices, an unused price that is zero in every tier is hidden so it is not mistaken for a free mode; a model whose prices are genuinely all zero still displays them. Root administrators can still reach pricing administration when the public model catalog is disabled.

The built-in gpt-6-astra default uses expression pricing and switches to a long-context tier above 272,000 tokens. Site administrators can override default pricing, so users should still treat the model catalog and final usage log as authoritative.

Wallet, top-ups, and subscriptions ​

The new console combines related features in Wallet:

  • current balance and account quota;
  • supported top-up methods;
  • subscription plans;
  • redemption codes;
  • billing and top-up history;
  • referral rewards and eligible balance transfers.

Some cards may be hidden by site configuration. A subscription can have an expiration date, model restrictions, or a separate quota; the Wallet page shows the applicable terms.

Before creating a payment, the platform rejects amounts that cannot convert to valid quota, exceed the per-payment range, or would push the wallet past its safe limit. After payment succeeds, the order state and quota are updated atomically, and duplicate callbacks do not credit the wallet twice.

Quota display ​

The frontend may display quota as USD, CNY, or tokens depending on site settings. Internally, the platform uses smaller quota units for precise settlement, so users normally do not need to convert them manually.

Control costs ​

When creating an API key, consider setting:

  • A quota limit for the key
  • An expiration date
  • Allowed models
  • An IP allowlist when required by your application

If you notice unexpected usage, disable or delete the affected key immediately and review the usage logs.

Verify a charge ​

The final charge in Usage Logs is authoritative. Logs include model, request time, input and output usage, selected group, reasoning effort, stream status, latency, quota consumption, and errors. Dynamic-pricing details highlight the conditional multipliers that actually matched; a tool icon next to the amount marks a tool-call surcharge. Protocol conversion carries native upstream billing-usage snapshots and merges streaming usage monotonically so settlement uses authoritative upstream data when available. Responses API cached input is normalized from compatible fields such as input_tokens_details.cached_tokens and settled separately at the cache ratio, preventing the same cached tokens from also being charged as ordinary input. For image, video, and other asynchronous jobs, also review Task Logs; plugin task details list the actual billing facts and available artifacts, and a failed-task refund also reverses the recorded user and channel usage.

Usage-log previews retain the billing tier recorded when the request ran instead of reinterpreting history through later pricing changes. Task-settlement logs are explicitly marked as task billing so dynamic-expression usage and tiers render correctly.