Kanon metrics

Cost per merged item, yield and escape rates, always shown together, with approval and the human-correction rate beneath (plan 0003). Computed at 2026-10-16T19:23:04.886Z; generated by Kanon 0.41.0 at commit 0545496abb89b5601aa71baa29d00adcbe8448dd. How each number is made, and how to reproduce it, is below.

Measured on Kanon's own projects

These figures come from 2 projects, and Kanon's Owner runs all of them. Each project is shown alone, under the label it chose; no figure combines projects. Figures across adopters are published only once at least 3 adopters declare theirs.

Project: kanon

Window 2026-09-18 to 2026-10-16 (28 days). Band version 1. Cost at API list price. The band validity check passed: cost rises with band, τ 0.2932 (0.2279 to 0.3578), n 361. The figures are shown by band.

Headline

IndicatorBandValue (95% interval), sampleBand mix
Cost per merged item, medianall bands$1.78 ($1.64 to $2.03), n 361S 178, M 65, L 53, XL 65
Cost per merged item, medianband S$1.42 ($1.21 to $1.65), n 178none
Cost per merged item, medianband M$1.69 ($1.34 to $1.90), n 65none
Cost per merged item, medianband L$1.92 ($1.40 to $2.48), n 53none
Cost per merged item, medianband XL$3.14 ($2.73 to $3.85), n 65none
Cost per merged item, p90all bands$4.45 ($4.12 to $5.09), n 361S 178, M 65, L 53, XL 65
Cost per merged item, p90band S$3.58 ($2.77 to $4.23), n 178none
Cost per merged item, p90band M$4.25 ($3.63 to $6.63), n 65none
Cost per merged item, p90band L$7.80 ($4.39 to $10.04), n 53none
Cost per merged item, p90band XL$7.16 ($5.09 to $13.32), n 65none
Yield, share of delivery spend mergedall bands100.0% (100.0% to 100.0%), n 361S 178, M 65, L 53, XL 65
Yield, share of delivery spend mergedband S100.0% (100.0% to 100.0%), n 178none
Yield, share of delivery spend mergedband M100.0% (100.0% to 100.0%), n 65none
Yield, share of delivery spend mergedband L100.0% (100.0% to 100.0%), n 53none
Yield, share of delivery spend mergedband XL100.0% (100.0% to 100.0%), n 65none
Yield, share of delivery spend mergedno PRnot enough data (0)none
Escape rate, 30 days (merged 2026-08-19 to 2026-09-16)all bandsnot enough data (0)none
Escape rate, 30 days (merged 2026-08-19 to 2026-09-16)band Snot enough data (0)none
Escape rate, 30 days (merged 2026-08-19 to 2026-09-16)band Mnot enough data (0)none
Escape rate, 30 days (merged 2026-08-19 to 2026-09-16)band Lnot enough data (0)none
Escape rate, 30 days (merged 2026-08-19 to 2026-09-16)band XLnot enough data (0)none
Escape rate, 90 days (merged 2026-06-20 to 2026-07-18)all bandsnot enough data (0)none
Escape rate, 90 days (merged 2026-06-20 to 2026-07-18)band Snot enough data (0)none
Escape rate, 90 days (merged 2026-06-20 to 2026-07-18)band Mnot enough data (0)none
Escape rate, 90 days (merged 2026-06-20 to 2026-07-18)band Lnot enough data (0)none
Escape rate, 90 days (merged 2026-06-20 to 2026-07-18)band XLnot enough data (0)none
Approval rateall bands60.2% (54.6% to 65.6%), n 299S 163, M 51, L 43, XL 42
Approval rateband S69.9% (62.5% to 76.4%), n 163none
Approval rateband M64.7% (51.0% to 76.4%), n 51none
Approval rateband L51.2% (36.8% to 65.4%), n 43none
Approval rateband XL26.2% (15.3% to 41.1%), n 42none
Human-correction rateall bands8.4% (4.8% to 14.4%), n 131S 99, M 17, L 9, XL 6
Human-correction rateband S6.1% (2.8% to 12.6%), n 99none
Human-correction rateband Mnot enough data (17)none
Human-correction rateband Lnot enough data (9)none
Human-correction rateband XLnot enough data (6)none

