Skip to content
Running Browser

Environmental Adjustments

How wind, hills, terrain and weather change Effort, and why the ideal-pace model counts them differently.

The base effort assumes a flat, paved route in calm, mild weather. Five factors correct it for the conditions of the day. Each factor is 1 when its condition does not apply and grows with the extra cost; all of them can be tuned in Settings.

These adjustments raise Effort, with the effort model in Settings. The pace in ideal conditions and the fitness scores use separate, physically based costs: Fitness scores and ideal conditions

Wind Adjustment

Running against wind increases energy expenditure without a corresponding increase in pace. The wind adjustment compensates for this:

fwind = 1 + (p/100) · (w − t)

Where:

w
Wind speed (km/h)
t
Threshold (default: 5 km/h)
p
Percent increase per km/h (default: 1%)

Only applied when wind speed exceeds the threshold. Based on research showing approximately 4-8% increase in oxygen consumption per 10 km/h headwind. [3]

Elevation Gain Adjustment

Running uphill increases energy expenditure significantly. The elevation adjustment accounts for the additional effort required when a run has meaningful elevation gain:

felev = 1 + (p/100) · (gain / dist)

Where:

gain
Total elevation gain (meters)
dist
Distance (km)
gain / dist
Elevation per km (m/km)
p
Percent increase per m/km (default: 1%)

Only applied when total elevation gain exceeds a threshold (default: 50m). The adjustment is proportional to elevation per km, meaning the same elevation gain over a shorter distance produces a higher adjustment.

Examples (with default 1%/m/km):

  • 100m gain over 10km = 10 m/km → 10% effort increase
  • 100m gain over 5km = 20 m/km → 20% effort increase
  • 200m gain over 15km = 13.3 m/km → 13.3% effort increase
  • 30m gain over 10km → No adjustment (below 50m threshold)

Unpaved Terrain Adjustment

Trails, gravel and grass absorb part of every push-off and demand more stabilization than asphalt, so the same pace costs more energy. The share of the run on unpaved ground scales the adjustment linearly:

funpaved = 1 + (p/100) · (u/100)

Where:

u
Share of the run on unpaved terrain (0-100%)
p
Percent increase for a fully unpaved run (default: 10%)

Examples (with default 10%):

  • Road run, 0% unpaved → No adjustment
  • Park loop, 50% unpaved → 5% effort increase
  • Trail run, 100% unpaved → 10% effort increase

A run can also be marked rough (technical trail, roots, rocks, sand or mud). A fully unpaved rough run adds 25% by default instead of 10%, and its pace in ideal conditions gets more credit too.

Rain & Snow Adjustment

When the first weather icon is 🌧️, calculated effort increases by 5% by default. When it is ❄️, the default increase is 10%. Later icons do not trigger this adjustment: 🌧️💨 gets the rain increase, while ☀️🌧️ gets none.

frain/snow = 1 + p/100

These are adjustable model defaults. Change either percentage in Settings, or set it to 0 to disable it. This factor multiplies with the other environmental adjustments and also applies to weekly fitness scores. Manually entered effort takes precedence.

Temperature Adjustment

Running in extreme temperatures (hot or cold) increases physiological strain. The comfortable range is 5-22°C by default. Outside this range, effort is adjusted upward:

ftemp = 1 + (p/100) · |t − range|

Where:

t
Temperature (°C)
range
Comfortable range (default: 5-22°C)
p
Percent increase per °C outside range (default: 1%)

If temperature is within the comfortable range, no adjustment is applied. Below the low threshold, the distance below is used. Above the high threshold, the distance above is used.

Examples (with default 1%/°C, range 5-22°C):

  • 30°C → 8°C above range → 8% effort increase
  • -2°C → 7°C below range → 7% effort increase
  • 15°C → within range → No adjustment
-10°C0°C10°C20°C30°C40°C×1.00×1.05×1.10×1.15×1.20TemperatureTemperature factorComfortable range-2°C: ×1.0715°C: ×1.0030°C: ×1.08
Temperature factor with the default settings: no adjustment inside the comfortable range of 5-22°C (shaded), then 1% more effort for every degree below or above it.

Combined Effort

The five factors are independent and multiply with the base effort, so a hilly trail run on a hot, windy day accumulates every correction:

