partcl·billing

Guide

How Partcl bills usage of Boson, the GPU-accelerated chip-design tool. The short version: $10K prepaid minimum, metered overage at $3 per million gate-runs, hard cap at 200%.

Contents

Pricing model

Annual contracts. You prepay a minimum that buys included usage. Once you've used your prepaid credit, additional runs are metered as overage at a per-Mgate-run rate. A hard limit (default 200% of credit) caps your maximum spend in any cycle.

ComponentDefaultNotes
Prepaid minimum$10,000 / cycleBuys ~3,333 Mgate-runs at the default rate.
Overage rate$3.00 / Mgate-runCharged at penny resolution: ceil(gate_runs × rate / 1e6).
Hard limit200% of creditDaemon refuses new runs once total consumption hits this cap.
Cycle length1 yearCycle ends → invoice issued for any overage.

Core concepts

organization
Organization

Your company's account. One org = one customer relationship with Partcl. The org holds all your billing data: workspaces, cycles, balance, invoices.

e.g. Partcl, Acme Corp

workspace
Workspace

A single machine running Boson, identified by its own Ed25519 keypair. One org typically has multiple workspaces — one per cluster, server, or developer laptop. Each workspace runs a small partcl-licensed daemon that issues local grants and buffers usage to push back to Partcl.

e.g. laptop-will, gpu-cluster-a, ci-runner-3

cycle
Billing cycle

The window your prepaid credit is scoped to. Typically one calendar year. Mid-cycle credit top-ups add to the same cycle's balance — you see one rolling balance, not multiple drops.

e.g. April 2026 → April 2027

prepaid credit
Prepaid credit

The included usage your annual contract prepays for. Expressed in dollars on the portal, but the underlying meter unit is Mgate-runs. Default minimum is $10,000 ≈ 3,333 Mgate-runs at the standard rate.

gate-run
Gate-run

The atomic billable unit. Roughly: one cell evaluated by Boson during a static-timing-analysis pass. The metering protocol speaks gate-runs; the portal converts to dollars at presentation time.

A picorv32 STA = ~7,000 gate-runs ≈ $0.03. An NVDLA partition STA = ~7.7 M gate-runs ≈ $23.10.

mgate-run
Mgate-run (Mg)

One million gate-runs. Pricing is quoted per Mgate-run because it's a more human-readable unit. 1 Mg = 1,000,000 gate-runs.

overage
Overage

Usage above your prepaid credit. Charged at the org's overage rate per Mgate-run, rounded up to the cent — not to the nearest Mgate. At the default $3/Mg rate, 3,334 gate-runs is billed as 2¢, not $3.

hard limit
Hard limit (cap)

The maximum total consumption permitted in any cycle, expressed as a percentage of the prepaid credit (default 200%). Once this is hit, the local daemon refuses new grants and returns an error to Boson — runs fail loud rather than rack up unbounded charges.

bundle
Bundle (internal)

The cryptographic primitive behind a credit grant: a CBOR-encoded, Ed25519-signed token that the Partcl API issues and the customer daemon imports. Customers don't usually deal with bundles directly — the portal shows balance in dollars.

daemon
Daemon (internal)

The on-customer-machine process (partcl-licensed) that holds an active bundle, issues local grants to Boson, logs usage, and pushes signed reports back to Partcl over HTTPS.

Deployment

Boson runs on the customer's hardware. The licensing daemon runs alongside it.

Air-gapped

Operator emails an enrollment blob → customer runs partcl-licensed enroll --token ... once → daemon mints local grants for every Boson run. Periodically (e.g. quarterly) the customer exports usage, ships it to Partcl out-of-band, and gets a fresh signed bundle in return.

Connected

Same enrollment, except the daemon auto-pushes usage reports to api.partcl.com over HTTPS continuously, and Partcl issues bundles back without manual exchange.

Hybrid

Connected by default; falls back to local-only when the network is down. Pushes catch up when connectivity returns.

Direct cloud (no daemon)

For non-air-gapped customers who don't want to run the daemon at all. Boson uses an API key (psk_*) and meters every STA directly against api.partcl.com/v1/usage/record. No SQLite, no Ed25519 identity to manage on the client. Loses the append-only crypto chain of the daemon path, but TLS to api.partcl.com is the trust boundary instead.

export PARTCL_API_KEY=psk_xxxxxxxxxxxx_yyyy...
# That's it. Boson now meters every STA against the org owning the key.

Mint keys via the Dashboard's "API keys" button on each org. The plaintext is shown once, at creation time — store it then. Revoking is instant.

Access & permissions

Operator (Partcl side)

Anyone with a verified @partcl.com Google Workspace account is automatically an operator and can:

Customer

Anyone with a verified Google account whose email has been granted to a specific organization can sign in and see only that org's balance and history. Grants are made by an operator via the Dashboard.

API (scripted access)

For service accounts or CI: paste an audience-pinned ID token into the fallback box on the sign-in card.

gcloud auth print-identity-token \
  --audiences=https://api.partcl.com

Limits & safeguards

Questions? Email will@partcl.com.