Trend, 6 windows of 28 days

WindowCost, medianCost, p90YieldEscape, 30 dEscape, 90 dApprovalCorrectionBand mixVersions first seen
2026-05-01 to 2026-05-29not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)none—
2026-05-29 to 2026-06-26not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)none—
2026-06-26 to 2026-07-24not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)none—
2026-07-24 to 2026-08-21not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)none—
2026-08-21 to 2026-09-18not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)none—
2026-09-18 to 2026-10-16$1.78 ($1.64 to $2.03), n 361$4.45 ($4.12 to $5.09), n 361100.0% (100.0% to 100.0%), n 361not enough data (0)not enough data (0)60.2% (54.6% to 65.6%), n 2998.4% (4.8% to 14.4%), n 131S 178, M 65, L 53, XL 650.27.0, 0.29.0, 0.30.0, 0.33.0, 0.34.1, 0.36.0, 0.38.0, 0.39.0

By Kanon version, over the trend's 168 days

Kanon versionItemsCost, medianCost, p90YieldEscape, 30 dEscape, 90 dApprovalCorrection
0.25.017$1.55 ($0.84 to $3.89), n 17not enough data (17)not enough data (17)not enough data (0)not enough data (0)not enough data (0)not enough data (0)
0.27.014$2.35 ($1.22 to $3.14), n 13not enough data (13)not enough data (13)not enough data (0)not enough data (0)not enough data (0)not enough data (0)
0.29.012$1.69 ($1.52 to $2.28), n 12not enough data (12)not enough data (12)not enough data (0)not enough data (0)not enough data (11)not enough data (0)
0.30.019$1.39 ($0.86 to $1.82), n 19not enough data (19)not enough data (19)not enough data (0)not enough data (0)not enough data (19)not enough data (2)
0.33.015$1.33 ($0.67 to $2.48), n 14not enough data (14)not enough data (14)not enough data (0)not enough data (0)not enough data (14)not enough data (2)
0.34.121$1.47 ($1.13 to $2.10), n 20not enough data (20)100.0% (100.0% to 100.0%), n 20not enough data (0)not enough data (0)70.0% (48.1% to 85.5%), n 20not enough data (6)
0.36.042$2.03 ($1.52 to $2.39), n 41$3.97 ($2.97 to $13.32), n 41100.0% (100.0% to 100.0%), n 41not enough data (0)not enough data (0)68.3% (53.0% to 80.4%), n 414.0% (0.7% to 19.5%), n 25
0.38.015$1.86 ($1.17 to $4.64), n 15not enough data (15)not enough data (15)not enough data (0)not enough data (0)not enough data (15)not enough data (9)
0.39.0182$1.94 ($1.62 to $2.28), n 180$4.87 ($4.08 to $6.63), n 180100.0% (100.0% to 100.0%), n 180not enough data (0)not enough data (0)53.1% (45.8% to 60.2%), n 1798.1% (4.0% to 15.7%), n 87

112 items carry no Kanon version.

Project: operator

Window 2026-09-18 to 2026-10-16 (28 days). Band version 1. Cost at API list price. The band validity check has not enough data (4), so the figures are pooled across bands.

Headline

IndicatorBandValue (95% interval), sampleBand mix
Cost per merged item, medianall bandsnot enough data (4)S 2, L 1, XL 1
Cost per merged item, p90all bandsnot enough data (4)S 2, L 1, XL 1
Yield, share of delivery spend mergedall bandsnot enough data (4)S 2, L 1, XL 1
Yield, share of delivery spend mergedno PRnot enough data (0)none
Escape rate, 30 days (merged 2026-08-19 to 2026-09-16)all bandsnot enough data (0)none
Escape rate, 90 days (merged 2026-06-20 to 2026-07-18)all bandsnot enough data (0)none
Approval rateall bandsnot enough data (4)S 2, L 1, XL 1
Human-correction rateall bandsnot enough data (0)none

Trend, 6 windows of 28 days

