The method

How Mully measures progress

Progress reads in OpenCaddie are deterministic math over your own shots and rounds, computed before any AI writes a word. This page shows the actual rules, rendered from the same constants the product runs.

The noise floor

Golf numbers wobble. A range session on a cold morning, a flyer off the heel, a round on a windy course: none of that is a trend. So each tracked metric has a minimum step a movement must clear before Mully counts it at all. On top of that fixed step, the floor adapts to your own scatter: if your baseline is noisy, the bar rises to half your baseline spread, whichever is larger.

MetricGoalCounts as movement
Driver smashHigher is bettermore than 0.02
Driver spinLower is bettermore than 150 rpm
Driver carryHigher is bettermore than 4 yd
7-iron consistencyLower is bettermore than 1.5 yd
Greens in regulationHigher is bettermore than 5 percentage points
ScramblingHigher is bettermore than 5 percentage points

The recent window is the last 7 days of range sessions, compared against a recency-weighted baseline of everything before it. Round stats use your last 2 rounds instead, because a weekend golfer can go 7 days without a round.

One good session is not a fix

Every metric sits in one of four states. The interesting transition, the one Mully celebrates and then retires from your practice plan, has the strictest gate in the system.

Deficient
Behind the benchmark for your handicap, with no material improvement yet. This is where prescriptions aim.
Improving
Moved materially toward the benchmark, past the noise floor. Mully praises the trend and keeps a lighter version of the prescription. The win is real but nothing is banked yet.
Cleared
Was behind the benchmark, now at or past it, the move cleared the noise floor, and your last two data points BOTH sit at or past the benchmark. That last condition is the sustained gate: a single hot session can never graduate a fault. Once cleared, Mully celebrates it with the before and after numbers, then stops prescribing drills for it.
OK
At or past the benchmark with no deficiency history. Nothing to fix, nothing to say.

The benchmarks, by handicap

Behind and cleared are always judged against a benchmark for YOUR handicap band, never against tour numbers. These are the actual anchors the product interpolates between, printed from the same table the trajectory gauges and the Comprehensive Mully Review read.

Metric5 hcp10 hcp15 hcp20 hcp25 hcp
Driver smash1.471.451.441.441.44
Driver spin3,045 rpm3,190 rpm3,275 rpm3,275 rpm3,275 rpm
Driver carry238 yd227 yd216 yd209 yd209 yd
7-iron consistency6.5 yd8.0 yd10.0 yd12.0 yd12.0 yd
Greens in regulation45%34%27%23%23%
Scrambling41%32%25%22%22%

Distances shown in yards; the app converts to meters when that is your display unit. Every anchor traces to a named source in the sourcing tree.

Every prescription is tracked to an outcome

When Mully prescribes a drill, that prescription becomes a tracked record. A nightly pass compares each open prescription against the Progress Engine read for its metric and settles it:

  • Cleared when the metric graduates through the sustained gate above.
  • Improved when the metric is in the improving state and the prescription is at least 14 days old. A partial win gets banked as exactly that.
  • Regressed when the metric moves materially the wrong way and the prescription is at least 21 days old.
  • No effect when 45 days pass with none of the above. Mully says so and changes the plan.
  • Superseded when a later review replaces the drill for that same metric before it resolves.

One honesty rule sits over all of it: the record never claims the drill CAUSED the change. Drills run alongside range time, rounds, and plain luck, so the evidence stored with each outcome says only that the number moved while the prescription was active. Your next Comprehensive Mully Review opens by settling what the last one flagged, with those outcomes as the source of truth.

How Mully measures progress | OpenCaddie · OpenCaddie