Skip to content
Slow Run Fast

Methodology: How the Calculators Work

Every calculator on this site runs a published, named model rather than a proprietary black box. This page lists the source behind each one, the formula it runs in plain text, where the model is honestly known to break down, and when it is worth recalculating. For the full interactive explanation and worked example of any calculator, follow its link below.

Last updated 2026-10-14.

Pace Calculator

Model and source

No named research model: pace, time, and distance are related by a single kinematic identity, so this calculator does direct arithmetic rather than an estimate.

Formula

Time = Pace × Distance, rearranged to Pace = Time ÷ Distance and Distance = Time ÷ Pace. Full working: Pace Calculator.

Assumptions and limitations

Assumes a constant pace held across the entire distance: it does not account for terrain, elevation change, or fatigue over the course of a run, so a single average pace can mask real variation within an effort. Because this is exact arithmetic rather than a fitted model, there is no statistical error margin to state.

When to recalculate

Any time you want to check a different combination of pace, time, or distance, since there is no fitness data here to go stale.

Race Time Predictor

Model and source

Riegel's formula, from Peter Riegel's 1981 paper "Athletic Records and Human Endurance" (American Scientist). Riegel found that endurance race times scale with distance by a power law rather than a straight linear pace.

Formula

T2 = T1 × (D2 ÷ D1)^1.06, using the 1.06 exponent this app's code applies. T1/D1 is your known result, D2 is the target distance, T2 is the predicted time. Full working: Race Time Predictor.

Assumptions and limitations

Standard predictions are only shown for 1 mile through the marathon, since Riegel's exponent is fit to that range and gets less dependable outside it. The formula also assumes equivalent training for the target distance: it scales a demonstrated result, not endurance-specific fitness, so a 5K-to-marathon prediction silently assumes you have already put in marathon-appropriate long runs. Accuracy drops the further apart the two distances are.

When to recalculate

After any new race result, ideally one reasonably close in distance to the target you are predicting.

VDOT / Training Pace Calculator

Model and source

The Daniels & Gilbert VDOT model, from Jack Daniels and Jimmy Gilbert's 1979 book "Oxygen Power: Performance Tables for Distance Runners." It converts a race performance into an oxygen-cost equivalent (VDOT), then derives training paces at fixed percentages of it.

Formula

VO2 = -4.60 + 0.182258 × v + 0.000104 × v² (v = race velocity in m/min). %VO2max = 0.8 + 0.1894393 × e^(-0.012778 × t) + 0.2989558 × e^(-0.1932605 × t) (t = race duration in minutes). VDOT = VO2 ÷ %VO2max. Training paces are then set at roughly 70% (Easy), 84% (Marathon), 88% (Threshold), 98% (Interval), and 105% (Repetition) of VDOT. Full working: VDOT / Training Pace Calculator.

Assumptions and limitations

Reliable only for race results between 1 mile and the marathon, the range the model is fit to. A VDOT outside roughly 12 to 90, or a pace faster than any human has sustained, is flagged rather than blocked, since it falls outside the data the model was built from. The training-zone percentages used here are single-point targets picked from within Daniels' published ranges (Easy is published as 59 to 74% of VO2max, for example), not the full range itself.

When to recalculate

After any new race or hard time trial, or every 4 to 6 weeks of consistent training if you are not racing often.

Easy Pace & Zone 2 Calculator

Model and source

Three models combine here. The pace range reuses the Daniels & Gilbert VDOT model above, scoped to Daniels' published Easy zone of 59 to 74% of VDOT. The heart-rate range uses the Karvonen heart-rate-reserve method (Karvonen, Kentala & Mustala, 1957) when a resting HR is given, or a percentage of max HR when it isn't, calibrated to the same zone rather than to the same percentage, per the %HRR-to-%HRmax relative-intensity table in ACSM's Guidelines for Exercise Testing and Prescription. The fallback max-HR estimate, used only if you do not enter your own, is Tanaka, Monahan & Seals' 2001 age-based formula.

Formula

