Free · no account · one FIT file

Upload one ride.
Get the read a coach would give it.

Drop the FIT file from your Wahoo, Garmin, Hammerhead, Polar or Zwift ride. You get a deterministic audit — the numbers, the zones, the drift, the reps — and a link you can share. Built by a former pro. No account, no Strava.

Takes a few seconds. Nothing is stored but the numbers.

What comes back

One page, every number a coach would look at first

  • The whole-ride numbers

    Normalized power, intensity factor, TSS, variability, efficiency factor — computed the same way the coach computes them for a connected athlete.

  • Time in zone and session balance

    Seven Coggan zones by power, or seven heart-rate zones when the file has no meter, collapsed into the easy / moderate / hard split that decides whether a day did its job.

  • Best efforts and critical power

    Your mean-maximal power ladder from 1 s to 2 h, and — when the ride carried the efforts to support it — a critical-power and W′ fit.

  • Drift, durability, and the reps

    Heart rate against power over the ride, the power you still had after 1,500 kJ, and a rep-by-rep table when the file contains an interval set.

The science

What each number measures

Every number on the audit is arithmetic over the file you uploaded, computed the same way for every rider. Here is what each one measures, and where its evidence comes from.

Normalized Power, Intensity Factor and TSS are coaching constructs from Allen and Coggan's Training and Racing with a Power Meter, not laboratory measurements. The papers below establish the physiology each construct stands on; none of them tests the construct by name.

Normalized power, intensity factor and training stress

Normalized Power raises a 30-second rolling average of your watts to the fourth power before averaging, which weights surges the way your physiology does — a ride of 200 W with hard punches costs more than a flat 200 W. Intensity Factor is that number divided by your FTP, and TSS is IF squared times hours times 100, so one hour at threshold is 100 TSS by definition.

All three lean on FTP being a real physiological threshold. Borszcz and colleagues tested that assumption directly: in trained cyclists the 20-minute-test FTP tracked the maximal lactate steady state closely on average but with individual differences of several percent in either direction [1]. That spread is why the audit shows an estimated FTP as a band, not a point, and why a tested FTP tightens every number on the page.

Decoupling: heart rate against power over time

On a long steady ride, stroke volume falls and heart rate climbs to compensate while the work stays the same — cardiovascular drift [2]. Heat makes it worse: in the heat, drift between 15 and 45 minutes corresponded to a proportional loss in VO2max, so a fixed heart-rate target quietly becomes a harder effort as the ride goes on [3].

The audit compares the heart-rate-for-power relationship in the first and second halves of the ride at a shared reference power, which removes the pacing confound a plain ratio carries. It is shown only on rides that were steady and aerobic enough for the comparison to mean something, because on tempo and threshold rides the drift reads pacing, not durability. Indoors the same physiology runs warmer: at matched effort, skin temperature was higher and airflow near zero in the lab, which is why a fan changes this number more than fitness does over one winter [4].

Time in zone and session balance

The seven power zones are fixed fractions of FTP; the seven heart-rate zones are fractions of maximum heart rate, used only when the file has no power. The session-balance bar collapses them into easy, moderate and hard, the three-zone split Seiler's work on intensity distribution uses [5]. Across sports, the athletes who improve most spend most of their time easy and a small share genuinely hard; the moderate middle is where training load accumulates without a matching return.

Critical power and the work above it

When a ride contains hard efforts between three and twenty minutes, the audit fits a hyperbola through them. The asymptote is critical power — the highest intensity at which physiological steady state is still reachable — and the curvature is W′, the finite reserve of work you can do above it [6]. Critical power sits a little above the one-hour threshold FTP approximates, and the two-parameter model predicts time to exhaustion above it [7].

One ride rarely contains a full set of maximal efforts, so the fit is shown only when the curve supports it with medium or high confidence, and never when it had to be propped up by your FTP.

Durability: the power that survives fatigue

Durability is the resistance of your physiological profile to deterioration over a long ride — how much of your fresh power is still there after hours of work [8]. The audit measures it within the ride you uploaded: your best effort at a matched duration after 1,500 kJ of work, divided by the best fresh effort earlier in the same ride. A ratio near one means the engine held; a ratio well below it is the gap long events are decided on.

References

Peer-reviewed sources

  1. 01
    Borszcz et al. 2019. Is the Functional Threshold Power Interchangeable With the Maximal Lactate Steady State in Trained Cyclists?. International Journal of Sports Physiology and Performance, 2019.
  2. 02
    Coyle & González-Alonso 2001. Cardiovascular drift during prolonged exercise: new perspectives. Exercise and Sport Sciences Reviews, 2001.
  3. 03
    Wingo et al. 2020. Cardiovascular Drift and Maximal Oxygen Uptake during Running and Cycling in the Heat. Medicine & Science in Sports & Exercise, 2020.
  4. 04
    Mieras et al. 2014. Physiological and psychological responses to outdoor vs. laboratory cycling. Journal of Strength and Conditioning Research, 2014.
  5. 05
    Seiler 2010. What is best practice for training intensity and duration distribution in endurance athletes?. International Journal of Sports Physiology and Performance, 2010.
  6. 06
    Poole et al. 2016. Critical Power: An Important Fatigue Threshold in Exercise Physiology. Medicine & Science in Sports & Exercise, 2016.
  7. 07
    Jones et al. 2010. Critical power: implications for determination of VO2max and exercise tolerance. Medicine & Science in Sports & Exercise, 2010.
  8. 08
Related
FAQ

Ride audit: common questions

Do I need to enter my FTP?

No, but it helps. Without it the audit estimates FTP from the longest hard efforts in the file, and single-ride estimates err low, so intensity and load read slightly high. A tested FTP tightens every number.

Which head units and apps export a file the audit can read?

Any device or app that exports a FIT file: Wahoo ELEMNT, Garmin Edge, Hammerhead Karoo, Polar, Zwift, TrainerRoad, Rouvy and most others. Export the original FIT, not a GPX or TCX.

What do you keep?

The computed numbers and a low-resolution power and heart-rate trace of about 240 points. Never the file itself, never the per-second streams, never a GPS coordinate. Audits without an email are deleted after 30 days; you can delete yours any time from the result page.

Why is decoupling missing on my ride?

It is shown only on rides of at least an hour with both power and heart rate, ridden inside the aerobic window (normalized power at or under 80% of FTP, average heart rate at or under 80% of max). Outside that window the drift measures pacing, not durability, and a wrong number is worse than none.

Is any of this generated by AI?

No. Every number is deterministic arithmetic over your file, and every sentence on the audit is a template chosen by those numbers. The same file always produces the same audit.

We read your file in memory and keep only the computed numbers and a low-resolution power and heart-rate trace. Never the file, never the per-second data, never a GPS coordinate. Audits without an email are deleted after 30 days; delete yours any time from its page.