Real-world review

My 24-week triathlon plan, backed by my Garmin data

A 24-week plan to finish a Sprint triathlon, built on my Garmin data. The full program, my zones, my charts, and the PDF to download.

Freestyle swimmer in blue water

After announcing I wanted to become a triathlete, I built myself a real plan: 24 weeks, from July 13 to December 27, to finish a Sprint triathlon on October 4 (a first step toward an Olympic distance in 2027). And since I don’t do things by halves, I built it on my real Garmin data. Here’s the full program, my charts, and what my last 10 days of training actually reveal.

📄 Download the program (PDF)

The starting point: my profile

It all starts with my Garmin numbers on July 12. No fantasy, no “I feel fit”: data.

MetricValue
Age / weight32 / 74.5 kg
Running VO2max52 ml/kg/min (very good)
Resting HR55 bpm
Lactate threshold (running)179 bpm
Cycling FTP237 W (3.2 W/kg)
Half-marathon PR1:51:09 (10 km: 50:16)
Swimming PR500 m in 14:51 (2:58 / 100 m)

The diagnosis, no sugar-coating

My aerobic engine is already a triathlete’s (VO2max 52, resting HR 55, a half in 1:51). The bike is decent (3.2 W/kg) but under-trained. And swimming is my real weak spot: 2:58 per 100 m, 1250 m max in one session. So the plan puts two swim sessions a week, one purely technical, while running stays in simple maintenance (it improves on its own).

The rule that shapes everything: 80/20

The plan’s principle is polarized: 80% of the time easy, 20% hard. Most of my sessions have to be slow so the few hard ones actually pay off.

80/20
  • Endurance (Z1-Z2) 80%
  • Tempo / threshold (Z3-Z4) 14%
  • VO2max (Z5) 6%
Target intensity split across the whole plan.

My zones are calculated on my real threshold of 179 bpm:

ZoneHR (bpm)FeelUse
Z1 Recovery< 145Very easyWarm-up, day after hard sessions
Z2 Endurance145 - 159Easy, full sentencesThe core of the plan
Z3 Tempo160 - 166SustainedSprint tri pace on the bike
Z4 Threshold167 - 177Hard8 - 20 min intervals
Z5 VO2max178+Very hardShort 2 - 5 min intervals

What my real data says

Here’s the interesting part. I pulled my latest Garmin sessions and compared the average HR to my target zone (the green band is Z2):

Z2 target
Run 07/149.1 km 148 bpm
"Base" run 07/127.4 km 165 bpm
Cycling 07/11Bergerac, 14 km 141 bpm
Cycling 07/159.3 km 138 bpm
Open-water swim 07/11~300 m 128 bpm
Pool swim 07/15625 m 113 bpm
Average HR of my last 6 sessions. Green band = target endurance zone.

The good: my July 14 run at 148 bpm, right in Z2. My rides are easy, and I’ve already been open-water swimming even though the plan only asks for it in September.

The bad, in red: my July 12 run named “Base”… run at 165 bpm average (peaking at 182). That’s Zone 3 in disguise, and the program had predicted it in black and white: “your recent runs climb to 165 bpm, slow down.” My own watch catches me red-handed.

The 24 weeks, 4 phases

PhaseWeeksDatesPriority
1. BaseW1 - W6Jul 13 - Aug 23Swim technique + aerobic base
2. Build + RaceW7 - W12Aug 24 - Oct 4Intensity, bricks, the race
3. Build 2W13 - W18Oct 5 - Nov 15Consolidate, bonus aquathlon
4. WinterW19 - W24Nov 16 - Dec 27Strength, technique, prep 2027

Structure rules: one easy week every four (W4, W10, W16, W22), Monday always off, never more than a 10% volume jump week to week, and a missed session isn’t made up, you move on.

A typical week (Base phase)