Pace: see the VDOT formula above, evaluated at 59% and 74% of VDOT. Heart rate (Karvonen): target = resting HR + 0.60-0.70 × (max HR − resting HR). Heart rate (no resting HR): target = 0.70-0.80 × max HR, the %HRmax band equivalent to 60-70% of heart rate reserve, not the same 0.60-0.70 fraction applied to max HR directly. Max-HR fallback: HRmax = 208 − 0.7 × age. Full working: Easy Pace & Zone 2 Calculator.

Assumptions and limitations

The pace side inherits the VDOT model's 1 mile-to-marathon and plausibility limits above. The age-predicted max HR is a population average with a roughly ±10 bpm, or larger, individual error. An actual max HR from a hard race or test is always preferable to the age estimate. The %HRR-to-%HRmax equivalence (60-70% HRR ≈ 70-80% max HR) is itself a population-level approximation from the ACSM table, not an exact conversion for any one person. Karvonen and %max-HR can still disagree by several bpm for the same individual; neither is ground truth.

When to recalculate

Pace range: after any new race result. Heart-rate range: whenever you get a better max-HR reading from a hard race or max-effort test, or if your resting HR shifts meaningfully.

Split Calculator

Model and source

No named research model: an arithmetic pacing model that distributes a goal time evenly, or with a symmetric negative split, across a fixed distance.

Formula

Even pace = Goal time ÷ Total distance. With a negative-split percentage p: first-half pace = Even pace × (1 + p), second-half pace = Even pace × (1 − p). Full working: Split Calculator.

Assumptions and limitations

Assumes the chosen pacing strategy is actually executable at your fitness level: the calculator checks the arithmetic, not whether the plan is realistic. It does not account for terrain, aid stations, or elevation changes that would make a genuinely even effort look like anything but an even pace on the clock.

When to recalculate

Any time your goal time, total distance, or split interval changes.

Negative Split Planner

Model and source

The same arithmetic pacing model as the Split Calculator, reframed around first half/second half (or first/middle/last third) time and pace instead of a full checkpoint table.

Formula

Even pace = Goal time ÷ Total distance. First half pace = Even pace × (1 + p), second half pace = Even pace × (1 − p), where p is the split difference as a fraction of goal time. A difference entered in seconds is converted to p first: p = (seconds difference) ÷ (goal time in seconds). The optional 3-stage progressive breakdown applies the same ± p shift to the first and last thirds and leaves the middle third at even pace. Full working: Negative Split Planner.

Assumptions and limitations

Checks the arithmetic of a chosen pacing strategy, not whether it is physiologically realistic for the runner entering it: a 10% negative split is accepted by the formula just as readily as a 1% one. It does not account for terrain, aid stations, or elevation changes, and the 3-stage breakdown assumes thirds of equal distance, not equal effort.

When to recalculate

Any time your goal time, total distance, or split difference changes.

Age-Graded Performance Calculator

Model and source

WMA (World Masters Athletics) 2020 road age-grading standards, compiled by Alan Jones and approved by WMA/USATF, used under CC BY 4.0 (the same attribution shown on the calculator itself).

Formula

Age-standard time = Open-class standard time ÷ Age factor. Age grade % = (Age-standard time ÷ Actual time) × 100. Distances falling between two table entries are linearly interpolated; ages and distances outside the table's range (5 to 100 years) clamp to the nearest end. Full working: Age-Graded Performance Calculator.

Assumptions and limitations

Open standards and age factors are derived from elite-level performances, so a result is always measured against the best-ever time for your age and gender at that distance: a given percentage reflects standing against that elite benchmark, not an absolute judgement of fitness. Results at the very edges of the age or distance range rely on clamped or interpolated values rather than a directly tabulated entry.

When to recalculate

After any race, at any distance: age grade is tied to that single performance, not a rolling fitness trend.

Training Load (ACWR) Calculator

Model and source

The acute:chronic workload ratio (ACWR). The specific 0.8 / 1.3 / 1.5 zone thresholds this calculator uses match the bands from Tim Gabbett's 2016 paper "The training-injury prevention paradox: should athletes be training smarter and harder?" (British Journal of Sports Medicine), the paper most credited with popularising ACWR as an injury-risk heuristic. The Training Load (ACWR) Calculator page additionally cites a 2025 meta-analysis of 22 studies and Toresdahl et al. 2022 (NYC Marathon Strava data) specifically for the >1.5 high-risk finding.