E = Ebase · fwind · felev · funpaved · ftemp · frain/snow
  • Ebase comes from the quality-day formula or the pace table. Planned future days without a pace use your default Z2 pace from Settings, so upcoming training already counts toward projected fatigue.
  • A manual effort wins: if you enter an effort yourself, it replaces the whole calculation, adjustments included.
  • A factor without data (no wind recorded, no elevation) is 1 and leaves the effort unchanged.

Example:

Base effort 1.20; wind 18 km/h (×1.13); 150 m gain over 12 km (×1.125); 40% unpaved (×1.04); 27°C (×1.05); first weather icon 🌧️ (×1.05):
E = 1.20 × 1.13 × 1.125 × 1.04 × 1.05 × 1.05 = 1.75

Where the Conditions Come From

The adjustments are only as good as the data behind them. For runs synced from Strava , most of it is filled in automatically:

  • Elevation gain comes from Strava, as recorded by your watch or phone.
  • Wind speed, temperature and the weather icon come from Open-Meteo: the hourly values at the run's start point, for the middle hour of the run. The icon reflects the reported condition and daylight.
  • Unpaved terrain is not part of Strava's data; add it when you edit the workout. You can also change the weather icons; the first is the primary condition and appears on the ideal-pace line in the Strava description.
  • Runs without GPS (treadmill, manual entries) get no weather lookup, so weather icons, wind and temperature stay empty unless you enter them.

Every value can be corrected in the workout. Later Strava edits update distance, pace, heart rate and elevation, while keeping existing weather icons, wind and temperature. A missing icon can be filled from Open-Meteo on a later sync; use Sync from Strava on an older run to request it.

Why these defaults

  • Wind, nothing up to 5 km/h, then 1% per km/h. On a loop or an out-and-back a light breeze gives back on one side most of what it takes on the other; a stronger wind costs more against you than it returns behind you.
  • Elevation, from 50 m of climbing, 1% per metre per km. The threshold ignores the small rises every route has and the noise in GPS altitude; a route climbing 10 m every kilometre costs about 10% more.
  • Unpaved terrain, 10% for a fully unpaved run. Grass, gravel and forest paths absorb part of every stride and ask more of the ankles; sand costs far more, firm dirt less. 10% is a middle value for park and trail running.
  • Rain and snow, 5% and 10%. Wet clothes and shoes weigh more, footing is less sure and strides shorten; snow adds a soft, uneven surface.
  • Temperature, nothing from 5 to 22 °C, then 1% per degree. Endurance is best in cool weather, around 10 °C for a marathon, and falls off on both sides: in the heat blood goes to the skin to shed heat and the heart rate drifts up; in the cold muscles are stiffer and clothing heavier.

[3] [7] [8]

Tuning the model to yourself

Every threshold and percentage can be changed in Settings. A runner used to the heat can raise the upper temperature or lower its percentage; a confident trail runner can lower the unpaved percentage; a percentage of 0 switches a factor off.

Conditions are stored with each run and Effort is computed when it is shown, so a change in Settings applies to every run, past ones included. The threshold is the exception: each run keeps its own (the Effort article).

Two ways of counting conditions

This article counts conditions generously, because Effort measures load: how hard the day was on the body, and erring high keeps Fatigue on the cautious side. The pace in ideal conditions (the Fitness Scores article) counts them sparingly, because it credits fitness, and erring low keeps the fitness scores honest.

Example:

A run at 5:00/km, 28 °C, with 20 km/h of wind: with your Settings its Effort rises by 22%, while the pace in ideal conditions credits 4.5%, 4:47/km instead of 5:00. Both are right for what they measure.

Sources & further reading

Scientific References

These sources provide the scientific background discussed in this article. The formulas and coefficients used by Running Browser are described above, including their assumptions and limits.

  1. Pugh, L.G. (1971)

    The influence of wind resistance in running and walking and the mechanical efficiency of work against horizontal or vertical forces

    Journal of Physiology

  2. Minetti, A.E. et al. (2002)

    Energy cost of walking and running at extreme uphill and downhill slopes

    Journal of Applied Physiology

  3. Ely, M.R. et al. (2007)

    Impact of weather on marathon-running performance

    Medicine & Science in Sports & Exercise

View the complete bibliography

Running Browser

Use the models in your own training

Plan and log your runs in Running Browser. Try it without an account; register to save your training across devices and connect Strava.

Try Running Browser