DaySession
MondayFull rest
TuesdayTECHNIQUE swim (drills, 3-beat breathing, 8 x 50 m easy)
WednesdayZ2 run + 4 strides
ThursdayZ2 bike (130 - 175 W, cadence 85 - 95)
FridayENDURANCE swim (50-100-150-100-50 pyramid) + 20 min strength
SaturdayLong Z2 bike + BRICK: 10 min run right after
SundayLong strict Z2 run (< 159 bpm), hilly terrain

The 3 sessions never to skip: the Tuesday technique swim, the Saturday brick (running on bike legs has to be learned), and the Sunday long run in Z2.

Swimming, project number 1

The season’s goal fits in one number: going from 2:58 to 2:10 per 100 m. That’s where I’ll win or lose my triathlon.

Goal 2:10 2:58 W1 2:38 W6 2:20 W12 2:14 W18 2:10 W24
Target swim pace (seconds / 100 m) over the 24 weeks.

The progression goes through 4 blocks: learning to glide (W1-W4), cutting strokes to under 22 per 25 m (W5-W8), specific speed with 750 m non-stop (W9-W12), then winter volume up to 2600 m per session. And 3 rules that change everything:

  1. Below 2:30 / 100 m, it’s never strength, it’s position. Look at the bottom of the pool, not ahead.
  2. Swim slow to swim fast: 70% of the session must be easy and clean. Technique is engraved at low speed.
  3. Wetsuit + open water from September, at least twice before the race: start panic is defused in training, not on race day.

Nutrition, the 4th sport

Carbs are periodized to the load (from 261 g on rest days to 670 g the day before a race), protein stays at 1.6 g/kg spread through the day. The recovery window: 75 g of carbs + 25 g of protein within the hour after a big session. And the race-day protocol is dialed in to the quarter-hour:

TimingProtocol
D-2 and D-18 - 9 g/kg of carbs, low fiber, hydration + electrolytes
Morning (H-3)White bread, honey, banana (150 - 200 g of carbs)
H-15 min1 gel or half a banana
During30 - 40 g of carbs/h: 1 iso bottle + 1 gel early on the bike
AfterRehydration + 1 g/kg of carbs + 25 g of protein

Race day: October 4 (750 m / 20 km / 5 km)

Goal number 1: finish smiling. The clock is for the second race.

SegmentTargetCues
Swim 750 m17 - 19 minCalm start off to the side, feel 7/10 max
Transition T1< 3 minWetsuit down while running, helmet before the bike
Bike 20 km38 - 42 min185 - 205 W, HR < 168, drink + gel
Transition T2< 2 minOff the bike before the line, shoes ready
Run 5 km24 - 26 min1st km at 5:10, then down toward 4:45
Total1h25 - 1h32

The 8 rules of the plan

  1. Monday is sacred: zero sport, progress is built during rest.
  2. Z2 means Z2: under 159 bpm running, even if I walk the hills.
  3. Swimming first: 2 sessions a week, no exceptions.
  4. The Saturday brick: running after the bike has to feel normal.
  5. Sleep = training: 7h30 minimum, body battery under 30 = easy day.
  6. Easy week every 4 weeks: volume -35%, guilt-free.
  7. Sick = rest: above the neck, Z1 possible; below, total rest.
  8. Nothing new on race day: not gear, not gels, not shoes.

My numeric goals

MetricTodayEnd phase 2 (Oct 4)End 2026
100 m swim2:582:202:10
Swim distance / session1250 m2000 m2600 m
Cycling FTP237 W250 W260 W
5 km run23:3722:3021:30
VO2max525355
Racing weight74.5 kg73 kg72 kg

What’s next

The plan gets re-evaluated every 4 weeks, based on tests and how I feel. I’m documenting all of it, week by week, in my triathlon video series, and my records are tracked live on the homepage. If you want the full plan in detail, it’s right here:

📄 Download the program (PDF)

#triathlon#training#garmin#swimming#heart rate zones