The calculator below is a simple web app that allows you to input your time from various races and see the equivalent paces on a single graph.
Why would you want to do this?
This is one way to diagnose your strengths and weaknesses as a runner. If your short distance results – like in a mile or 5k – are relatively stronger than your long distance results – like a half marathon or a marathon – it’s a sign that you need to work on your aerobic development and/or lactate threshold.
It’s always a way to help estimate your race pace. There are lots of calculators out there to convert one race – like a 5k or 10k – to a marathon pace. But if your pace drops off at longer distances, you’ll want to be more conservative in your pacing.
Conversely, if your long distance results are equivalent to or stronger than your short distance results, you would likely benefit from implementing more speed work in the form of short, intense intervals.
Adjust the settings if you like and then click the section titled, “Race Times” to input your best time from various race distances. Scroll to the bottom of this page for more information about how the app works.
How This Calculator Works
This calculator is built on the premise that your performance across different distances should be related – such that the finish time from one race should predict your finish time in another.
There are a number of different methods for making these calculations. This calculator relies on a formula that Pete Riegel devised in the 1970’s. The expected finish time in one race can be estimated from the known finish time in a different race, based on the ratio of distances between the two races raised to a constant exponent.
When you enter a finish time for a specific race – like a 5k – it is then converted into equivalent finish times for other races. By default, the calculator uses the mile, 5k, 10k, half marathon, and marathon. You can adjust this in the settings.
Then, those equivalent race times are divided by their race distances to yield an estimated race pace. By default, this is expressed in minutes per mile, but you can switch that to minutes per kilometer in the settings.
Each set of paces is plotted on the graph, and the color of the line denotes which race time the estimates are based on.
In theory, you could also do this without converting the times to paces. However, this results in a y-axis that quickly becomes out of control. By converting the equivalent race times to paces, you can plot multiple different paces on a small vertical range.
Once you’ve entered multiple race times, a summary is printed at the bottom identifying which distance is your strongest effort and which is your weakest. The difference between those efforts is also categorized as normal, medium, or large – based on how big the difference is in the predicted marathon finish time. These categories are rough approximations, and feel free to make your own judgement about what constitutes a meaningful difference.
Note that for this to be most useful, these times should be recent race times and they should represent an all out race effort or time trial. If adverse conditions impacted your time – like excessive heat or a hilly course – that may influence the results. If the race time is several years old, that could also make the comparison less reliable.
How to Personalize the Settings
In the settings panel, there are a few things you can adjust.
First, you can alter the race paces that are calculated. These are the equivalent race paces that are plotted, left to right, on the graph.
By default, these are the mile, 5k, 10k, half marathon, and marathon. You can click on the “x” to remove any of them, and you can use the drop-down arrow to choose different distances. Note that you don’t need to include the race you are using as an input – so you could enter a 3000m race time and still have it be converted into other race paces.
Next, you can change the number of race results that you can enter.
By default, this is three. For the best results, you want a mix of short (mile to 5k), medium (10k to 10 mile), and long (half marathon to marathon) races. You can enter between 2 and 5 different race results.
Third, you can toggle between miles and kilometers for units. This will determine whether the paces are calculated as minutes per mile or minutes per kilometer.
How to Interpret the Results
Once you’ve graphed multiple race results, you want to look and see how close or far apart the lines are.
For example, let’s say you graphed 5:00 for the mile, 18:00 for the 5k, and 3:15 for the marathon.
The strongest relative effort – the lowest line on the graph – is the mile. The weakest relative effort – the highest line on the graph – is the marathon. The 5k line is in the middle.
This pattern would represent someone who has a lot of speed but little endurance. Perhaps they were a sprinter or an explosive athlete. They can run fast over shorter distances like the mile. But they lack the stamina and endurance to convert that time to longer distances.
A 5:00 mile should convert to a ~5:21/mi 5k. So an 18:00 (5:47/mi) 5k is much slower than predicted. This athlete would likely benefit from threshold work and race-specific intervals.
Similarly, a 5:00 mile should convert to a ~6:04/mi marathon pace. Short distances don’t always convert properly to long distances, so you should take this with a grain of salt. But that’s a long way from the 7:26/mi pace of a 3:15 marathon.
A person who can run a 5:00 mile should be able to run a marathon much more quickly than 3:15. If that were their actual time, they’d likely want to focus on increasing their total volume and spending more time at threshold and marathon pace.
If the lines are clustered relatively close together, then you’re a much more balanced runner. Continued improvement will likely require a balanced approach – a little bit of increased volume and a little bit of increased intensity. Switching between the two of the course of the year would be a wise approach.
You may also want to refer to this post on how to understand relative race times.
Notes
When entering race times, they must either be in the mm:ss or hh:mm:ss format. Based on what you type in the input field, the matching times will appear in a dropdown menu below the input field. You don’t actually need to type a colon to get the correct time to show up. Click on the specific time or press enter to select it.
This calculator is hosted on Streamlit at https://race-pace.streamlit.app/. It is publicly accessible, and you can embed it in any websites you would like.
If the app is not used in a 24 hour period, it goes to sleep. So if you are the first person to use it in a while, you may be asked to “wake it up.” Please do so.
If you’re technically inclined, you can review and/or fork the repo for this project on Github.
At this point, this is a quick and dirty release of the app. It is not polished. But it is functional. I may come back and improve it over time, if people find it useful.