The numbers, reviewed
Cameron's real formula, age grades on the 2025 road tables, and heat and altitude refitted to published data. Some numbers moved a little.
We went back over every model behind the calculators, checked each one against its source, and fixed what did not hold up. Some numbers you have seen here will now come out slightly different. Here is what changed and why.
Cameron, for real this time
The Cameron predictor was using made-up constants that had nothing to do with Dave Cameron's formula — and they made it more optimistic than Riegel for the marathon, the opposite of what the guide said. It now uses Cameron's own model. A 10K in 42:00 used to predict a 2:57:34 marathon; it now predicts 3:16:46, a few minutes more cautious than Riegel's 3:13:12. Because the model goes wrong far beyond the marathon, the calculator now uses it only up to 100 km. The Cameron guide explains the formula.
Age grades on the road tables
Age grades now come from the 2025 road age-grading tables by Alan Jones, approved by USATF. The old figures came from track standards and gave everyone under 30 a factor of exactly 1.0. Most age grades move by a point or two, up or down. If you have agreed to share health data, the age grades stored on your runs are recalculated with the new tables. More in the age grading guide.
Heat and altitude
The heat model is now fitted to the finishing times of 1.79 million marathon runners (El Helou et al., 2012). A mild morning costs less than before, and a hot one keeps costing more up to 35 °C instead of stopping at 30 °C. Altitude now counts from 300 m, rising smoothly, instead of jumping from nothing to 1.4% at 915 m, and it no longer stops at 2,400 m. The environmental guide shows the new tables.
Smaller things
The negative split on Result Breakdown is now 1% per half rather than 4%: a 3-hour marathon goes through halfway in 1:30:54 instead of 1:33:36. And the marathon band of your training paces now ends at your predicted marathon pace, so it no longer runs into the threshold band.
All of it comes from version 2.0 of the open-source calcpace library.