Formula

ACWR = this week's volume (acute) ÷ average weekly volume over the last 4 weeks (chronic). Below 0.8: undertrained. 0.8 to 1.3: lowest-risk zone. 1.3 to 1.5: rising risk. Above 1.5: high risk.

Assumptions and limitations

Treats all training volume as equivalent regardless of intensity, terrain, or session type, and the thresholds come from bucketing continuous observational data into ranges rather than a cutoff validated for any one individual. More recent sports-science literature has debated the evidence behind ACWR specifically (questioning both the statistics used to derive the original bands and whether the correlation with injury is causal), so treat a zone here as a rough flag for a volume spike, not a clinical guarantee.

When to recalculate

Weekly: the chronic baseline is a rolling 4-week average, so it shifts every time a new week of training replaces the oldest one in the window.

Training Volume Race Predictor

Model and source

Giovanni Tanda's 2011 paper, "Prediction of marathon performance time on the basis of training indices" (Journal of Human Sport and Exercise). Tanda fitted the model from the training logs of recreational marathon runners, relating average weekly training volume and average training pace over the last 8 weeks directly to eventual marathon pace, rather than scaling a race result the way Riegel's formula does.

Formula

Marathon pace (seconds per km) = 17.1 + 140.0 × e^(-0.0053 × K) + 0.55 × P, where K is your average weekly training distance in km over the last 8 weeks and P is your average training pace in seconds per km over the same period. Marathon time is that predicted pace multiplied by 42.195 km. 5K, 10K, and half marathon times are then derived by feeding the predicted marathon time into Riegel's formula (T2 = T1 × (D2 ÷ D1)^1.06), the same one described above. Full working: Training Volume Race Predictor.

Assumptions and limitations

Fitted to recreational marathon runners training consistently in roughly the 30 to 130 km per week range over 8 or more weeks, so results outside that band are an extrapolation rather than a result backed by the fitted data, and are flagged rather than blocked. Both K and P are meant to be 8-week averages, so a single unusually high or low week will not show up correctly on its own. The 5K, 10K, and half marathon figures carry an extra layer of uncertainty on top of the marathon prediction itself, since they are Riegel's formula applied to a prediction rather than to a real race result.

When to recalculate

Whenever your typical weekly volume or training pace shifts meaningfully, most usefully a few weeks out from a goal marathon, once your most representative training block is behind you.

Heart Rate Training Zones Calculator

Model and source

Two models, same five zones. With a resting HR: the Karvonen heart-rate-reserve method (Karvonen, Kentala & Mustala, 1957). Without one: a straight percentage of max HR, calibrated to the same zones rather than to the same percentage, per the %HRR-to-%HRmax relative-intensity table in ACSM's Guidelines for Exercise Testing and Prescription. Zone 2 reuses the exact Easy Pace & Zone 2 Calculator definition above rather than a separately tuned number. The fallback max-HR estimate, used only if you do not enter your own, is Tanaka, Monahan & Seals' 2001 age-based formula.

Formula

Karvonen: zone bpm = resting HR + pct × (max HR − resting HR), at 50-60-70-80-90-100% of reserve for zones 1 through 5. %HRmax (no resting HR): zone bpm = pct × max HR, at 60-70-80-87-93-100% of max HR for zones 1 through 5, an offset that narrows near the top since neither method can exceed max HR. Max-HR fallback: HRmax = 208 − 0.7 × age. Full working: Heart Rate Training Zones Calculator.

Assumptions and limitations

The %HRR-to-%HRmax equivalence is a population-level approximation from the ACSM table, not an exact conversion for any one person: Karvonen and %max-HR can disagree by several bpm for the same individual even on the zone both methods are anchored to (Zone 2), and more so on the zones further from that anchor. The age-predicted max HR carries a roughly ±10 bpm, or larger, individual error; an actual max HR from a hard race or test is always preferable.

When to recalculate

Whenever you get a better max-HR reading from a hard race or max-effort test, or if your resting HR shifts meaningfully, such as after a block of consistent aerobic training.

Goal Time Reality Check

