GET /api/v1/platform/quantum-instances/pricing-catalog
returns provider prices with source URLs merged with the platform’s own
rates, and the console’s Quantum Computers view renders the same data.
Target overview
Every workspace has the simulator and the GPU/CPU tiers in its default
catalog; real QPU targets require an entitlement for the workspace —
running a target you are not entitled to returns
404 no_active_entitlement_for_offer. Owners/admins can enable or disable
individual targets for their workspace.
Simulators — free
The statevector simulator (qcos.simulator.statevector, executed by the QCOS
runtime) is free for every workspace, including free-plan instances. Run the
quickstart at no
cost.
The free CPU simulation tier (softquantus.sim.cpu) adds 10 free
CPU-minutes per workspace per month. It requires a runtime bound
(max_runtime_seconds); at the allowance it blocks with
403 free_cpu_limit_met and charges nothing — switch to the paid cpu.*
tiers for more.
CPU compute
Billed per minute of runtime. Reference rates (cloud list rate x 2; the live catalog is authoritative):
Run one with
qcoscloud cpu, the SDK’s
cpu_job() or a
CPU_JOB
workload. A runtime bound is required; the reservation is rate x minutes.
GPU compute
Billed per minute, NVIDIA GPUs,num_gpus multiplies the rate. Reference rates
(cloud list rate x 2; the live catalog is authoritative):
Worked example. An
a100-80gb job bounded at 30 minutes reserves
30 x 17.07 ≈ 512 credits worst case. If it finishes in 12 minutes you are
charged 12 x 17.07 ≈ 205 credits and the rest of the reservation is released.
If GPU/CPU capacity is not currently available for your workspace, a submission
fails closed with 503 gpu_provider_unavailable and no money is held.
Real QPUs via QCOS
Real hardware runs through the QCOS runtime. The Execution Plane recognizes devices from IonQ, Quantinuum, Pasqal, Rigetti and IBM (IBM-class also covers QuEra and IQM devices for pricing purposes).- Most QPUs are metered per shot at the provider’s published rate plus the
platform markup. Per-shot rates vary by device and change with provider
pricing — list live devices and prices with the pricing catalog,
GET /api/v1/platform/qcos/backends,qcoscloud computersorqc.computers(). - IBM-class devices are metered per second of runtime. A run is admitted
only with an explicit
max_runtime_secondsbound (422 runtime_bound_requiredotherwise) and reserves rate x bound; the run is terminated at the bound so the reservation always covers the worst case. - Some devices carry a provider minimum charge; when one applies, the reservation covers it so settlement can never exceed what was reserved.
max_estimated_cost_usd and max_shots
(rejections happen before any reservation). Access is additionally shaped by
your quantum instance: free instances are
simulator-only, and instance allowlists/access groups apply.
Cost safety
The Execution Plane is the single bank for every backend:- Reserve before run. A prepaid run reserves its estimated worst-case cost
before anything is submitted. An insufficient balance is rejected up front
(
402 insufficient_credits) — nothing runs, nothing is charged. - Settle on completion. The actual metered cost is debited and the unused
reservation released.
actual_cost_usdon the job is the real charge. - Settlement is capped at the reservation. For prepaid runs the settled debit can never exceed what was reserved — a balance cannot go negative; the platform absorbs provider overruns.
- Stop when unpaid. GPU/CPU jobs are metered continuously by an enforcement pass (about once a minute) and the resource is stopped and deprovisioned the moment its reservation is exhausted. Nothing runs unpaid — this is also why GPU jobs auto-stop when a wallet reaches zero cover.
- Fail closed. An unavailable backend rejects cleanly with no money held; an unpriced target is refused rather than guessed at; reservations stranded without a provider are auto-released.
- Free tiers never charge. They block at their caps instead of billing.
Per-run guardrails
Workspace-level soft/hard limits and rolling budgets are described under
Billing; check your live balance
any time with
GET /api/v1/platform/billing/summary, qc.credits() or
qcoscloud credits.