Check your sub’s worth.

SubWorth is an open benchmark measuring what AI coding subscriptions actually deliver — in dollars of equivalent API usage, derived from real usage rather than from marketing pages.

No Worth Multiple is published on this site yet. The measurement method is being validated first, in the open, over 14 days. What you can read today is the method itself, the raw progress of that experiment, and a first rolling estimate the day-14 criteria can still void.
30 / 14
Experiment day
390,714
Quota snapshots
133
Sessions observed
2
Quota windows tracked

Last reading 2026-09-25 08:00 UTC. Follow the experiment →

The question

What is a Worth Multiple?

Providers publish multipliers — “5× Pro”, “20× Pro” — but never amounts. SubWorth supplies the amount from two things anyone can observe locally: what a stretch of usage costs at the official API rate card, and how much of the quota window it moved.

AEV(w)=API-priced consumption ($)% of window consumedMonthly ceiling=AEV(wbinding)×30.43757Worth Multiple=Monthly ceilingmonthly price\begin{aligned} \mathrm{AEV}(w) &= \frac{\text{API-priced consumption}\ (\$)}{\text{\% of window consumed}} \\[8pt] \text{Monthly ceiling} &= \mathrm{AEV}(w_{\text{binding}}) \times \frac{30.4375}{7} \\[8pt] \text{Worth Multiple} &= \frac{\text{Monthly ceiling}}{\text{monthly price}} \end{aligned}

The binding window is whichever quota window runs out first — on Claude plans, the weekly one — and it is the only window that may be extrapolated. A month is 30.4375 Julian days (365.25/12), so a weekly window regenerates 30.4375/7 ≈ 4.35 times per month, not 4. Every published figure carries a fixed scope: theoretical monthly ceiling, weekly-capped.

Read the full methodology →

Leaderboard

What will be published, and when

The table exists before the numbers do. Each row lists the plan, the signal it is measured from, and the confidence grade it can realistically reach.

PlanRoleQuota signalWeekly valueWorth MultipleConfidence
Claude Max 20xPrimarystatusline rate_limits, integer %MeasuringMeasuringHigh (target)
Codex Pro 20xSecondary/wham/usage endpoint via hook, integer %MeasuringMeasuringLow → Medium
Kimi AllegroSecondaryofficial /usages endpoint via hook, integer %CollectingCollectingMedium (ceiling)
Grok HeavySecondaryunified.jsonl billing events imported, integer %CollectingCollectingLow

Confidence shows the grade each plan can realistically reach, not one it has earned. Grok Heavy carries a caveat that will ship with any number it produces: the plan-exclusive Heavy model is web-only with no API price and invisible to the CLI, so what is measurable is this account’s CLI coding usage, excluding whatever the web-side Heavy model consumes.

Pipeline

How a number would be produced

1 · Collect

A statusline hook appends each quota reading — window, percentage used, reset time — to a local JSONL file. Nothing is uploaded; nothing but those fields is ever written.

2 · Price

The local token log for the same interval is priced item by item with the provider’s API rate card as it stood that day. Rate cards are versioned in the repository, so a price cut never reads as a quota cut.

3 · Aggregate

Each pair of readings becomes one delta per window, quality-scored on its own terms, reduced per contributor and then across contributors by median — never a flat average, which one heavy user could swing.

Commitments

What this project holds itself to