Model and source

No separate model: this calculator runs the Daniels & Gilbert VDOT model described above on two race results (your recent result and your goal) and compares them, plus Riegel's formula, also described above, to show what your recent result already predicts at the goal distance. The verdict bands are informed by Jack Daniels' own guidance in "Daniels' Running Formula" (3rd ed.) that VDOT should be increased by no more than 1 point at a time, achievable roughly every 4 to 6 weeks of consistent training.

Formula

Current VDOT = VDOT(recent distance, recent time). Required VDOT = VDOT(goal distance, goal time). Gap = Required VDOT − Current VDOT. Predicted time at the goal distance uses Riegel's formula, T2 = T1 × (D2 ÷ D1)^1.06, applied to the recent result. The gap is then banded: 0 or below is already within reach, 0 to 2 is realistic with a focused block, 2 to 4 is ambitious, and above 4 is a long-term goal. Full working: Goal Time Reality Check.

Assumptions and limitations

Inherits the VDOT model's 1 mile-to-marathon reliable range and plausibility limits above for both the recent and goal race. The band edges (0, 2, 4 VDOT) are a rough guide built from typical improvement rates for recreational and intermediate runners, not a fitted or individually validated model: actual improvement varies widely by training history, age, injury risk, and proximity to a runner's own physiological ceiling. A favourable verdict is not a guarantee, and an unfavourable one is not a ceiling.

When to recalculate

After any new race result, or whenever you set a new goal race or goal time.

Heat Pace Adjustment Calculator

Model and source

Coach Mark Hadley's temperature plus dew point guideline, a widely used coaching rule of thumb rather than a peer-reviewed model. Its direction is supported by research: Ely et al. (2007, Medicine & Science in Sports & Exercise) found marathon times slow progressively as heat stress rises, and slow more for slower runners than for elites. Dew point from relative humidity uses the Magnus formula with the Sonntag (1990) constants used by the WMO.

Formula

Sum = Temperature (°F) + Dew point (°F). Bands of the sum and the suggested slowdown: 100 or below, 0%; 101 to 110, 0 to 0.5%; 111 to 120, 0.5 to 1%; 121 to 130, 1 to 2%; 131 to 140, 2 to 3%; 141 to 150, 3 to 4.5%; 151 to 160, 4.5 to 6%; 161 to 170, 6 to 8%; 171 to 180, 8 to 10%; above 180, hard running not recommended. Adjusted pace = Target pace × (1 + slowdown), at both ends of the band. Dew point (°C) = c·γ ÷ (b − γ), with γ = ln(RH ÷ 100) + b·T ÷ (c + T), b = 17.62 and c = 243.12 °C. Full working: Heat Pace Adjustment Calculator.

Assumptions and limitations

Ignores sun, wind, and course shade, which can change heat stress a lot at the same temperature and dew point (a wet bulb globe temperature reading captures these, but few weather apps report it). The band percentages are a coaching consensus, not individually fitted, and the effect varies with body size, fitness, and heat acclimatisation. It is meant for continuous efforts; short repeats with recovery need less adjustment. Above a sum of 180 the calculator gives no pace at all on purpose.

When to recalculate

Before every hot session or race, using the forecast for the hour you will actually be running.

Grade-Adjusted Pace Calculator

Model and source

The headline number uses the quadratic grade-pace model from the open-source Ultrapacer planner: a pacing-focused fit, not a metabolic one. The methodology also cites Minetti et al. (2002, Journal of Applied Physiology 93:1039-1046), the standard peer-reviewed metabolic cost of running on a grade, as the reference this calculator deliberately does not use for its headline number: Minetti measures energy cost alone, which overstates how much free speed a runner can actually bank on a descent once braking, footing, and quad fatigue are accounted for.

Formula

Empirical factor = 0.0021 × g² + 0.034 × g + 1, where g is grade as a percentage (positive uphill, negative downhill). Flat-equivalent pace = actual pace on the grade ÷ factor. Pace to run on a grade = flat pace × factor. For reference, the Minetti metabolic cost curve is C(i) = 155.4i⁵ − 30.4i⁴ − 43.3i³ + 46.3i² + 19.5i + 3.6 (joules per kg per metre, i = decimal grade), with its own factor = C(i) ÷ C(0). Full working: Grade-Adjusted Pace Calculator.

