Cycling 9 min read

Century Ride Training Plan (100 Miles)

A century training plan typically spans 12–16 weeks, building a long ride to 80–85 miles three weeks before event day, with mostly Zone 2 volume and a taper in the final two weeks.

Who this is for

Cyclists targeting a 100-mile ride who currently ride 3–5 hours per week and can complete 50 miles comfortably.

12-week overview

PhaseWeeksLong ride progression
Base1–450 → 65 miles
Build5–870 → 80 miles
Peak9–1085 miles (max)
Taper11–1240 → 25 miles

Weekly hour targets

Build phase weekly volume: 6–10 hours for most century riders. At least 75% should be Zone 1–2.

One optional mid-week tempo or sweet spot session; avoid stacking hard days before the long ride.

Sample build week

  • Tuesday: Rest or 30 min recovery
  • Wednesday: 2 × 20 min sweet spot
  • Friday: 45 min easy spin
  • Saturday: 75-mile endurance ride (Z2, steady nutrition practice)
  • Sunday: 30 min recovery spin

Common mistakes

  • Skipping nutrition practice on long rides.
  • Doing the longest ride only 1 week before the event.
  • Neglecting bike fit and comfort for 6+ hour efforts.

Set your century as a target race in Vo2Max and the algorithm back-plans your long rides, recovery weeks, and taper automatically.

Frequently asked questions

How long does it take to train for a century?
12–16 weeks if you can already ride 50 miles. Beginners may need 20+ weeks.
What should my longest training ride be?
80–85 miles, completed 3 weeks before your century.
How many hours a week for century training?
6–10 hours in build phase, with one ride accounting for 50–60% of weekly volume.
What pace should century training rides be?
Zone 2 — conversational pace. You should finish long rides feeling like you could do more.

Put this into practice

Generate a training week with the same engine — free, no account required.

An unhandled error has occurred. Reload Dismiss

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.