# Running pace calculator

> A free running pace calculator: enter a distance and goal time for pace in min/km and min/mile, or a target pace for your finish time. With splits.

Enter a distance and a goal time to get the pace you have to hold, or enter a target pace to get your finish time. Splits in both miles and kilometres. No sign-up.

Kilometres
    Miles

      Distance

        5K
        10K
        Half marathon
        Marathon
        1 mile
        Custom…

      Custom distance (km)

    I have a goal time
    I have a target pace

      Goal time (h:mm:ss)

      Target pace (mm:ss / km)

·

per kilometre

·

per mile

·

finish time

·

km/h

## Your splits

Cumulative time at each kilometre, holding an even pace.

| Km | Split | Elapsed |
| --- | --- | --- |

An even split is the plan. Holding it is the hard part. That's what
    [Steady Pace](https://apps.apple.com/app/steady-pace/id6773682525) does by ear,
    with a tone that rises the moment you drift slow and falls when you drift fast.

## How do you calculate running pace?

Running pace is time divided by distance. Take your finish time in seconds, divide by
    the distance, and you get seconds per kilometre or per mile. For a 25:00 5K that's
    1,500 seconds over 5 km, which is **5:00 per kilometre**, or 8:03 per mile. The
    calculator above does this both ways: give it a goal time and it returns the pace; give
    it a pace and it returns the finish time, plus a split for every kilometre or mile.

## What is a good running pace?

A good pace is the one you can hold for the whole distance. It depends on
    you, the day, and the terrain. As rough anchors: many recreational runners cover a 5K
    somewhere between 6:00 and 7:00 per kilometre (9:39 to 11:16 per mile); a sub-2:00 half
    marathon needs 5:41 per kilometre (9:09 per mile), the same pace as a sub-4:00 marathon.
    Use the [pace charts](https://steadypace.ca/pace-chart) to see the number behind any finish time.

## How do I hold the pace this gives me?

Knowing the number is the easy half. Holding it, through hills, fatigue, and the
    excitement of the first mile, is the part that decides your race. A watch tells you your
    pace a few seconds late, so you chase it. Steady Pace plays a continuous tone instead: it
    rises when you slow below your target and falls when you speed up, so you correct by ear,
    in the moment, without looking down. Read [how
    to run a steady pace](https://steadypace.ca/guides/how-to-run-a-steady-pace) or [how to stop going
    out too fast](https://steadypace.ca/guides/stop-going-out-too-fast).

Set the pace from this calculator as your target in [Steady Pace](https://apps.apple.com/app/steady-pace/id6773682525) and hold it by ear with a tone that rises when you slow and falls when you speed up.

**How do I convert min/km to min/mile?**

Multiply your pace per kilometre by 1.609. A pace of 5:00 per kilometre is 5 × 1.609 = 8.05 minutes per mile, or about 8:03. The calculator shows both at once, so you never have to do it by hand.

**What pace do I need for a sub-2 hour half marathon?**

5:41 per kilometre, or 9:09 per mile, held for the full 21.1 km. That is also the exact pace for a sub-4:00 marathon, which makes it a useful number to memorise. See the [half marathon pacing guide](https://steadypace.ca/guides/how-to-pace-a-half-marathon).

**Does this calculator account for hills or wind?**

No. It gives you an even pace over the flat-equivalent distance. On a hilly course you run by effort rather than by holding the exact number up every climb. That is one reason an audio tone helps here: you hear how far off you are and can spend effort sensibly.

**Is the pace calculator free?**

Yes, completely, with no sign-up and nothing stored. It runs entirely in your browser. The app it links to, Steady Pace, is a one-time purchase with no subscription.

(function(){
  var MI=1.609344, U='km';
  var $=function(id){return document.getElementById(id)};
  var dist=$('dist'),custom=$('custom'),customwrap=$('customwrap'),
      time=$('time'),pace=$('pace'),timewrap=$('timewrap'),pacewrap=$('pacewrap'),
      mode='time';
  function setUnit(u){U=u;document.querySelectorAll('.u').forEach(function(e){e.textContent=u==='km'?'km':'mi'});
    document.querySelectorAll('.u3').forEach(function(e){e.textContent=u==='km'?'Km':'Mile'});
    $('unitseg').querySelectorAll('button').forEach(function(b){b.setAttribute('aria-pressed',b.dataset.unit===u)});
    calc();}
  function setMode(m){mode=m;timewrap.hidden=m!=='time';pacewrap.hidden=m!=='pace';
    $('modeseg').querySelectorAll('button').forEach(function(b){b.setAttribute('aria-pressed',b.dataset.mode===m)});
    calc();}
  function distKm(){if(dist.value==='custom'){var v=parseFloat(custom.value);if(!(v>0))return NaN;return U==='mi'?v*MI:v;}return parseFloat(dist.value);}
  function parseHMS(s){if(!s)return NaN;var p=s.trim().split(':').map(Number);if(p.some(isNaN))return NaN;
    if(p.length===3)return p[0]*3600+p[1]*60+p[2];if(p.length===2)return p[0]*60+p[1];if(p.length===1)return p[0];return NaN;}
  function fmtT(t){if(!isFinite(t)||t0&&dk>0){perKm=tt/dk;total=tt;}}
    else{var pp=parseHMS(pace.value);if(pp>0&&dk>0){perKm=U==='mi'?pp/MI:pp;total=perKm*dk;}}
    if(!(perKm>0)||!(dk>0)){$('oKm').textContent='·';$('oMi').textContent='·';$('oTime').textContent='·';$('oSpeed').textContent='·';$('splitsBox').hidden=true;return;}
    $('oKm').textContent=fmtP(perKm);
    $('oMi').textContent=fmtP(perKm*MI);
    $('oTime').textContent=fmtT(total);
    var kmh=3600/perKm;$('oSpeed').textContent=(U==='mi'?(kmh/MI).toFixed(1):kmh.toFixed(1));
    document.querySelectorAll('.u2').forEach(function(e){e.textContent=U==='mi'?'mph':'km/h'});
    // splits in display unit
    var perU=U==='mi'?perKm*MI:perKm, distU=U==='mi'?dk/MI:dk, body=$('splitsBody'),rows='';
    var n=Math.floor(distU+1e-9);
    for(var i=1;i'+i+''+fmtP(perU)+''+fmtT(perU*i)+'';}
    var frac=distU-n;
    if(frac>0.01){rows+=''+distU.toFixed(2)+''+fmtP(perU)+''+fmtT(total)+'';}
    body.innerHTML=rows;$('splitsBox').hidden=false;
  }
  $('unitseg').addEventListener('click',function(e){var b=e.target.closest('button');if(b)setUnit(b.dataset.unit)});
  $('modeseg').addEventListener('click',function(e){var b=e.target.closest('button');if(b)setMode(b.dataset.mode)});
  dist.addEventListener('change',function(){customwrap.hidden=dist.value!=='custom';calc()});
  [custom,time,pace].forEach(function(el){el.addEventListener('input',calc)});
  time.value='1:45:00';calc();
})();


---
Source: https://steadypace.ca/pace-calculator
App Store: https://apps.apple.com/app/steady-pace/id6773682525
