Methodology

Methodology

Two scores. Thirteen components for race readiness, four for current fitness. Each one measures one specific thing you've done in training. Together they answer two questions: how is your training going right now, and how prepared are you for race day.

This page lists what each component measures and why it earns a place in the score. It doesn't print exact thresholds, weights, or formulas — those live in the engineering spec. What you see here is the framework: the signals the model reads, and the reason each one matters.

The two scores, again

Fitness Level is a four-week window. It moves quickly. A great week of training lifts it; a recovery week dips it. It tells you how training is going right now.

Race Readiness is an eight-week window plus race-distance context. It moves slowly on purpose — a great single week barely budges it, because the model is reading the arc, not the last seven days. It tells you how prepared you'll be on race day.

The two aren't redundant. You can be flying through a build (high Fitness Level) and still be missing the tune-up race that anchors Race Readiness. Showing both is more honest than blending them into one number that hides the gap.


Fitness Level — four components

Execution

Did you actually do the work. The model compares the planned weekly volume to what you logged. It's the heaviest component because nothing else matters if the runs aren't happening.

Threshold fitness

A recent tempo or threshold run, graded against marathon pace. A solid 20-minute tempo tells the model more about your current fitness than ten easy runs do — threshold pace is the single best proxy for marathon performance in amateur runners.

Long-run base

Your longest run in the past few weeks. Long runs build the durability the marathon demands, and they fall off faster than people expect. The component rewards consistent long-run work, not single-week heroics.

Marathon-pace volume

How much time you've spent at marathon pace across the window. MP is the pace you're trying to hold for 42 km; volume at that pace is a direct rehearsal of the demand.

Flag penalty

A deduction when recent runs show overreach or under-recovery markers — flagged automatically from the run record. The only piece of Fitness Level that can move the score down. It exists so the score can't trend up while the data is telling you to back off.


Race Readiness — performance capacity

Six components. Can you physiologically run the time.

Tune-up race

A recent half-marathon (or 10K, scaled). Your half-marathon time four to eight weeks out is the strongest predictor of marathon finish time in the published literature — nothing else in the framework comes close. When you haven't run one yet, the model says so; it doesn't pretend a missing tune-up scored zero, and it doesn't substitute training paces for race data.

Threshold fitness

Same idea as the Fitness Level version, but graded against your marathon goal pace rather than your current pace. The model looks for your fastest sustained tempo effort and asks: how far inside marathon pace was that.

Critical Speed margin

Your aerobic ceiling — derived from the relationship between your best sustained efforts at different durations. The component measures how much headroom you have above marathon pace. A wide margin means MP feels comfortable. A narrow margin means MP is close to your ceiling, and the race will hurt accordingly.

Long-run base

The eight-week version: multiple training-long runs, not a single PR. The marathon distance is the test of the long-run base; the component rewards repetition.

Marathon-pace volume

Eight-week cumulative MP volume, plus the biggest single MP block inside a long run. The split matters: a long run with a substantial MP block teaches your body to hold pace under fatigue. That's not the same as accumulating MP in fresh-legged sessions.

Durability

Pace drift across a long, marathon-paced effort — measured as the change in efficiency (speed per heartbeat) from the first half to the second. Low drift means the engine is holding pace without spiralling cardiac cost. The newest of the components; recent research shows durability predicts marathon outcome independently of threshold and VO₂max.


Race Readiness — readiness and risk

Seven components. Will you arrive at the start line able to express that capacity.

Chronic load

Your average weekly volume across the eight-week window. Chronic load is what the marathon expects you to handle — under-loaded runners struggle in the final third regardless of how sharp their threshold is.

Acute-to-chronic workload ratio

This week's load divided by the rolling average of recent weeks. Inside a comfortable band, you're progressively overloading. Above it, you're ramping faster than your body is adapting — the empirical risk window for soft-tissue injury. Below it, you're detraining.

Niggle status

Your one-tap daily check-in: none / minor / modifying training / suppressing it. The one place where your felt sense of your body gates the score, and it's weighted to override a stack of green numbers. A runner ignoring an active niggle should not see a glowing Race Readiness.

Recovery

A composite of HRV, resting heart rate, sleep duration, and sleep score over the past two weeks, compared against your own baseline — not population norms. The model counts how many markers are currently disturbed. One of the few components that scales with data coverage: three days of wellness data can't outpunch a full two weeks.

Taper discipline

Activates inside the three-week pre-race window. Compares your last three weeks' volume to your peak week and grades the taper progression. Dormant outside the window — no penalty for keeping volume up mid-build.

Race-day plan

Activates inside the four-week pre-race window. Counts three planned elements: target pacing splits, fueling plan, weather forecast. The model's way of separating fitness from plan — plenty of marathons fail not because the runner was unfit but because race-day execution wasn't thought through.

Self-efficacy

A weekly 1–5 self-rating on confidence in the goal time. Belief in the goal pace is a documented predictor of marathon outcome, independent of physiology. Small component on purpose — the model doesn't want belief overriding evidence — but it earns a spot.


How partial data is handled

The principle that matters most: components without measurable data drop out of both sides of the calculation. They're not assumed to score zero, and they're not filled with averages.

That's what evidence completeness means on the dashboard — the percentage of the framework that's actively scoring. A score over 60% completeness is honest about being a partial read. A score over 95% is a confident prediction. Above the high-completeness threshold, the score gets a visual accent — the model is telling you it has enough to act on.

Early in a build, completeness will be low — tune-up race, taper discipline, race-day plan, none of those windows have opened yet. As race day approaches, completeness rises naturally. A low number twelve weeks out is expected. A low number in race week would be a real signal.


The full engineering spec — exact thresholds, formulas, and source files — lives in the project's internal documentation. This page is the framework. You see the score. The reasoning sits here.