Hills can decide your race. I studied the BMO course kilometer by kilometer before my personal best. Here is how to do the same with yours.
By Alex · 7 min read
Before my second BMO Vancouver Half Marathon, I studied the course elevation profile kilometer by kilometer. I knew where the hills were, how steep they were, and exactly how I would change my effort on each one.
That 55-minute improvement was not luck. Part of it was knowing the route before I got there.
Running uphill takes much more energy than running on the flat. Research suggests:
So in terms of effort, a hilly race is really "longer" than a flat one.
The elevation tools I could find frustrated me. I wanted to see the gradient as a percentage and plan my effort, not just look at a fixed chart. Strava hides useful features. Other sites are full of ads.
So I built something that actually helps you understand your course.
When you study a course, look for:
The total number of feet or meters you climb. Boston has about 800 ft of climbing, while Chicago has only about 200 ft. That difference matters.
The position of the hills matters:
A short, steep hill feels very different from a long, gentle slope. Know what is coming.
Instead of holding your pace, hold your effort:
That is what I did at BMO. Controlled effort on the hills. Disciplined pacing in the early kilometers. No panic when my watch showed slower splits on the climbs.
Rough guidelines for adjusting your pace:
Use our Elevation Finder to:
If your goal race is hilly, your training should include:
We have detailed breakdowns for the major marathons:
Hills are as much mental as physical. These strategies help:
Upload your race course to our Elevation Finder and start planning your strategy today. Knowing the course is half the job.
Every page on this site has a Markdown mirror at the same path with a .md suffix (for example /calculator.md), and honors an Accept: text/markdown request header on the HTML URL. The calculations here are also available as callable tools through a free public MCP server — no account or API key.