Blog

How to set up your training zones

A practical guide to setting running zones around your lactate thresholds instead of percentages of your maximum heart rate — what to measure, what it costs, and how to keep the zones true as you get fitter.

Most runners get their zones from a calculator: type in your age, get five heart-rate bands. It takes ten seconds and it is the reason so many people's easy runs are too hard and their hard runs are too easy.

This is a guide to doing it properly. It takes one session, sometimes none at all, and the zones you end up with describe you rather than a population average.

What a zone is supposed to be

A training zone is a band where your body is doing one recognisable thing. Below a certain intensity you can clear lactate as fast as you make it, and you could keep going more or less all day. Above a higher intensity you can't, and the clock starts running. Between them is a third state.

Those two boundaries have names:

  • LT1, the aerobic threshold — the fastest you can run while blood lactate stays near resting. The ceiling of genuinely easy running.
  • LT2, the lactate turnpoint — the hardest effort you can hold in a steady state. Roughly an hour at your best.

Everything useful about zones comes from knowing where your LT1 and LT2 actually are. A zone system that doesn't reference them is guessing at the thing that matters.

Why the percentage method fails

The familiar method takes your maximum heart rate and cuts it into slices: 60–70%, 70–80%, 80–90%. The Karvonen variant does the same to your heart-rate reserve — the gap between resting and maximum. Both are easy to compute and both have the same flaw: nothing guarantees your LT2 sits at any particular percentage.

Where your turnpoint falls relative to your maximum varies a lot between people, and it climbs as you get fitter. So a fixed 80% band sits in a different metabolic place for two runners of the same age, and in a different place for the same runner after a good winter. That is the standing objection to percentage-based intensity prescription in the literature: the bands don't line up with the transitions they claim to mark (Jamnick et al., 2020; Faude et al., 2009).

There's a second problem stacked on the first. Most people's "maximum heart rate" is 220 − age, or one of its refinements. Those formulas predict a population average, and individuals scatter widely around it (Tanaka et al., 2001). A zone set as a percentage of an estimated maximum is a percentage of a guess.

Anchoring on thresholds fixes both. Thresholds are what your training changes, so your zones move as you do.

It also matters for how you spread your training out. When researchers measured what well-trained endurance athletes actually do, the pattern was a large volume of work below LT1, a small volume well above LT2, and comparatively little in the middle (Seiler & Kjerland, 2006; Seiler, 2010). You can only execute a distribution like that if you know where your own boundaries sit. "80% easy" means nothing without a definition of easy.

Four ways to find your thresholds

In rough order of effort. Start at the top — for most runners that's enough.

1. A recent race result — free

A race is a maximal test you already ran. From a finish time and distance you can derive a fitness score (Jack Daniels' VDOT is the standard one) and place your thresholds relative to it: LT2 lands near half-marathon effort, LT1 somewhere between easy and marathon pace.

This is an estimate, but it's anchored on something real that you did, which makes it the best free option there is. Use your most recent hard race, ideally within the last few months. A 5K or 10K works fine — you don't need to have raced a half.

No recent race? Estimate what you could run today for a distance you know well. Be honest rather than optimistic; zones built on a race you can't currently run will make every easy day too fast.

2. A 30-minute time trial — one session

This is the cheapest real measurement in running, and it fixes the weakest number in most people's setup: threshold heart rate.

Warm up properly. Then run 30 minutes as hard as you can hold, alone, on flat ground, at an even effort. Your average heart rate over the final 20 minutes is your threshold heart rate.

That's it. One session, no equipment beyond a heart-rate monitor, and you've replaced an age-based guess with a measurement. If you do one thing from this article, do this one.

Two things to watch: go out at an effort you can sustain, because a fade wrecks the average; and don't do it in the heat or the day after a hard session.

3. A field step test — one session, more setup

Run a series of repeats at increasing speeds — say 1000m each, starting comfortably and finishing near maximal — with a finger-prick lactate reading between each. You get a lactate curve, and from the curve, both thresholds rather than just one.

You need a lactate meter and strips, and a willing helper. It is more work than a time trial and it gives you more: measured LT1, which nothing else on this list provides directly.

4. A lab test — a booking and a fee

The same idea, on a treadmill, with someone else doing the pricking and usually gas analysis alongside. Most accurate, least convenient, and rarely necessary unless you're training seriously enough that a few percent matters.

One thing to know about tests: there is more than one way to read a threshold off a lactate curve. A fixed 4 mmol/L cut-off is the classic, and it assumes everyone's turnpoint sits at the same concentration — which is exactly the assumption individualised methods like modified D-max exist to avoid. If you get a test done, ask which method they used.

Setting them up in Runtool

Open Settings → Zones for the athlete and pick your method:

  • Race result or Predicted race — enter the distance and time. Runtool derives your thresholds and builds all six pace zones from them.
  • Lactate test — enter the steps from your test, pick a detection method (modified D-max is the default), and see the thresholds it reads off your curve before you save.
  • Custom — set the boundaries yourself.

Whichever you choose, the boundaries are placed the same way: Z2/Z3 is LT1, Z4/Z5 is LT2, Z3/Z4 sits between them, and the top boundary is your velocity at VO₂max. The zones page shows the inputs, the method, and the resulting paces, so you can always see what your zones rest on.

For heart rate, enter your threshold heart rate from the time trial. If you only have a maximum, Runtool will estimate threshold from it — but that's the estimate the time trial exists to replace.

Keeping them true

Update after visible fitness changes — a race, a test, or a long block. Zones that are months stale prescribe the wrong paces in both directions: too slow, and your hard days stop being hard; too fast, and your easy days quietly become tempo.

Don't update after one good session. A single fast run on a cool day with fresh legs isn't a threshold shift.

Your old workouts should keep their old zones. This matters more than it sounds. If updating your zones retroactively rewrites how last winter's training was categorised, your training history stops being a record of what you did. Runtool versions zone definitions for this reason — each set keeps its validity period, and every past workout is read against the zones that were in force when you ran it.

The short version

  1. If you've raced recently, use the race. You're done.
  2. Run a 30-minute time trial to get a real threshold heart rate. One session.
  3. Add a step test if you want a measured LT1 as well.
  4. Re-check after each race or long block, and let your history keep its old zones.

Two boundaries, one number that isn't a guess, and every zone in the system falls out of them.

Runtool builds all of this in — see the Zones documentation for how each boundary is placed, and Training load for what the zones then feed.