ARCNM

Building blocks

Pricing & billing

Subscription tiers, the single extraction meter, flat overage, pay-on-200, and rollover.

ARCNM is a subscription API with a single meter — extractions. You pick a tier, get a monthly (or annual) included quota, and any usage beyond it bills at a flat per-extraction overage rate. There is no prepaid wallet, no credit packs, and no per-call price to budget. The rules:

  1. One meter. 1 part in 1 environment = 1 extraction. A single-component file (3D CAD or 2D drawing, ≤ 10 MB) costs exactly one extraction. No multipliers, no file-size brackets. A multi-environment run meters one extraction per (part × environment) cell — 7 parts compared across 4 environments is 28 extractions, and the Run button / batch response tells you the cell count before anything is charged. A grid the remaining quota can't cover never runs in part: /calculations/batch rejects it whole (402 quota_exceeded with cells_requested/cells_available), while /quote and /upload-and-quote save the grid's cells parked blocked first — their 402's details also carry batch_id and parked_cells, so after a top-up you resume that batch (/calculations/bulk-retry or per-cell /run) instead of paying to submit it again.
  2. Billed on success. Failed runs, 4xx/5xx responses, and idempotent cache hits cost nothing — they never draw down your included quota or trigger overage.
  3. Flat overage, no surprise upgrades. Run past your included quota and the extras bill at your tier's flat per-extraction rate on the automated invoice. You're never force-upgraded mid-cycle.
  4. Rollover. Unused included extractions roll one month forward, then expire. Rollover applies only while the subscription is active — rolled extractions are forfeited on cancellation (and the cancel flow tells you so before you confirm).
  5. No double billing (dedup). Re-running the identical part in the same environment with the same configuration within the same billing month is served from the first succeeded result — instant, and never billed again. A different environment, a changed configuration, or a rate/fleet edit to the environment makes it a genuinely new (billable) calculation. This applies per cell in a multi-environment run: re-submitting an identical grid answers every unchanged, already-succeeded cell from cache for free (served_from_cache in the batch response), and a fully cached grid is served even when you're over quota — cached answers never need allowance. Cells still running aren't cached yet, so retry an in-flight grid with an Idempotency-Key, not by re-submitting it.

For current rates, see arcnm.io/pricing. The tiers below are the canonical summary (EUR).

Tier Base Included Overage / extraction Seats Environments / fleets Calibration runs API keys Rate limit Audience
Free €0/mo 35 / mo €0.99 (prepaid) 1 2 / 2 1 / mo 1 60 / min dev testing, MVP builds
Pro €199/mo 500 / mo €0.49 5 5 / 5 10 / mo 5 300 / min job shops, quoting desks
Scale €1,199/mo 5,000 / mo €0.32 25 30 / 30 unlimited + nightly auto-recalibrate unlimited 600 / min platforms & ERPs
Enterprise custom terms¹ custom¹ custom¹ custom¹ custom¹ custom¹ custom¹ ~1,200 / min OEM procurement, supply chains

¹ Enterprise is a per-tenant contract — volume, overage rate, base price, limits and payment terms are negotiated, annual and prepaid. There is no list price: talk to sales for a quote. Once your agreement is active, your in-app billing page and GET /billing/v3/overview (contract) always show your contracted numbers (volume, overage rate, base price, PO) — the public catalogue never carries them.

  • Free is pay-as-you-go. The 35 monthly extractions are free and need no card. Past them, extractions are saved but paused until you add a payment method and top up a balance; they then run at €0.99 each and pause again when the balance is spent. Nothing is ever lost, and you are never billed beyond what you have paid in — the balance is the ceiling.
  • Self-serve overage is prepaid; Enterprise is invoiced. Free, Pro and Scale draw overage from your prepaid balance, so there is no surprise invoice. Enterprise overage is billed in arrears on your contracted terms.
  • Annual billing saves ~10%. Pro is €2,149.20/yr and Scale is €12,949.20/yr on annual. Enterprise is annual/prepaid by default and sales-led.
  • Scale and Enterprise bundle the Calibration+ and Compliance packs (below) at no extra charge — that's what makes their calibration runs and API keys unlimited.

