Hiking Time Calculator

Hike duration from distance and ascent with Naismith's rule.

About this tool

Enter the route's distance, total ascent and descent, the type of descent, your pace and how much time to allow for breaks. Add the sunset time to see when you should start to finish with a margin of daylight.

Naismith's rule and its corrections

In 1892 the Scottish climber William Naismith suggested allowing one hour for every 5 km (3 miles) of walking plus one hour for every 600 m (2,000 ft) of ascent. It's still the standard way hill walkers, Duke of Edinburgh groups and mountain leaders estimate times. A 12 km route with 800 m of climbing takes about 3 h 44 min of moving time. Langmuir's corrections refine the descent: on gentle slopes (about 5โ€“12ยฐ) subtract 10 minutes for every 300 m you descend, because you walk faster downhill; on steep descents (over 12ยฐ) add 10 minutes per 300 m, because care slows you down. The pace setting scales the estimate for fit walkers, a relaxed pace, heavy packs, children or rough ground and snow, and the breaks percentage adds stops for food, photos and navigation. Enter sunset to get the latest start time that gets you back with 30 minutes to spare. Honest limits: it's a planning estimate; scrambling, bogs, deep snow, heat, navigation and group size can make real times far longer. Check the forecast, carry a map and tell someone your route. Not safety advice. The pace calculator and the sunrise and sunset calculator are related.

Frequently asked questions

What is Naismith's rule?

Allow 1 hour per 5 km (3 miles) plus 1 hour per 600 m (2,000 ft) of ascent.

How long does it take to hike 10 km?

About 2 hours on the flat by Naismith's rule, plus 1 hour for every 600 m climbed and time for breaks.

Does going downhill add time?

On steep descents, yes (about 10 minutes per 300 m); on gentle ones you go a little faster.

Is Naismith's rule accurate?

It's a good baseline for fit walkers on paths; adjust for fitness, load, terrain and weather.

Is my data sent anywhere?

No. Everything is calculated in your browser, and nothing is stored or sent.