WindowCost, medianCost, p90YieldEscape, 30 dEscape, 90 dApprovalCorrectionBand mixVersions first seen
2026-05-01 to 2026-05-29not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)none—
2026-05-29 to 2026-06-26not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)none—
2026-06-26 to 2026-07-24not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)none—
2026-07-24 to 2026-08-21not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)none—
2026-08-21 to 2026-09-18not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)not enough data (0)none—
2026-09-18 to 2026-10-16not enough data (4)not enough data (4)not enough data (4)not enough data (0)not enough data (0)not enough data (4)not enough data (0)S 2, L 1, XL 10.40.0

By Kanon version, over the trend's 168 days

No Kanon version has enough items to show alone.

6 items carry no Kanon version. Versions with fewer than 10 items are not shown alone: 0.38.0 (8), 0.40.0 (1).

Kanon's health

Read from Kanon's own issues at 2026-10-16T19:23:26.746Z.

Disputed rules

0 disputes filed with the "Dispute a rule" form; 0 name no rule the rulebook has.

No rule is disputed.

Time to fix a bug reported against Kanon

0 filed: 0 open, 0 fixed, 0 closed unfixed; 0 fixed but not yet released; 0 closed with no linked fix.

IntervalBugsMedian, daysp90, days
To the fix closing it0——
To the first release with the fix0——

Upgrade lag

Not on this page. It is read from adopters' rows, and is published only once at least 3 adopters declare theirs.

How these numbers are made

Where they come from

Each project's runs and work items, as Kanon's telemetry store holds them. The store's aggregate function reads the rows and answers estimates and counts, never a row. A project appears here only when its operator declared its figures publishable under a label of their choosing; the label is the only name this page holds.

What cost means

Cost is the API list price of the tokens a run reported, not what anyone paid. On a subscription the amount paid is a different number, and there is no translation to a subscription.

What each indicator does not claim

Cost per merged item
What the adopter paid: on a subscription that is a different number, and decision 1 forbids translating. Nor the spend on work that never merged (that is efficiency, §2.3), the Explorer's, Overseer's and digests' spend (shown as overhead, beside, never inside), or the cost of human time. Items with no run row at all (human-authored, §1.2) have no cost and are excluded, never counted as zero.
Yield
That unmerged spend was worthless: a bail that led to a split, or a PR closed because the plan changed, is still counted as not merged. Nor that the merged work was right (accuracy, §2.4).
Escape rates
That an item with no link had no defect. Detection needs a link someone made (§3.5), so the rate is a lower bound. Nor does approval measure correctness: a lenient reviewer raises it. That is why approval is never shown without the escape rate and the human-correction rate.

The detection gap

An escape is counted only when someone linked a revert or a fix to the item. A defect nobody linked is not counted, so the escape rates are lower bounds.

When a bail counts against yield

A merged item counts in the window it closes in. A run that stopped before opening a pull request counts only once its issue has had no run for 30 days, so that a run still being retried isn't counted as abandoned. So in a project's first 30 days, and for 30 days after any burst of such runs, yield reads high, and the "no PR" figure has few or no items, until they settle.

Bands, windows, samples and intervals

Band version 1. Each window is 28 days and ends at the start of the UTC day the page was computed. The figures are shown by band only when the band validity check finds cost rising with band (a Kendall τ-b interval above zero, from at least 10 items); otherwise they are pooled, with the band mix beside them.

Each figure shows its value, its 95% interval and its sample (n). Medians and p90s use an order-statistic interval, rates a Wilson interval, and yield a bootstrap of 2000 resamples with seed 1262571087. A figure from fewer items than its minimum shows "not enough data (N)": 10 for a median, 30 for a p90, 20 for approval and correction, 20 for yield, and 50 for an escape rate.

How to reproduce them

Computed at 2026-10-16T19:23:04.886Z, and generated by Kanon 0.41.0 at commit 0545496abb89b5601aa71baa29d00adcbe8448dd. The store's operator regenerates the page each week from the store's aggregate function, which only the operator can call. The commands are in Kanon's repository, in docs/metrics.md under "Reproduce a page", and the method is above.