Assumptions and limitations

The empirical model is fit to roughly −22% to +16% grades; this calculator still returns a number down to −30% and up to +30%, but treat results near or past that fitted range as a rougher estimate. It assumes a constant grade for the whole segment entered, and does not adjust for surface, technicality, altitude, or fatigue, all of which change the real effort cost of a given grade independently of its steepness.

When to recalculate

Any time you are pacing a new segment, hill, or course section with a different grade or target pace.

Elevation Gain Time Cost Calculator

Model and source

No separate named model for the course-level estimate: this calculator applies the same empirical grade-pace factor described above to a simplified course shape, turning a course's total elevation gain and loss into climbing and descending distance.

Formula

Climbing distance = gain ÷ average grade. Descending distance = loss ÷ average grade. Flat distance = total distance − climbing distance − descending distance. Course time = flat pace × (flat distance + climbing distance × factor(average grade) + descending distance × factor(−average grade)), using the empirical factor above. Added time = course time − flat-pace time for the same total distance. Full working: Elevation Gain Time Cost Calculator.

Assumptions and limitations

Treats every metre of climbing as one constant grade and every metre of descending as another, when a real course mixes many grades across its profile; a single average climb grade is a usable approximation, not a measurement. The calculator also requires the implied climbing and descending distance to fit within the total course distance, which can reject an unrealistic combination of gain, loss, and grade. It does not model altitude, technical terrain, aid stations, or fatigue.

When to recalculate

Whenever the course distance, total elevation gain or loss, or your estimate of the average climb grade changes, such as after studying the course's real elevation profile.

Yasso 800s Calculator

Model and source

Coach Bart Yasso's 800 m repeat rule of thumb, popularised through his Runner's World column in the 1990s. There is no published study behind it and no peer-reviewed validation: it is a widely repeated coaching mnemonic, not a fitted model.

Formula

Goal marathon time (rounded to the nearest minute) split into hours and minutes becomes the target average 800 m repeat time read as minutes and seconds, and vice versa: an average 800 m time's minutes and seconds become the predicted marathon's hours and minutes. The suggested session is 10 repeats with a recovery jog of equal time between each. Full working: Yasso 800s Calculator.

Assumptions and limitations

This is a unit-shifting coincidence, not a physiological relationship: nothing about running economy or oxygen cost connects an 800 m split to a marathon time the way it connects, for instance, the VDOT model's velocity and VO2 above. Anecdotally it tends to run optimistic for marathoners who have not built enough long run volume and marathon-specific endurance for the implied goal. Results outside a roughly 2 to 7 hour marathon are flagged rather than blocked, since the rule was never quoted with that range in mind.

When to recalculate

Whenever your goal marathon time changes, or after a block of 800 m repeat sessions gives you a new average time. Cross-check either direction against the Race Time Predictor and Goal Time Reality Check above rather than relying on it alone.

Cadence & Stride Length Calculator

Model and source

No named research model for the core relationship: speed equals cadence times stride length is a kinematic identity, so solving for any one of the three from the other two is direct arithmetic. The cadence-increase guidance cites Jack Daniels' observation that elite racers he timed at the 1984 Olympics averaged close to 180 steps per minute (not a prescription), and Heiderscheit et al. (2011, Medicine & Science in Sports & Exercise), who found that increasing step rate by 5 to 10% at a constant pace reduces loading at the hip and knee.

Formula

Speed = Cadence (steps/min) × Stride length (one step), rearranged to solve for whichever of pace, cadence, or stride length is missing. The cadence-increase table holds speed constant and recomputes stride length at cadence × 1.05 and cadence × 1.10. Full working: Cadence & Stride Length Calculator.

Assumptions and limitations

Because this is exact arithmetic, there is no statistical error margin to state, but the inputs themselves vary run to run: cadence and stride length both drift with terrain, fatigue, and effort, so a single pair of numbers describes one moment, not a fixed personal constant. There is no universal target cadence despite the commonly quoted 180: height, leg length, and pace all shift what cadence a given stride length implies. The 5 to 10% guidance from Heiderscheit et al. is a general finding about loading, not a guarantee of reduced injury risk for any one runner.