New accounts start free. Every new organisation lands on the Free tier — 35 extractions per month, no card required. Free obeys the same rules below: a failed run never burns one. Once the included 35 are used, further extractions are saved and park as blocked until you add a card and top up; the coverage block on the response says which, and where to fix it.


The single meter, and what's free

Every extraction request hits one meter. What counts, and what's free:

Outcome Counts against quota / overage?
Extraction succeeds (200 OK, valid result) Yes — 1 extraction
Extraction fails / cancelled / timed out No
4xx (bad input, auth, rate-limit) No
5xx (our fault) No
Idempotent cache hit (identical content within the cache window) No

This is pay-on-200: you're only metered when we return a valid extraction. A leaked parts:read key can never spend — only parts:write runs an extraction. Behind the meter, the engine selects the right analysis for each input automatically; it never changes what you're charged.


Add-on packs

À-la-carte on any plan (Scale bundles Calibration+ and Compliance; Enterprise bundles all four). Descriptions are deliberately numeral-free — each pack lifts your plan's included allowance, whatever that is:

Pack Price Adds
Seats+ €9/mo Additional user seats above your plan's included seats
Compliance €49/mo RBAC + audit log + immutable lineage + role inheritance + unlimited API keys on any plan
Environments+ €29/mo Unlimited costing environments and machine fleets, above your plan's included allowance
Calibration+ €99/mo Unlimited calibration runs + nightly auto-recalibrate, on any plan

Layer-3 data products

The cost-intelligence benchmark, sold separately from extraction usage:

Plan Price Contents
Analyst €299/mo Benchmark queries via the dashboard
Intelligence €1,500/mo Benchmark API, category dashboards, supplier-quote comparison
Data Feed €50k–250k/yr Bulk API / data feed, procurement benchmarking (contact sales)

Plan limits

Beyond the extraction meter, each tier carries resource limits — seats, costing environments, machine fleets, calibration runs per month, and API keys (see the tier table above). Limits gate creation only: hitting one blocks creating more of that resource; everything you already created keeps working, and nothing is ever deleted — including after a downgrade.

A creation request over the limit returns 402 Payment Required with the code entitlement_exceeded and a machine-readable payload:

{
  "error": {
    "code": "entitlement_exceeded",
    "message": "Seat limit reached (5/5). Upgrade your plan or add Seats+ to invite more teammates.",
    "details": {
      "feature": "seats",
      "used": 5,
      "limit": 5,
      "upgrade_url": "/settings/billing"
    }
  }
}

details.feature is one of seats, environments, fleets, calibration_runs, api_keys. details.limit is your plan's effective ceiling (tier + add-on packs + any enterprise agreement); upgrade_url is a same-origin path to the billing page. The dashboard renders these as an upgrade prompt; API clients should surface the message and treat the condition as permanent until the plan changes (or, for calibration_runs, until the monthly window resets).

Current usage against every limit is available in the billing overview (GET /billing/v3/overview, limits[]) and on Settings → Billing.


Quota, overage, and rollover in practice

A Pro account includes 500 extractions/month at €199. Run 600 and the extra 100 bill at €0.49 each — +€49 on that month's automated invoice. No upgrade prompt, no work blocked.

Unused extractions roll one month forward. A Pro account that uses 300 of 500 in March carries 200 into April (on top of April's 500), then anything still unused after April expires. Cancel mid-cycle and any rolled balance is forfeited — the cancellation flow states this before you confirm.

Raw uploaded files are stored free and purged on a rolling GDPR window (12 months on paid tiers, 30 days on Free). The small derived cost labels are kept for the life of the account.


Reading your usage

Read your tier, included quota, current-period usage, and overage with a key carrying the wallet:read scope via the billing/wallet API. The dashboard (Settings → Billing) renders the same — meter usage, rollover balance, overage to date, plus invoices and receipts.


Invoices, receipts, tax

Subscriptions, overage, invoices, and the Customer Portal are handled through our billing provider. The org owner sees invoices and receipts in the dashboard (Settings → Billing). Sales tax / VAT is collected per the customer's billing country where applicable.


See also

  • Errorsquota_exceeded, and the pay-on-200 status codes.
  • Calculations — where the extraction meter is incremented.
  • Rate limits — request limits (separate from billing).