For questions, feedback, or requests for work, contact anjali@analoguegroup.org.
Pricing Under Unpredictable Marginal Costs
A framework for SaaS pricing when cost per user is a random variable
This guide develops a pricing framework for software whose marginal cost per user is material, variable, and only partially estimable — the situation for most AI-native products. It is prescriptive: given such a cost structure, how should pricing be designed, measured, and maintained.
The central claim is that a price schedule is a policy, not a price point. Every pricing decision — what to meter, what to include, where to cap, when to reprice — is a choice about what the price conditions on, and who holds the residual variance.
It is a companion to Measurement for Shared Compute, whose estimation discipline it assumes. The worked example is a simulation with illustrative parameters; re-estimate every distributional claim against your own telemetry before use.
01
The Object That Changed
The Object That Changed
Classical SaaS pricing rests on three conveniences. Marginal cost per user is approximately zero. The variable costs that do exist — hosting, support, third-party services — concentrate: they are roughly independent, finite-variance draws, so the portfolio mean converges and a single price of mean + margin absorbs the tail. And the distribution is stationary, so last quarter’s cost curve can price next quarter’s plan.
AI-native workloads break all three — but in specific, different ways, and the right design response depends on which one is binding. It is worth separating the sources, because much of the public discussion (“costs are fat-tailed, therefore subscriptions are dead”) conflates them.
| Source | What it looks like | What still works | What breaks |
|---|---|---|---|
| 1. Workload variance | Cost per request or task is fat-tailed but bounded above by the context window; a standard deviation of 3–4× the mean is plausible. | The mean exists and is estimable; it converges slowly. Robust estimation handles it. | Intuition calibrated to near-zero marginal cost; cost means estimated from small samples. |
| 2. Cross-user heterogeneity | Per-user mean costs differ by 10–100× across usage profiles. Within a heavy user’s month, draws concentrate — their own law of large numbers works. | Per-segment cost estimation, when segments are stable. | The idea that “the average user” prices the plan. Flat prices invite adverse selection: the users most attracted are the ones priced furthest below their cost. |
| 3. Common-factor exposure | Upstream repricing, model releases, and capacity crunches move every customer’s cost at once. Draws are correlated across the book. | Diversification across users — but only against idiosyncratic variance. | Portfolio-level averaging. Correlated shocks are the true ruin risk; insurers fail from common factors, not from single large claims. |
| 4. Non-stationarity | Elastic demand (efficiency gains raise consumption), lengthening contexts, and model swaps drift all of the above. | Short-window estimation and monitoring. | Set-and-forget pricing. Every estimate you price against expires. |
The pricing consequence is best stated directly: a price schedule is a policy, not a price point. Formally, the schedule is a rule:
Flat-rate unlimited pricing is the degenerate policy: π is a constant, conditioning on nothing. Every real pricing decision — what to meter, what to include, where to cap, when to reprice — is a choice about what π conditions on and who holds the residual variance. The framework is the four questions above, and the remaining sections take them in turn.
02
Measure Before You Price
Measure Before You Price
You cannot design the contract before estimating the object it prices. Three quantities are worth the instrumentation, all recoverable from serving logs.
The Per-Task Cost Distribution
Report robust summaries — median, p90, p99, truncated means — not just the mean. With a standard deviation of 3.5× the mean (plausible for a truncated power law), a mean estimated from 1,000 tasks carries a ±20% interval; 100,000 tasks narrows it to ±2%. Early products are routinely pricing against a mean known to ±20%. The contract must survive that error band, which argues for structures whose viability does not depend on the point estimate (see Contracts).
Per-User Cost per Billing Period, by Segment
Within a heavy user’s month, draws concentrate; the dispersion that matters for plan design is across users. The worked example below is representative: with per-task cost drawn from a truncated power law (tail index 1.5, mean $0.01, bounded at $5), monthly cost per user concentrates for every segment — but the segment means sit 25× apart.
Monthly Cost per User by Segment
Costs concentrate within each profile, but the profiles sit decades apart: a flat $20 plan is a different product for each of them, and the one it serves worst is the one it attracts most. Simulated: per-task cost tail index 1.5, mean $0.01, bounded at $5; 200,000 users per segment.
| Segment | Mean | p50 | p95 | p99 | CVaR95 | P(cost > $20) |
|---|---|---|---|---|---|---|
| Light (30 tasks/mo) | $0.29 | $0.25 | $0.47 | $0.96 | — | 0% |
| Casual (200/mo) | $1.95 | $1.84 | $2.74 | $4.02 | $3.53 | 0% |
| Standard (600/mo) | $5.84 | $5.66 | $7.41 | $9.16 | $8.44 | 0% |
| Power (5,000/mo) | $48.72 | $48.41 | $53.14 | $55.71 | $54.71 | 100% |
The Meter-Cost Ratio
If customers are billed in unit u (tasks, credits, seats) while costs accrue in compute, define R = internal cost per unit u. R is the quantity your margin actually depends on. Monitor its distribution and drift; a pricing plan is only as stable as R (see The Meter Trilemma).
Two disciplines carry over from the measurement guide. First, estimate from windows that include peak-concurrency states: a cost curve fit entirely off-peak prices a product you do not have. Second, where per-request resource cost is state-dependent and its conditional mean does not converge within the observation window, do not force it into a per-request scalar — price against capacity-impact signals (predicted sequence length, compute-time consumed) rather than predicted per-request cost.
03
Price Floors: Mean, Tail, Solvency
Price Floors: Mean, Tail, Solvency
The floor depends on who holds the variance — so compute it per contract component, not per company.
Where the vendor holds the variance (the flat part of any plan, and the allowance part of a hybrid):
The mean-plus-fixed-margin habit silently spends the difference between the mean and the tail. In the table above, the standard segment’s mean monthly cost is $5.84, but its CVaR95 — the expected cost given a bad month — is $8.44. A plan priced at mean + 40% margin has already given back most of that margin in the worst 5% of months. The right question for vendor-held tails is: how many tail months can the plan absorb before the margin is gone? If the honest answer is “fewer than one per customer-year,” the structure, not the price, is wrong.
Where the customer holds the variance (metered and overage components): the floor is allocated fixed cost plus service margin, with usage passed through at cost × (1 + m). The vendor has not eliminated risk; it has converted cost risk into bill-shock churn risk, which arrives on retention timescales. Predictability is part of the product. If you push variance to the customer, sell some of it back — caps, alerts, committed-use discounts — and price that insurance like an underwriter (next section).
04
Contracts Are Risk-Transfer Instruments
Contracts Are Risk-Transfer Instruments
Every pricing structure is an answer to one question: who absorbs the difference between expected and realized cost? The taxonomy is clearest in insurance language. The vendor underwrites some slice of the customer’s usage risk, and the premium for that slice should be set like an underwriter, not a marketer.
| Structure | Who holds the variance | Vendor liability | Customer predictability | Fits when |
|---|---|---|---|---|
| Flat unlimited | Vendor, entirely | Unbounded | Perfect | Per-user costs concentrate and users are homogeneous — rarely both true for agentic workloads |
| Flat + hard cap | Vendor up to cap; customer holds unmet demand | Bounded at cap | High, with a cliff | Demand is deferrable or uncritical; the cap is legible and labeled |
| Hybrid: base + allowance + overage | Shared: vendor to allowance A, customer beyond | Bounded near A; grows linearly at chosen rate beyond | High within allowance | The general default for AI SaaS (design below) |
| Prepaid credits | Customer holds pace risk; vendor holds unit-cost drift between purchase and burn | Bounded by credit pool | High | Heterogeneous usage; enterprise procurement; index credit value to a published cost measure |
| Pure metered pass-through | Customer | None on usage | Low | Infrastructure and APIs; sophisticated buyers who can hedge their own usage |
| Outcome-based | Vendor holds cost risk; customer holds none | Unbounded unless internally capped | High in dollars, if the outcome is verified | Verifiable outcomes — merged PRs, resolved tickets; requires routing and caching as internal reinsurance |
| Priority tiers | Vendor holds capacity risk; customer buys insurance against congestion | Bounded by capacity policy | Medium | Congestible systems with heterogeneous latency sensitivity (§7) |
The insurance mapping is exact. The included allowance is a deductible in reverse (the vendor covers the first A of cost); the overage rate is co-insurance; a hard cap is a stop-loss; prepaid credits are an indemnity limit; outcome pricing is a performance guarantee that the vendor must reinsure internally through routing, caching, and model selection.
Designing the Hybrid: Allowance, Base, Overage
The hybrid is the workhorse because its parameters map one-to-one onto the measured distribution:
- Allowance A. Set at the p80–p95 of the target segment’s monthly cost distribution. Most customers never see an overage (predictability), while the tail is paid for.
- Base fee B. B ≥ allocated fixed cost + E[min(U, A)] + loading. The middle term is the expected cost of the covered slice; the loading prices the vendor-held variance within it.
- Overage rate r. r ≥ unit cost × (1 + m). The slope passes the tail through at a margin, so heavy users price themselves — no adverse selection, because the marginal dollar of usage is never sold below its expected cost.
- Optional stop-loss. A customer-settable hard cap converts residual bill-shock risk into a feature, and bounds churn risk on the vendor side.
05
The Meter Trilemma
The Meter Trilemma
A meter — the unit the customer is billed in — should be three things at once:
- Cost-aligned. Bills track the driver of cost, so margin survives heavy use.
- User-legible. The customer can predict the charge before incurring it, and can control it.
- Manipulation-resistant. The unit cannot be cheaply gamed or arbitraged against you.
For agentic workloads you get at most two. Tokens are aligned and moderately robust, but illegible — nobody knows what a refactor costs in tokens before running it. Requests or tasks are legible and robust, but misaligned, because a task is unbounded in compute. Seats are legible and robust, and aligned to nothing. Dollar-denominated credits are aligned by construction and robust, but only semi-legible, since they still map to opaque underlying work. Outcomes (per resolved ticket, per merged PR) are legible and decouple price from cost by design, but are robust only where the outcome is verifiable — which is why outcome pricing arrives first in domains with instant verification, and why it transfers measurement risk onto the vendor.
R = internal cost per billed unit. Publish the legible unit; monitor the distribution of R; alert when its mean drifts or its tail fattens. When R moves, the options are reprice or re-route — and governance decides which.Model menus deserve special mention. A menu of (quality, price) pairs is second-degree price discrimination that also attacks the value-revelation problem: a user who chooses the cheap model for a task reveals that task’s value sensitivity. Routing then serves the revealed-elastic demand at low cost. A well-designed menu prices information, not just compute.
06
Segment Where Slopes Differ, Not Where Levels Differ
Segment Where Slopes Differ, Not Where Levels Differ
The natural instinct — “power users should pay more” — partitions customers by baseline level, E[cost | X]. That is prediction, not sensitivity, and it is the pricing version of a segmentation mistake the measurement guide warns against. What justifies a different contract is a different slope: does the segment’s cost scale differently with usage, with features (long context, agentic loops), or with system state?
The validation discipline is the same as for any allocation policy:
- Pre-specify operational segments — workload shape, customer tier, latency sensitivity — not deciles data-mined after the fact.
- Estimate cost curves per segment (cost against usage, across windows including peak) and test whether the slopes materially differ. If they do not, one contract with different allowance levels is enough.
- Differentiate only where the slope difference is stable. Differentiation without slope differences is price discrimination against your best customers, and they will notice.
07
Demand Shaping: Price as a Capacity Signal
Demand Shaping: Price as a Capacity Signal
Internal allocation already conditions on system state — queue-depth-dependent routing is a crude shadow price on the supply side. The demand-side analog is state-contingent pricing: off-peak discounts, burst pricing, priority lanes, batch-class service tiers. Even coarse two-regime pricing (peak versus off-peak credit value) shifts deferrable demand out of congested windows and recovers much of the theoretical welfare gain, without solving the full shadow-price problem.
The constraint is the customer’s predictability budget. Users accept state-contingent prices when the rule is stable and published; they revolt when the multiplier is a black box.
08
Governance Under Drift
Governance Under Drift
Everything in §1 drifts. Model releases move cost curves in both directions; efficiency gains cut unit costs while elastic demand raises volume; context growth raises the per-task bound; mix shifts as the product finds new users. Pricing is therefore a versioned artifact with a maintenance burden, not a launch decision. Three requirements:
- Telemetry on a cadence. Recompute the §2 quantities on a schedule, and version the assumptions: every price on the page should record which model mix, context distribution, and provider rate card it was designed against. When those inputs change, the price version is stale — whether or not anyone has noticed yet.
- Pre-committed adjustment rules. Indexation (list prices track a published cost index), caps on per-period changes, notice windows, grandfathering for existing contracts. The repricing episodes of the past two years are instructive: the backlash tracked surprise and opacity more than magnitude. A rule-following adjustment preserves trust because customers can verify the rule was applied to them fairly; a discretionary adjustment reads as betrayal even at smaller size. Commit to the rule while you are calm, so you are not negotiating it during a cost shock.
- Repricing triggers as stop gates. Pre-specify the conditions that force a pricing review — R drifting beyond its band, allowance exceedance running above the design quantile, an upstream repricing event, a model swap — and the conditions that block a pricing change, below.
Stop Gates for Pricing Changes
| Do not… | Because |
|---|---|
| …set a floor from data that excludes peak windows | You priced a product you do not have; the boundary states are where vendor-held variance is realized. |
| …ship a meter users cannot predict to within their budget tolerance | Illegible meters convert your cost variance into their churn risk. |
| …set allowances without segment-level cost distributions | The allowance is a deductible; setting it blind misprices the premium. |
| …reprice mid-cycle outside a pre-committed rule | Discretionary changes convert a pricing update into a trust event. |
| …remove a cap or limit without a monitored ramp | You are removing the stop-loss on an unbounded cover. |
09
The Decision Framework
The Decision Framework
Choosing a structure is a small set of questions about your measured reality:
| If… | Then |
|---|---|
| High heterogeneity, unverifiable outcomes, mixed buyer sophistication (the common case) | Hybrid base + allowance + overage, with customer-settable stop-loss |
| Infrastructure/API product; buyers can hedge their own usage | Two-part tariff: platform fee + pass-through at cost × (1 + m) |
| Outcomes verifiable (merged PRs, resolved tickets) | Outcome-based, internally capped and reinsured by routing/caching policy |
| Outcomes unverifiable and buyers are predictability-sensitive (enterprise procurement) | Prepaid credits, credit value indexed to a published cost measure |
| System congestible and demand partly deferrable | Add state-contingent lanes (peak/off-peak, batch class, priority) to any of the above |
| Costs concentrate and users are homogeneous (established, stable product) | Flat is still fine — keep the monitoring and a pre-committed adjustment clause |
The Worked Example, End to End
Take the §2 product, with a 50/40/10 mix of casual, standard, and power users, choosing between a $20 flat unlimited plan and the §4 hybrid ($20 base, $12 at-cost allowance, overage at 1.4× cost):
| Scenario | Casual | Standard | Power | Portfolio |
|---|---|---|---|---|
| Flat $20, launch mix (50/40/10) | +$18.05 | +$14.16 | −$28.72 | +$11.81 |
| Flat $20, mix drifts to 45/35/20 (adverse selection) | +$18.05 | +$14.16 | −$28.72 | +$7.33 |
| Flat $20, drifted mix + 25% upstream repricing | +$17.56 | +$12.70 | −$40.90 | +$4.17 |
| Hybrid, launch mix (every segment profitable at any mix) | +$18.05 | +$14.16 | +$22.69 | +$16.96 |
The flat plan looks healthy at the launch mix — and every dollar of its decline comes from the two correlated forces of §1, not from any single user’s tail: the mix drifts toward the segment the plan underprices, and an upstream shock moves the whole book at once. The hybrid keeps every segment profitable because its overage slope passes marginal cost through; the power user’s median bill lands at $71 with a p95 of $78 — variable, but predictable, and never sold below cost. Note what the example does not show: within-user tail blowups. With per-task cost bounded, monthly costs concentrate. The tail was never the main character — heterogeneity and correlation were.
10
Principles
Principles
- Price against a distribution, not a point estimate. The mean you price against converges slowly, and it expires.
- A price schedule is a policy. Flat rates are the degenerate case; decide deliberately what your price conditions on.
- Every contract is underwriting. Charge the premium; cap the policy.
- Who holds the variance is the design decision. Predictability is part of the product — sell it deliberately, on both sides of the contract.
- Meters: alignment, legibility, robustness — pick two, engineer the third. Monitor the ratio between the billed unit and internal cost.
- Segment where slopes differ, not where levels differ. One contract whose slope tracks cost beats a tariff sheet of special cases.
- Publish the rule, smooth the state. Let routing absorb high-frequency variation; expose only slow, legible regimes.
- Rule-following repricing preserves trust; discretionary repricing spends it. Commit to adjustment rules before the cost shock arrives.