When to recalculate

Any time your pace changes meaningfully, or when checking what stride length a cadence drill would require without changing your pace.

Altitude Pace Adjustment Calculator

Model and source

Péronnet, Thibault & Cousineau (1991, Journal of Applied Physiology 70(1):399-404), "A theoretical analysis of the effect of altitude on running performance." Their full model fits a runner's anaerobic capacity, sea-level maximal aerobic power, and an endurance index from several performances, then re-solves those at altitude from a cubic fit to barometric pressure (their Eq. 3). That per-athlete iterative fit cannot be inverted from a single entered time, so this calculator instead interpolates directly from the paper's own Tables 1 and 2 (p. 401): published equivalent performances at eight altitudes from 0 to 4,000 m, across 1,500 m, 5,000 m, 10,000 m, and the marathon. Men's and women's tables differ by well under half a percentage point at every point, so a single table is used for both. Wehrlin & Hallén (2006, Journal of Applied Physiology) is supporting context, not a computational input: they found VO2max falls roughly linearly with altitude, but as Jack Daniels notes in Daniels' Running Formula, aerobic capacity loss (roughly 12 to 16%) is not the same as performance loss (roughly 6 to 8%) because thinner air also lowers aerodynamic drag; Daniels' specific altitude pace adjustments were not independently verified against the book itself for this calculator and are not used here.

Formula

% slowdown at a given distance and altitude is interpolated from the paper's published times: linearly across the eight tabulated altitudes (0, 520, 1045, 1507, 1823, 2240, 3658, 4000 m) for each of the four tabulated distances, then linearly in log-distance between the two nearest tabulated distances. Altitude time = sea-level time × (1 + % slowdown ÷ 100); sea-level equivalent = altitude time ÷ (1 + % slowdown ÷ 100). Past either end of the tabulated altitudes or distances, the same nearest-segment slope is extended rather than clamped, the same approach the Grade-Adjusted Pace calculator uses outside its fitted range. Full working: Altitude Pace Adjustment Calculator.

Assumptions and limitations

Assumes acute, unacclimatised exposure: the source model is built from how barometric pressure reduces VO2max and air density on arrival, not from weeks of altitude adaptation, so an acclimatised runner's real slowdown will likely be smaller than this calculator predicts. There is no altitude threshold below which the model shows zero effect for 800 m and up; even a low altitude like Munich's 520 m shows a small nonzero slowdown in the source tables, so this calculator reports that small number rather than rounding it to zero. The source's own Discussion text rounds the Mexico City (2,240 m) effect to about 6% for 5,000 m, but Table 1's own published times work out to about 7.3%; the 800 m, 1,500 m, and marathon prose figures match the table closely, so this calculator uses the table's exact figures throughout rather than the rounded prose. The underlying model and this calculator's tabulated distances both stop at the marathon; it is not fitted for sprints or ultras.

When to recalculate

Before any race or key session held at a meaningfully different altitude than you usually train at, and again once you have spent a week or more acclimatising there, since the unacclimatised estimate will then run slower than your real effect.

Run/Walk Calculator

Model and source

No named research model: an arithmetic pacing model over one repeating run and walk cycle. The run/walk interval approach itself traces back to Jeff Galloway's Run Walk Run method, which he has coached and written about since the 1970s, but Galloway's contribution is the training approach, not this calculator's math, which is plain arithmetic over a repeating cycle of fixed run and walk time.

Formula

Per cycle: run distance = run interval time ÷ run pace, walk distance = walk interval time ÷ walk pace. Average pace = (run interval time + walk interval time) ÷ (run distance + walk distance) per cycle. Predict mode walks that cycle forward (as whole cycles, then a partial run or walk segment) until it reaches the entered distance, to get an exact finish time and total time walking rather than only the asymptotic average pace. Goal mode inverts the same average pace equation: given a goal time over a distance, a walk pace, and the run to walk interval ratio, it solves directly for the run pace that makes the equation balance, since only the ratio between the two interval lengths matters to that equation, not their absolute size. Full working: Run/Walk Calculator.

