How to estimate Critical Power (or eFTP) and W' with intervals under 3 min (my first web app)

Just an idea, but since you mentioned “false maximal efforts” (efforts where, when repeated you see higher outputs) do you see any merit in including additional regressors in the estimate? Ie. RPE, condition given prior efforts (could use “form” from intervals), or a “fed score” (did I fuel properly today/timing of last meal).

Might just end up being too subjective and make more noise rather than helping.

As this is my first experience creating something with programming, I kept it quite simple. The idea is just to input the data and analyze the impact on the CP and W’ estimations. Individually, the user and perhaps the coach can assess whether the estimation makes sense and suspect if any of the efforts were submaximal or not. But I agree it makes sense for the user to evaluate information like RPE, nutrition, and prior fatigue when analyzing what they demonstrated in the test. Just like most tools, it shouldn’t be used blindly.

*I always refer to ‘test’ because I prefer to analyze the three intervals in one or two tests rather than pulling data from historical records.

2 Likes

In my experience, using these values will either overestimate or underestimate the PC and it will depend very much on the phenotype of the athlete.

2 Likes

A friend of mine who tested yesterday… a master athlete who isn’t in his best shape and wants to return to training.

image

His peak performance data comes from his history, which includes regional competitive races. Both estimates make sense to him. During his peak, he was competitive in his local category (and the local category here generally has a CP of 4-4.3 w/kg). Now, untrained, he easily rides with the group that only does leisure rides (2.5-3 w/kg) and can no longer keep up with the trained group.

But I agree that the short testing method won’t work for everyone. My idea was more about sharing the mathematical method and having fun creating something online outside of my spreadsheets. Goal achieved! :slight_smile:

2 Likes

Hey everyone,

Just wanted to share a mathematical curiosity

A friend recently did the three max efforts under 3 minutes. The estimated CP was 275 watts and a W’ of 24,302 joules.

A few days later, the same athlete completed a ramp test (20w/1min increments). He failed after completing the 380-watt stage.

After the ramp test, out of curiosity, I estimated when the athlete should have failed on this ramp protocol using the CP and W’ we estimated (Critical power test for ramp exercise - PubMed) . It predicted failure would happen about 7 seconds into the 400-watt stage. The expected peak power was around 402 watts, and the expected best 1-minute power was 393 watts.

What’s really neat is that the athlete’s actual power in the final stage of the ramp test was super close to what the CP and W’ model predicted.

Marcelo

image

image

If he gets to 380W in ramp test, 20W per minute is too low. A good ramp test shouldn’t take more then 10 to 12 min.

I agree… but he doesn’t have experience and only chose the standard Zwift test out of curiosity. After he did it, he sent me the result to compare with the other way of estimating CP/FTP.

Then, out of curiosity myself, I checked what his estimated failure would be in the ramp configuration, using the estimated CP and W data.

Throws an error for me. Used last year’s efforts and tried this year’s; both throw an error.


1 Like

The model indicates an invalid physiological profile, as the existence of this curve would require an excessively high (physiologically unrealistic) W’ and an underestimated Critical Power (CP). This occurs when the power output during the 3-minute interval substantially decreases relative to the 1-minute interval. Consequently, it suggests that, from a physiological standpoint, the 3-minute interval power should be greater. Nonetheless, factors beyond purely physiological constraints can contribute to an individual terminating a maximal effort, and under these circumstances, this test model will not be appropriate.

Marcelo

IDK. I plugged in my numbers YTD and get the same error. I’ve done plenty of all out 3 min efforts. Perhaps I’m awful at 3 min intervals, but don’t think the numbers are invalid.

I wouldn’t say the numbers are invalid… but the resulting curve would require an unrealistic CP and W… so the model warns about that. I would say those are not good durations to evaluate your power curve. When I have some free time, I’ll probably modify the site to allow for longer intervals for analysis (and maybe more than 3 intervals to choose the intervals produce the smallest error)…

2 Likes

I’ve tried a handful or two of “good data with other models” combinations. I have relatively weak 3-5 minute power, and cannot get a reasonable estimate for threshold power.

For example one season I worked on long power:

  • 288W at 20-min
  • 281W at 30-min
  • 276W at 40-min
  • 274W at 50-min
  • 268W at 60-min

Intervals
eCP 272W / W’ 22,620
eFTP 278W / W’ 17160

Feeding short power from narrow window of time, during the same timeframe as the long power numbers:

my 2 hour power is higher than that estimate:

For that season you can see versus Intervals “all males” that I have good power under 60s and 60-120-min, with a noticeable dip in the 3-5 min range.

Would love to have another model in my back pocket for comparison. That said, I have developed excellent feel for estimating CP/FTP via long tempo and shorter 8-12 minute efforts. In general my self-estimated FTP closely aligns with GC/Intervals eCP (shown above) and WKO mFTP.

Thanks again for posting, I know it works for others, just not for me.

1 Like

I ran the model with 7 inputs using your values from the All time column of the previous post…
The model chooses 3 of the 7 values that will result in the best curve… In your case it chose 5s, 60s, and 600s. This curve estimates a CP of 268 watts and a W’ of 21718 joules.

Ideally, multiple intervals generate a better result, but multiple tests are not always tolerable… Perhaps for you, the ideal would be to pair your 10 min (as you’ve already noted yourself) with the sprint and the 60s, for example.

Marcelo

1 Like

I made a quick modification to allow for wider values (up to 20 min) in the aerobic interval @WindWarrior . It should work better for some people.

Marcelo

2 Likes

thx, works better for my max effort power curve!

Thank you, @WindWarrior. Your feedback has helped to improve the tool.

For the aerobic assessment, users can now input existing performance data, such as from a 20-minute test or a personal record (PR) on a segment. This avoids the physical strain of conducting an additional maximal effort test, like a 3-minute all-out test. If a user lacks a maximal aerobic data point, they can test intervals ranging from 3 to 20 minutes to evaluate what works best for them.

Short-duration intervals are still used to estimate the anaerobic contribution.

To illustrate how these components interact, I have created an example with three athletes who have different sprint and 1-minute power outputs (anaerobic) but the same 20-minute result (aerobic). This demonstrates how individual differences in anaerobic capacity impact the final functional threshold estimate (labeled as ‘Limiar’ on the image).

WhatsApp Image 2025-06-27 at 13.12.29

In summary, users can select the aerobic interval that works best for them (from 3 to 20 minutes) and then fine-tune the anaerobic contribution to the threshold estimate using two additional, very short intervals.

Marcelo

1 Like

Done @pepe

2 Likes

Awesome, thank you.

A bit of ‘artistic licence’ for the 5 sec and 5 min which are near–max efforts during rides, but within my current (post-injury) max ballpark from experience. Thankyou.

1 Like

In the ballpark with a recent lactate test



HbDiff