Priced by the call.Paid in margin.
Builds, calls, tokens, minutes — a thousand tiny meters. The free tier looks just like the paying tier. Pin every meter to an org. One ledger. Stop subsidizing the workloads eating your margin.
Four things every dev tool needs to ship.
Pin every minute, build, and API call to an org. Re-cost runner moves without a re-price. Gate the free tier at the SDK. Compose seats and meters into one plan. One ledger, wired in once.
Cost, by org. Seats and usage in one row.
Seats give you a number. Meters give you the truth. Joining them per org tells you which paying customer is quietly running 40,000 CI minutes against a $99 plan — and which OSS repo is actually carrying your brand.
- Seats × build minutes × API calls per org. One ledger, not three CSV exports.
- Flag underwater orgs the day they flip. By plan, by region, by runner class.
- Re-rate any month against any future plan. "What if matrix builds were metered separately?"
- LineformTeam · 48 seats$1,920+271%
- RecallrPro · 12 seats$348+158%
- Octave OSSFree · OSS$0−180-420%
- Hatchling AIPro · 8 seats$232−2418%
- Forge MonoEnterprise · 220$11,800+364%
- Nightowl LabsTeam · 30 seats$1,200−42-18%
- Freetier · 01shared-2cpu→spot-4cpu+22%margin
- Protier · 02dedicated-4cpu→dedicated-8cpu+11%throughput
- Teamtier · 03dedicated-8cpu→dedicated-8cpu—no change
- Enterprisetier · 04bare-metal→bare-metal🔒contract
Move runners re-pricing your plans.without
A new region opens. A spot pool drops 60% per minute. Bare-metal runners cut your top tier's COGS in half. Update the runner's rate in your Cost Sheet and every new build is re-costed — the price your orgs see doesn't move.
- Per-runner cost rates. Different orgs, different runners, same ledger.
- Plans are versioned and reversible. Roll back v9 of your runner map without a migration.
- Forecast margin before you commit. Margin trend and forecast per org.
Gate the free tier at the SDK. Not the dashboard.
The CLI shells out 200 times. The IDE plugin polls every 4 seconds. The OSS repo never upgraded — and never will. Cap or override on the hot path, billed when they overflow, lifted with a flag instead of a deploy.
- Entitlement checks on the hot path. Atomic check-and-deduct on every request.
- Block, or auto-bill the burst. Overflow is a line item, not an outage.
- Per-org override from the dashboard. Lift a cap for one customer. No deploy, no PR.
- ✓Lineform· ci.run(matrix=8)$0.42allowed
- ✓Recallr· api.search(q=…)$0.004allowed
- ✗Octave OSS· ci.run(matrix=240)$8.40capped└─ free tier · 28k min/mo cap reached
- ✗Hatchling AI· api.embed(rows=4M)$1.20capped└─ pro tier · 2M row monthly cap
- ✓Forge Mono· ci.run(matrix=512)$18.60override└─ enterprise · burst until 17:00 · billed @ $0.018/min
- seat$24.00/ seat / mo
- meter[ci_min]$0.012/ min · free_tier: 2000 × seats
- meter[api]$0.40/ 1k req · free_tier: 1,000,000
- burst[matrix]$0.018/ min · matrix_size > 32
- billingmonthlyin_arrears · usage_capped
Mix seats, minutes, and API calls in one plan.
Dev tool plans bill three units at once: seats, build minutes, and API calls. Describe the plan in English; ship it versioned, without a deploy. Your pricing page stops being a quarterly engineering project.
- Compose any plan shape. Seat, minute, request, build — combine per plan.
- Versioned at the org level. Grandfathering is a flag, not a migration.
- A/B prices, then keep what wins. Promote the version that lands the margin you want.
Stop guessing.
Start knowing.
Wire Nozle into your stack and see your first margin report in 60 minutes.
- Setup
- 60 min
- Card required
- no
- Sales call
- no
- First invoice
- in 60 min