Assumptions and limitations

Assumes both the run pace and the walk pace stay constant for the entire effort: it does not account for a run pace that fades late, or a walk pace that slows on a climb. Goal mode can be asked for a combination that is not achievable: if walking alone, within its share of the interval ratio, would already meet or beat the goal time, there is no positive run pace that solves the equation, and the calculator says so rather than returning a negative or meaningless number. Because this is exact arithmetic rather than a fitted model, there is no statistical error margin to state.

When to recalculate

Any time your run pace, walk pace, interval ratio, distance, or goal time changes.

Course Pace Planner

Model and source

Combines three models already used elsewhere on this site, applied to every 200 m segment of an uploaded GPX course: the same empirical grade-pace model as the Grade-Adjusted Pace Calculator for hills, and the same temperature-plus-dew-point guideline as the Heat Pace Adjustment Calculator for heat. Wind has no calculator page of its own: it is converted to an equivalent flat-ground slope via the drag physics in Leclerc (2023, bioRxiv 2023.06.01.543316), which formalises the equivalent-slope concept Hill (1928, Roy Soc Proc B 102:380-385), Pugh (1971, J Physiol 213:255-276), and Davies (1980, J Appl Physiol 48(4):702-709) used to show that a headwind is physiologically close to running the matching incline on a calm, flat treadmill, then that equivalent slope is fed through the same grade-pace curve used for real elevation. GPX files are parsed into 200 m segments with a 3-segment moving average on grade, carried over from an earlier prototype of this tool.

Formula

Each segment's combined pace factor = grade factor × heat factor × wind factor. Wind: the forecast's 10 m wind speed is reduced to a runner's effective height (1.5 m) via the standard logarithmic wind profile, resolved into a tailwind component along the segment's heading, then converted to drag force F = κ·v_rel· |v_rel| (κ = 0.5·C_d·ρ·A, with C_d = 0.9, A = 0.5 m², ρ = 1.2 kg/m³, the Pugh 1971 values cited in Leclerc) and to an equivalent slope s(%) = 100·(F(v,w) − F(v,0)) ÷ (m·g). Predict mode walks every segment once at a fixed flat-equivalent pace to get a finish time; plan-to-target mode fixed-point iterates that pace, scaling it by (target ÷ predicted) each round, until the predicted finish is within 1 second of the target or 20 iterations pass. Full working: Course Pace Planner.

Assumptions and limitations

One weather fetch covers the whole course (the start location), looked up per segment by estimated arrival time, not by that segment's own coordinates: a deliberate trade of spatial accuracy for a single API call instead of one per segment. A forecast is only as reliable as Open-Meteo's own accuracy, and is only available up to 16 days before a race; manual conditions are a stand-in with no error margin of their own past whatever the runner enters. GPX elevation is GPS-derived and often noisy; the 3-segment moving average smooths it but does not remove that noise, so grade on a very short, choppy segment can be less reliable than the course's overall shape. Wind's equivalent-slope conversion uses the flat-equivalent pace as the runner's speed for every segment rather than that segment's own already-adjusted pace, and is validated by Davies (1980) only for wind speeds of 1.5 to 15 m/s and grades of −10% to +5%; conditions outside that range extrapolate the curve rather than measuring it. The on-page summary of time added by hills, heat, and wind is a first-order estimate, each factor's own contribution computed independently; it does not include the small interaction terms between them, so the three numbers do not add up to the exact total time added versus flat ground.

When to recalculate

Any time the course file, race date or start time, target, or conditions change, and especially once a race moves inside Open-Meteo's 16-day forecast window and a real forecast replaces a manual estimate.

What changes with your own data

Every model above runs from a published formula, a standard table, or a single self-reported result, because that is all a signup-free calculator has to work with. Connecting Strava, Whoop, or Garmin replaces those generic assumptions with your own training history: a measured max heart rate instead of an age estimate, a real rolling training load instead of four manually typed weekly totals, and race predictions weighed against the distances and sessions you have actually run rather than a single data point. None of that is built yet: every calculator on this site today is free, client-side, and uses the generic models described above, but it is the direction the rest of this product is headed.