Columbia River Triathlon & Fitness Festival · Olympic Distance (22.8 mi bike — shorter course)
A: CRUSH B: Sub-3 STD C: Sub-3 Col
Honest Assessment
Path C v2.3 — CRUSH MODE refined (4/29/2026): Post-review fixes shipped: goal-tier math corrected (segment splits now sum to totals), FTP target consistent at 200W everywhere, Wk 10 retest = 12-min CP (not 20-min, less fatiguing), VO2 weeks (9, 11) demote Thu Strength B to mobility/core only (concurrent training interference), sauna protocol starts Wk 11 (was Wk 15), Phase 3 run mileage peaks at 18-20 mi/wk (was 15) for 9:15/mi durability over 10K. Tab navigation now screen-reader accessible.
v2.2 → v2.3 changelog (4/29): Sport-science + code review pass identified: (1) goal-tier segment math was off by 13-21 min — fixed. (2) FTP 200W vs 190W inconsistency — unified at 200W. (3) Two FTP tests in 2 weeks (Wks 10 + 12) measures the test, not adaptation — Wk 10 → 12-min CP. (4) Concurrent strength + VO2 caps adaptation — Thu Strength B demoted on VO2 weeks. (5) Run peak 15 mi/wk too low for 9:15/mi off bike in heat — bumped to 18-20 mi/wk via Wed mini-brick + extended Tue/Sun. (6) Heat acclim Wk 15 → Wk 11 sauna start (sauna is fastest evidence-based protocol). (7) Tab nav got proper ARIA roles + keyboard nav.
Where You Are Now
161W
FTP (Apr 2026)
9:05
2-mi TT Pace
9:15
Run Threshold
1:50
Avg Swim /100yd
180
Weight (lbs)
171
Threshold HR
Wk 8 TT result (4/28/2026): 2-mile time trial — 18:10 total / 9:05/mi avg, with a 60-second negative split (mile 1: 9:35, mile 2: 8:35 with 7.5 mph kick). Run threshold updated 9:30 → 9:15/mi. Wk 8 gate (1-mi < 9:30) implicitly cleared. Run is no longer the limiter — bike FTP is.
CRUSH MODE goal (v2.2, 4/28): FTP 200W by race day → sub-2:50 Columbia / sub-2:57 standard. Bike was the weakest discipline (1.95 W/kg recreational); now the highest-leverage place to invest. 14 weeks to add 39W. Achievable with: IF-corrected threshold work, VO2max alternating Wks 9 + 11, outdoor riding from Wk 11, daily HRV/weight/sleep monitoring, strict Mon strength + Fri rest.
Course Intel
This course is faster than standard Olympic. The bike is 22.8 mi (36.7 km) — not the standard 24.8 mi (40 km). That saves ~7 minutes at the same watts. The swim has current assistance on the return. The run is flat paved trail.
Swim — 1,500m
River — upstream first half, downstream return
Bike — 22.8 mi (36.7 km)
Flat double loop on quiet country roads
Run — 10K (6.2 mi)
Flat out-and-back on paved trails to Vancouver Lake
Race Targets (Course-Adjusted)
Segment
A: CRUSH — Sub-2:48 Columbia (~2:55 standard)
B: Sub-3 STANDARD equivalent (~2:53 Columbia)
C: Sub-3 Columbia (~3:05 standard equivalent)
Swim 1500m
28 min
29 min
30 min
Bike 36.7km
1:18
1:20
1:22
Run 10km
57:30
59:00
62:00
Total
2:47:30
2:53:00
2:59:00
Path C v2.3 reality check (4/29): Run is NO LONGER the limiter (TT confirmed 9:15/mi threshold). Bike is everything. FTP needs +39W (161W → 200W) for CRUSH (sub-2:48 Columbia / sub-2:55 standard equivalent). Confidence (post-review recalibration): CRUSH 25% honest / 35-40% motivation, Sub-3 STANDARD equiv 50-55%, Sub-3 Columbia 80%, Sub-3:10 floor 95%. Hard gate at Wk 12 retest: ≥185W (CRUSH stretch) or ≥175W (sub-3 Columbia floor). Goal-tier segment splits (athlete.ts) corrected — totals now sum to listed times.
Plan Philosophy (Path C v2.3 CRUSH MODE)
Modified 80/20: 3 bike sessions/wk (Wed threshold/VO2 alternating + Sat long Z2 + Sun brick) + Tue hard run. Bike volume + intensity = THE FTP-growth lever.
Single sessions: One training block per day. No AM/PM splits.
9.5-10.8 hours/week (P2-P3): Real hours. Not 12 hours squeezed into a label.
Priority: Bike FTP > Run improvement > Swim consistency > Strength for durability.
Mental health floor: 4 sessions = minimum viable week. Off-ramp to Path A always open.
Your Data — Full Baseline Analysis
All data from your Coros, InBody, and MyWhoosh. Period: Feb 17 - Mar 18, 2026.
Body Composition (InBody)
14.8%
Body Fat
88.6
SMM (lbs)
1891
BMR (kcal)
97
InBody Score
Swim Baseline
4.77 mi
Total Dist
6
Sessions
01:51/100yd (actual swimming). Coros summary shows 02:57/100yd but that includes rest between sets — not real swim pace.
Avg Pace
117
Avg HR
145
Load
32-39
SWOLF
Date
Distance
Time
Pace
SWOLF
Mon (latest)
1600yd
00:45:15
01:44/100yd
34
Thu
1825yd
00:50:18
01:51/100yd
36
Wed
900yd
00:40:22
02:03/100yd
39
Mar 9
1825yd
00:57:38
02:07/100yd
39
Feb 27
1250yd
00:28:18
01:46/100yd
34
Feb 23
1000yd
00:26:10
01:40/100yd
32
Trend: Actual swim pace is 1:40-2:07/100yd (weighted avg ~1:51). Coros summary avg (2:57) is inflated by rest intervals — ignore it. Pace varies significantly — technique consistency is the priority, not fitness. Best SWOLF (32) shows what's possible when focused.
Strengths: Best pace (1:40/100yd) is strong for age-group | Low HR (117) means huge aerobic headroom | Already capable of 1,825yd sessions
Limiters: Inconsistent stroke technique | SWOLF variance suggests some sessions lack focus | Only 6 sessions in 4 weeks — frequency too low
Bike Baseline
13:37:14
Total Time
12
Sessions
161W
FTP
1.95
W/kg
132
Avg HR
Date
Ride
Avg W
W/kg
Time
18/03/2026
Rolling Tempo #2
99W
1.19
01:07:09
17/03/2026
Mitochondria #7
97W
1.17
01:18:12
13/03/2026
Mitochondria #6
105W
1.27
01:01:13
10/03/2026
Mitochondria #5
100W
1.2
01:11:13
08/03/2026
Mitochondria #4
101W
1.22
01:11:21
06/03/2026
Tri Tempo #2
110W
1.33
01:22:06
05/03/2026
Anaerobic 10 #1
103W
1.24
00:58:03
03/03/2026
Mitochondria #3
93W
1.12
01:21:13
01/03/2026
Mitochondria #2
113W
1.36
01:00:20
Trend: Consistent training frequency (12 sessions/4 weeks = 3x/week). Power is well below FTP (161W as of 4/16 retest) on most rides — training in Z2 which is correct for base building.
Strengths: Excellent consistency (3x/week) | Good session duration (60-82 min) | Training in correct zone (Z2) for base phase | Variety of MyWhoosh workouts shows structured approach
Limiters: FTP at 161W needs growth to ~190W for sub-3 bike split | No distance data from Coros (indoor rides) | Avg power suggests most rides are easy — good for 80/20 but needs structured intensity
Run Baseline
22.03 mi
Total Dist
7
Sessions
12:49/mi
Avg Pace
09:15/mi
Threshold
139
Avg HR
414
Load
Date
Name
Dist
Pace
HR
Tue (latest)
Portland Run
3.57 mi
12:01/mi
141
Sun
Portland Run
3.15 mi
11:47/mi
146
Mar 7
3.75mi Long Run
3.75 mi
14:04/mi
138
Mar 3
2.5mi Easy Run
2.50 mi
15:00/mi
128
Feb 28
5mi Progressive Repeat Long Ru
5.23 mi
12:21/mi
142
Feb 24
Portland Run
3.03 mi
12:54/mi
140
Trend: Pace improving — most recent runs (11:47, 12:01) are faster than earlier ones (14:04, 15:00). This is a good trajectory. The long run (5.23mi) shows capacity for distance at 12:21/mi.
Strengths: HR at 139 during Z2 runs = proper easy effort, not gray zone | Recent pace improvement trend is encouraging | Can already do 5+ mile runs | No injury issues despite starting from low base
Limiters: Biggest performance gap — need to reach ~10:00/mi for sub-3:10 goal | Only 7 runs in 4 weeks (~1.75x/week) — needs 3x/week minimum | Total weekly mileage (~5.5 mi) is far below target (15-18 mi) | Threshold pace 9:30 vs avg 12:49 = running well below threshold on all runs (correct for Z2 but needs intensity sessions)
Training Load Distribution
55.7%
Bike
25.7%
Run
9%
Swim
9.3%
Strength
Intensity Distribution
Current: ~65% easy / ~25% moderate / ~10% hard — Pyramidal, not polarized. Too much gray zone. This plan shifts to 80/20: most sessions genuinely easy, hard sessions genuinely hard, minimal moderate work.
HR Zones (Karvonen)
Zone
Name
% HRR
HR Range
Feel
Z1
Recovery
50-60%
112-124
Very easy, could go all day
Z2
Aerobic
60-70%
124-136
Easy conversation, base building
Z3
Tempo
70-80%
136-148
Comfortably hard, short sentences
Z4
Threshold
80-90%
148-159
Hard, 3-4 words only
Z5
VO2max
90-100%
159-171
Very hard, can't talk
22-Week Plan
Phase 1
Aerobic Foundation
Wks 1-6 · 7.5-8.5 (actual ~5-7 due to Wks 3-5 dip) hrs/wk
Mar 10 – Apr 20
Phase 2
Build
Wks 7-12 · 9.5-10.5 hrs/wk
Apr 21 – Jun 1
Phase 3
Race-Specific
Wks 13-18 · 10.5-10.8 hrs/wk
Jun 2 – Jul 13
Phase 4
Taper
Wks 19-22 · 8.0→2.5 hrs/wk
Jul 14 – Aug 10
RECOVERYTESTOWSPEAKREHEARSALRACE
Phase 1: Aerobic Foundation
Weeks 1-6 · Mar 10 – Apr 20 · 7.5-8.5 (actual ~5-7 due to Wks 3-5 dip) hrs/wk · 80/20 easy/hard
Swim
Technique-first. 3x/week from Wk 3 (Mon + Thu + Sun drill swim). Pull buoy + drills. Body position (head down, hips up) and catch mechanics (EVF). SWOLF target: consistently < 35 (not just best effort — every session).
Bike
Sweet spot intervals at NEW FTP 161W (88-94% = 142-151W). Start 4×8 min, progress to 3×12 min. Saturday: long Z2 rides 70→85 min.
Run
Build from ~5.5 mi/wk to ~12 mi/wk. Cap increases at 1.5 mi/wk. Runna hard Tue (fresh legs): tempo intro. 1x/month tri-specific sub: 15 min easy → 10 min at 10:30/mi → 5 min easy. Cadence drills: 4×30 sec at 180 spm during easy runs. Runna long Sun: 45→60 min. Brick run: 15 min all easy (HR 130-145, pace irrelevant).
CSS sets — 5×200 at CSS pace. Sighting practice every 6-8 strokes starting Wk 10. Test CSS every 4 weeks. 3 swims/week continues. Drafting practice on Mon: 4×100 behind/beside lane partner to learn hip-draft positioning.
Bike
v2.3 CRUSH MODE — THREE bike sessions/wk. Wed alternates: VO2max (Wks 9, 11 — High Intensity 5min IF 0.93, Race Attacks #1 IF 1.06) and Threshold (Wks 8 → Cruise Intervals #4 IF 0.89; Wks 10, 12 → 20-min FTP retest, NOT ramp). IF ≥0.88 required for threshold work — Cruise Intervals #1-2 (IF 0.83-0.85) are sweet-spot sandbag and have been replaced. Sat: long Z2 ride 100-110 min at 110-122W with last 30 min @ sweet spot (88-92% FTP). Sun: brick — 45-60 min Z2 → Runna long run. Outdoor riding starts Wk 11 (1×/wk). Total bike: ~225-260 min/wk.
Run
Runna intensity increases (Tue, fresh legs). Tempo + intervals. 1x/month tri-specific sub: 15 min easy → 15 min at 10:00/mi → 5 min easy. Cadence drills continue. Long runs to 65-70 min + strides (4×20 sec post-run). Brick runs: 20-25 min — first 15 min easy, last 10 min at 10:30-10:00/mi (moderate). Negative-split always. v2.3 ADD: Wed mini-brick (10 min easy run after bike) starts Wk 9 — becomes 3rd run for durability (peak run mileage 18-20 mi/wk needed for 9:15/mi to hold over 10K).
Strength
MacroFactor Workouts: Wks 7-9 max strength (RPE 8-9), Wks 10-12 transition to power (lighter, explosive intent, RPE 7-8). Sessions: Mon 40-45 min, Thu 30-35 min.
Key: Wk 9 (5/5-5/11): FIRST VO2max session (High Intensity 5min, IF 0.93). FIRST Wed mini-brick (10 min easy run after bike). On VO2 weeks, demote Thu Strength B → mobility/core only (recovery debt management).
Key: Wk 10 (5/12-5/18): MID-FTP retest — 12-min CP test (NOT 20-min, too close to Wk 12). Less fatiguing, faster recovery. FTP estimate = avg power × 0.90. Target ≥172W (CRUSH ≥175W).
Key: Wk 11 (5/19-5/25): VO2 + FIRST outdoor ride (Sauvie Island, 75-90 min). FIRST sauna day (15-20 min post-ride, 4×/wk). Cutback volume but maintain VO2 intensity. Demote Thu Strength B → mobility (VO2 week).
Key: Wk 12 (5/26-6/1): OFFICIAL FTP retest — 20-min protocol + timed mile <9:00. HARD GATE — Target ≥175W (sub-3 Columbia floor), ≥185W (CRUSH = sub-3-standard equivalent stretch).
7
Apr 21
3.5k
225m
11mi
9.5h
2x MF▼
Notes: PHASE 2 starts. Wed threshold + Sat 100 min long Z2 + Sun 45 min brick. 3 swims back.
MonSwim: ~1400yd — CSS set: 5×200 at CSS pace. Drafting practice 4×100. | Strength A: 40-45 min MF — squat, RDL, Bulgarian splits, pallof, lat pull.
TueRunna hard run: tempo + intervals (~4 mi). Cadence 175-180 target.
WedBike: threshold — 95-105% FTP. MyWhoosh: Cruise Intervals #1 (DONE — IF 0.83 was sandbag).
SatLong ride: 100 min Z2 (110-122W). MyWhoosh: 90 Minute Endurance. Practice nutrition (40-60g carbs/hr). Cadence 85-95 + 5 min/20 min at 95-105 rpm.
SunBrick bike: 45 min Z2 (110-122W). MyWhoosh: Zone 2 Endurance #2. → Runna long run off the bike (brick): 5 mi + 4×20s strides after. First 30 min easy, last 15-20 min at 10:30-10:00/mi. | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
8
Apr 28
4.0k
240m
12mi
10h
TEST2x MF▼
Notes: Timed 1-mile benchmark (Tue): target <9:30. (Done 4/28 via 2-mi TT 9:05 avg ✓ implicit.) Sat ride extends to 105 min.
MonSwim: ~1600yd — CSS set: 5×200 at CSS pace. Drafting practice 4×100. | Strength A: 40-45 min MF — squat, RDL, Bulgarian splits, pallof, lat pull.
TueRunna hard run: tempo + intervals (~4 mi). Cadence 175-180 target.
SatLong ride: 105 min Z2 (110-122W). MyWhoosh: 90 Minute Endurance. Practice nutrition (40-60g carbs/hr). Cadence 85-95 + 5 min/20 min at 95-105 rpm.
SunBrick bike: 50 min Z2 (110-122W). MyWhoosh: Zone 2 Endurance #2. → Runna long run off the bike (brick): 5 mi + 4×20s strides after. First 30 min easy, last 15-20 min at 10:30-10:00/mi. | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
9
May 5
4.2k
250m
14mi
10.5h
2x MF (B mobility-only on VO2 day)▼
Notes: FIRST VO2 day (High Intensity 5min). FIRST Wed mini-brick (10 min easy). Demote Thu Strength B → mobility/core only.
MonSwim: ~1680yd — CSS set: 5×200 at CSS pace. Drafting practice 4×100. | Strength A: 40-45 min MF — squat, RDL, Bulgarian splits, pallof, lat pull.
TueRunna hard run: tempo + intervals (~5 mi). Cadence 175-180 target.
SatLong ride: 105 min Z2 (110-122W). MyWhoosh: 90 Minute Endurance. Practice nutrition (40-60g carbs/hr). Cadence 85-95 + 5 min/20 min at 95-105 rpm.
SunBrick bike: 50 min Z2 (110-122W). MyWhoosh: Zone 2 Endurance #1. → Runna long run off the bike (brick): 6 mi + 4×20s strides after. First 30 min easy, last 15-20 min at 10:30-10:00/mi. | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
10
May 12
4.4k
255m
15mi
10.6h
TEST2x MF▼
Notes: MID-FTP RETEST: 12-min CP test (NOT 20-min). Target ≥172W. Sat 110 min + Sun 60 min brick. Mini-brick 12-15 min.
MonSwim: ~1760yd — CSS set: 5×200 at CSS pace. Drafting practice 4×100. | Strength A: 40-45 min MF — squat, RDL, Bulgarian splits, pallof, lat pull.
TueRunna hard run: tempo + intervals (~5 mi). Cadence 175-180 target.
SatLong ride: 110 min Z2 (110-122W). MyWhoosh: 90 Minute Endurance. Practice nutrition (40-60g carbs/hr). Cadence 85-95 + 5 min/20 min at 95-105 rpm.
SunBrick bike: 60 min Z2 (110-122W). MyWhoosh: Zone 2 Endurance #1. → Runna long run off the bike (brick): 7 mi + 4×20s strides after. First 30 min easy, last 15-20 min at 10:30-10:00/mi. | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
11
May 19
3.2k
165m
10mi
7.5h
RECOVERY2x MF (B mobility-only)▼
Notes: Cutback. VO2 (Race Attacks #1). FIRST outdoor ride (Sauvie Island 75-90 min). FIRST sauna day (15-20 min post-ride, 4×/wk). Demote Thu B → mobility.
MonSwim: ~1280yd — CSS set: 5×200 at CSS pace. Drafting practice 4×100. | Strength A: 40-45 min MF — squat, RDL, Bulgarian splits, pallof, lat pull.
TueRunna hard run: tempo + intervals (~4 mi). Cadence 175-180 target.
SatLong ride (cutback): 60 min easy Z2 (110-122W). MyWhoosh: Outdoor: Sauvie Island Loop (75-90 min).
SunBrick bike: 30 min easy Z2. MyWhoosh: Zone 2 Endurance 30min. → Runna long run off the bike (brick): 5 mi + 4×20s strides after. First 30 min easy, last 15-20 min at 10:30-10:00/mi. | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
12
May 26
4.4k
255m
15mi
10.6h
TEST2x MF▼
Notes: OFFICIAL FTP RETEST: 20-min protocol + mile <9:00. HARD GATE — ≥175W (sub-3 Col), ≥185W (CRUSH). Wetsuit purchase.
MonSwim: ~1760yd — CSS set: 5×200 at CSS pace. Drafting practice 4×100. | Strength A: 40-45 min MF — squat, RDL, Bulgarian splits, pallof, lat pull.
TueRunna hard run: tempo + intervals (~5 mi). Cadence 175-180 target.
WedBike: threshold — 95-105% FTP. MyWhoosh: 20-Min FTP Test (manual, not ramp).
SatLong ride: 110 min Z2 (110-122W). MyWhoosh: 90 Minute Endurance. Practice nutrition (40-60g carbs/hr). Cadence 85-95 + 5 min/20 min at 95-105 rpm.
SunBrick bike: 60 min Z2 (110-122W). MyWhoosh: Zone 2 Endurance #1. → Runna long run off the bike (brick): 7 mi + 4×20s strides after. First 30 min easy, last 15-20 min at 10:30-10:00/mi. | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
Race-sim: 3×500 at race effort with upstream/downstream pacing (odd 500s = 85% effort, even 500s = 95% effort). Open water Wks 13, 16, 18. Sighting every 6-8 strokes in all pool sessions. Practice wetsuit on/off (target strip < 60 sec).
Bike
Race-pace bike work begins. Wed: 2×20 min at target race watts (174-185W). Sat: 110-120 min long ride with 30-40 min block at race watts mid-ride (practice 60-80g carbs/hr fueling). Sun: brick — 60 min bike (last 30 min at race watts) → Runna long run with last 15-20 min at race pace. Heat acclim from Wk 13 (passive), full protocol Wk 15+ (fan off + outdoor + sauna). Wk 15: outdoor calibration ride. High-cadence (100+ rpm) last 5 min of every ride. Total bike: 240-275 min/wk.
Run
Brick runs: 25-30 min — first 10 min easy, last 15-20 min at 9:15-9:30/mi (race pace). Negative-split always. 1x/month tri-specific sub on Tue: 10 min easy → 20 min at 9:15-9:30/mi → 5 min easy. Cadence 175-180 spm target. Runna long Sun + strides. Move 1 run/week outdoors in heat. Wed mini-brick extends to 20-25 min easy (started Wk 9 at 10 min). Start mental visualization 2x/week before bed. v2.3 PEAK MILEAGE: 18-20 mi/wk Wks 14-16 (was 15) — durability for 9:15/mi over 10K off bike in heat.
Strength
MacroFactor Workouts: maintenance (RPE 6-7, 2 sets instead of 3). Sessions stay 2x/week. Drop to 1x on cutback weeks.
Key: Wk 13 (6/2-6/8): Phase 3 starts. Open water swim #1 — wetsuit practice, sighting, murky water comfort. Lake or calm river.
Key: Wk 14 (6/9-6/15): Final mile benchmark target <8:15. If miss, sub-3:00 race pacing demoted.
Key: Wk 16 (6/23-6/29): Open water swim #2.
Key: Wk 18 (7/7-7/13): Full Race Rehearsal (Sunday) — 1,500m swim → T1 (time it, target < 2:00) → 60-75 min bike at race watts (practice nutrition: gel at 20 + 40 min) → T2 (time it, target < 1:30) → 25-30 min run at race pace (9:15-9:30/mi). Do in warmest part of day. Practice pre-cooling (ice towel), sodium loading (morning), and T2 ice protocol. Record splits for race-day comparison. Open water swim #3.
13
Jun 2
4.4k
260m
16mi
10.7h
2x MF maint▼
Notes: PHASE 3 starts. Race-pace bricks. OWS #1. Heat acclim (sauna ongoing). Sat outdoor 90-110 min with 30 min race-watts block. Mini-brick 20 min.
SatLong ride: 110-120 min with 30-40 min at race watts (174-185W) mid-ride. MyWhoosh: Outdoor: Sauvie Island Loop (90-110 min). Full race nutrition (60-80g carbs/hr).
SunBrick bike: 60 min Z2 with last 30 min at race watts (174-185W). MyWhoosh: Tri Endurance #4. → Runna long run off the bike (brick) + strides. First 20 min easy, last 25-30 min at 9:15-9:30/mi (race pace). Negative-split. | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
14
Jun 9
4.5k
265m
18mi
11.1h
TEST2x MF maint▼
Notes: Final mile benchmark target <8:15. Race-pace bike (174-185W). Sat outdoor Vancouver Lake (race recon). Run +3 mi via mini-brick + extended Tue + Sun.
SatLong ride: 110-120 min with 30-40 min at race watts (174-185W) mid-ride. MyWhoosh: Outdoor: Vancouver Lake / Lower River Rd (race recon). Full race nutrition (60-80g carbs/hr).
SunBrick bike: 60 min Z2 with last 30 min at race watts (174-185W). MyWhoosh: Tri Endurance #4. → Runna long run off the bike (brick) + strides. First 20 min easy, last 25-30 min at 9:15-9:30/mi (race pace). Negative-split. | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
15
Jun 16
4.5k
270m
19mi
11.3h
2x MF maint▼
Notes: Full heat: fan off + outdoor + sauna. Outdoor power calibration ride. Sat 120 min outdoor + Sun 60 min.
SatLong ride: 110-120 min with 30-40 min at race watts (174-185W) mid-ride. MyWhoosh: Outdoor: Vancouver Lake / Lower River Rd. Full race nutrition (60-80g carbs/hr).
SunBrick bike: 60 min Z2 with last 30 min at race watts (174-185W). MyWhoosh: Tri Endurance #4. → Runna long run off the bike (brick) + strides. First 20 min easy, last 25-30 min at 9:15-9:30/mi (race pace). Negative-split. Outdoors in warmest part of day (heat acclim). | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
16
Jun 23
4.5k
275m
20mi
11.5h
PEAK2x MF maint▼
Notes: PEAK volume. OWS #2. Visualization 2x/week. 4.5h bike + 20 mi run weekly.
TueRunna hard run or tri-specific: 10 min easy → 20 min at 9:15-9:30/mi → 5 min easy.
WedBike: race-pace — target watts (174-185W). MyWhoosh: Tri Endurance #4. Fan OFF first 20 min warmup (heat acclim). + 10 min easy run after bike (mini-brick transition practice).
SatLong ride: 110-120 min with 30-40 min at race watts (174-185W) mid-ride. MyWhoosh: Outdoor: Marine Drive (long). Full race nutrition (60-80g carbs/hr).
SunBrick bike: 60 min Z2 with last 30 min at race watts (174-185W). MyWhoosh: Tri Endurance #4. → Runna long run off the bike (brick) + strides. First 20 min easy, last 25-30 min at 9:15-9:30/mi (race pace). Negative-split. Outdoors in warmest part of day (heat acclim). | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
17
Jun 30
3.4k
170m
11mi
7.8h
RECOVERY1x MF▼
Notes: Cutback (-35%). Sat 60 min, Sun 30 min easy brick.
TueRunna hard run or tri-specific: 10 min easy → 20 min at 9:15-9:30/mi → 5 min easy.
WedBike: race-pace — target watts (174-185W). MyWhoosh: Sweetspot Training. Fan OFF first 20 min warmup (heat acclim). + 10 min easy run after bike (mini-brick transition practice).
SatLong ride (cutback): 60 min easy Z2 (110-122W). MyWhoosh: Zone 2 Endurance #2.
SunBrick bike: 30 min easy Z2. MyWhoosh: Zone 2 Endurance 30min. → Runna long run off the bike (brick) + strides. First 20 min easy, last 25-30 min at 9:15-9:30/mi (race pace). Negative-split. Outdoors in warmest part of day (heat acclim). | Drill swim: ~600yd — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused.
18
Jul 7
4.2k
250m
16mi
10.7h
REHEARSAL2x MF maint▼
Notes: RACE REHEARSAL (Sun) — full nutrition in heat. OWS #3. Practice T1/T2.
TueRunna hard run or tri-specific: 10 min easy → 20 min at 9:15-9:30/mi → 5 min easy.
WedBike: race-pace — target watts (174-185W). MyWhoosh: Tri Endurance #5. Fan OFF first 20 min warmup (heat acclim). + 10 min easy run after bike (mini-brick transition practice).
SatLong ride: 110-120 min with 30-40 min at race watts (174-185W) mid-ride. MyWhoosh: Race Rehearsal. Full race nutrition (60-80g carbs/hr).
SunRACE REHEARSAL: 1,500m swim → T1 → 60-75 min bike at race watts (full nutrition) → T2 → 25-30 min run at 9:15-9:30/mi. Do in heat. Time transitions.
Feel-fast swims. 800-3,500 yd/week. Race week: 15 min easy Mon if pool accessible.
Bike
Volume drops 45-65% week-by-week. Wed: short race-pace sharpeners. Sat: easy 60→40→30 min Z2 (no brick run). Sun: light brick 30-45 min bike → easy run. Race week (Wk 22): Wed openers (3×3 min race watts + 10 min run), Sat = race day.
Run
Easy runs only after Wk 19. 2-11 mi/week. No hard running after Wk 19. Sat before race: 20 min easy spin + 10 min jog (openers).
Strength
MacroFactor Workouts: 1x light Wk 19-20 (RPE 5-6). None Wk 21. No new exercises. No failure.
Key: Wk 19 (7/14-7/20): Pre-taper. Practice transitions in garage. Sodium loading practice.
Key: Wk 20 (7/21-7/27): Taper. Lay out all race gear. Bike tune-up done. No new equipment after this. Light strength 1x only.
Key: Wk 21 (7/28-8/3): Deep taper. Phantom fatigue normal — do NOT add panic workouts.
Key: Wk 22 (8/4-8/10): Race Week — Mon easy swim. Wed openers (3×3 min race watts + 10 min race-pace run). Thu rest. Fri total rest. Sat 20 min easy spin + 10 min easy jog (openers). Sat Aug 8 RACE DAY.
19
Jul 14
3.5k
180m
11mi
8h
1x MF light▼
Notes: PHASE 4 starts. Pre-taper week. Sodium loading practice. Sat 60 min, Sun 45 min brick.
TEST PATH C SALVAGE WK: Pyramid run 4/14 ✓, FTP retest 4/16 ✓ (161W). Sat brick + Sun long run/swim remaining. 4 sessions total.
7
Build
3,500
225m
11mi
2x MF
9.5
PHASE 2 starts. Wed threshold + Sat 100 min long Z2 + Sun 45 min brick. 3 swims back.
8
Build
4,000
240m
12mi
2x MF
10
TEST Timed 1-mile benchmark (Tue): target <9:30. (Done 4/28 via 2-mi TT 9:05 avg ✓ implicit.) Sat ride extends to 105 min.
9
Build
4,200
250m
14mi
2x MF (B mobility-only on VO2 day)
10.5
FIRST VO2 day (High Intensity 5min). FIRST Wed mini-brick (10 min easy). Demote Thu Strength B → mobility/core only.
10
Build
4,400
255m
15mi
2x MF
10.6
TEST MID-FTP RETEST: 12-min CP test (NOT 20-min). Target ≥172W. Sat 110 min + Sun 60 min brick. Mini-brick 12-15 min.
11
Build
3,200
165m
10mi
2x MF (B mobility-only)
7.5
RECOVERY Cutback. VO2 (Race Attacks #1). FIRST outdoor ride (Sauvie Island 75-90 min). FIRST sauna day (15-20 min post-ride, 4×/wk). Demote Thu B → mobility.
12
Build
4,400
255m
15mi
2x MF
10.6
TEST OFFICIAL FTP RETEST: 20-min protocol + mile <9:00. HARD GATE — ≥175W (sub-3 Col), ≥185W (CRUSH). Wetsuit purchase.
13
Race-Specific
4,400
260m
16mi
2x MF maint
10.7
PHASE 3 starts. Race-pace bricks. OWS #1. Heat acclim (sauna ongoing). Sat outdoor 90-110 min with 30 min race-watts block. Mini-brick 20 min.
14
Race-Specific
4,500
265m
18mi
2x MF maint
11.1
TEST Final mile benchmark target <8:15. Race-pace bike (174-185W). Sat outdoor Vancouver Lake (race recon). Run +3 mi via mini-brick + extended Tue + Sun.
15
Race-Specific
4,500
270m
19mi
2x MF maint
11.3
Full heat: fan off + outdoor + sauna. Outdoor power calibration ride. Sat 120 min outdoor + Sun 60 min.
16
Race-Specific
4,500
275m
20mi
2x MF maint
11.5
PEAK PEAK volume. OWS #2. Visualization 2x/week. 4.5h bike + 20 mi run weekly.
17
Race-Specific
3,400
170m
11mi
1x MF
7.8
RECOVERY Cutback (-35%). Sat 60 min, Sun 30 min easy brick.
18
Race-Specific
4,200
250m
16mi
2x MF maint
10.7
REHEARSAL RACE REHEARSAL (Sun) — full nutrition in heat. OWS #3. Practice T1/T2.
19
Taper
3,500
180m
11mi
1x MF light
8
PHASE 4 starts. Pre-taper week. Sodium loading practice. Sat 60 min, Sun 45 min brick.
20
Taper
2,000
110m
7mi
1x MF light
5.3
Taper — volume -55%. Lay out all race gear. Bike tune-up. Sat 40 min, Sun 30 min brick.
21
Taper
1,200
70m
4mi
None
3.6
Deep taper. Phantom fatigue normal. Sat 30 min easy, Sun 30 min easy spin.
22
Taper
800
30m
2mi
None
2.5
RACE Race Week — Mon easy swim. Wed openers (3×3 min race watts + 10 min run). Sat 8/8 RACE DAY.
Weekly Template
This is the recurring weekly structure. For the week-by-week plan with volumes and notes, see the "22-Week Plan" tab.
Path C v2.3 CRUSH MODE: 3 quality days (Tue hard run, Wed threshold/VO2 alternating bike, Sun brick) + Sat long Z2 ride (outdoor from Wk 11). Mon + Thu = swim + strength. Fri = full rest (date night). Gym days: Mon & Thu. Strength: Mon full body, Thu upper + core. Total: 7 sessions/wk (3 bikes, 2 runs, 2-3 swims, 2 strength).
MON
Swim
Str
~85 min
TUE
Run
~45-55 min
WED
Bike
~70-80 min
THU
Swim
Str
~65-70 min
FRI
Rest
0 min
SAT
Bike
~90-120 min
SUN
Brick
Swim
~120-150 min
Mondayswimstrength
Easy Swim + Strength A
~85 min · Chill day (couples therapy)
▼
Swim: 40 min, ~1,200-1,500 yds, technique & pull buoy, HR < 130. Drafting practice from Phase 2+: swim behind/beside a lane partner for 4×100 to learn hip-draft positioning.
Strength A: 40-45 min via MacroFactor Workouts — emphasize glutes/hamstrings, single-leg work, core
MacroFactor emphasis: squat, RDL, Bulgarian split squats or step-ups, pallof press, lat pull
MacroFactor de-emphasis: isolation arms, machine leg ext/curl, heavy deadlift (RDL preferred)
Why Monday: Paired with easy swim. Next hard session (Tue run) is 24+ hrs away.
~45-55 min · HARD DAY 1 of 2 — fresh legs for weakest discipline
▼
Runna programs this session — tempo, intervals, or fartlek.
SWAPPED from Wed: run gets fresh legs because it's the biggest limiter.
Rate honestly in Runna after each session for progressive overload.
Don't pair strength with this day. Hard run + heavy lifting = excessive fatigue.
Tuesday = 48+ hrs since Saturday brick, legs are fresh. Maximize run quality.
Tri-specific run substitution (1x/month, replace Runna): Phase 1: 15 min easy → 10 min at 10:30/mi → 5 min easy. Phase 2: 15 min easy → 15 min at 10:00/mi → 5 min easy. Phase 3: 10 min easy → 20 min at 9:15-9:30/mi → 5 min easy.
Verify Runna is giving threshold work — if all Tue sessions are easy/fartlek, manually add tempo blocks.
Cadence focus (all phases): during 2 easy sections, do 4×30 sec at 180 spm (quick turnover, same effort). Builds neuromuscular efficiency at 182 lbs.
Wednesdaybike
Bike Quality Intervals
~70-80 min · HARD DAY 2 of 2 — bike tolerates prior-day run fatigue well
▼
On trainer (MyWhoosh). SWAPPED from Tue: bike is stronger and tolerates fatigue better.
Phase 1: Sweet spot — 4×8 min at 88-94% FTP (142-151W), 4 min recovery
Phase 2: Threshold — 3×12 min at 95-105% FTP (153-169W), building to 2×20 min. PATH C: 2 quality bikes/wk (Wed threshold + Sat brick).
Phase 3: Race-pace — 2×20 min at target race watts (174-185W), 5 min recovery
Phase 4: Sharpeners — short, fast efforts at reduced volume
Use ERG mode for sweet spot/threshold. SIM mode for VO2max.
Phase 3+ heat acclim: turn off fan for first 20 min warm-up, fan ON for intervals.
Ankle stability warmup: single-leg balance on unstable surface, 2 min each side (HRT tendon laxity prehab)
v2.3 VO2 WEEK DEMOTION: On weeks with Wed VO2max (Wks 9, 11), demote Strength B to MOBILITY/CORE ONLY — no upper body lifting. 20 min: dead bugs, pallof press, hip mobility, thoracic rotations, eccentric calves only. Concurrent training interference (Hickson, Murach) caps mitochondrial adaptation by 15-25% at high combined load.
Mon→Thu = 3 day gap. Thu→Mon = 3 day gap. Research-backed 48-72hr recovery.
Fridayrest
Full Rest
0 min · Date night
▼
Complete rest. No active recovery. No quick spin.
Body consolidates Mon-Thu work. Full rest days reduce injury risk for 6-day athletes.
Saturdaybike
Long Z2 Ride
~90-120 min · Aerobic engine builder — bike volume is THE FTP-growth lever
▼
Bike: 90-120 min Z2 on trainer (68-76% FTP, 110-122W at 161W FTP). No run. This is pure aerobic accumulation.
Fuel at 30 min then every 20 min thereafter. Practice race nutrition on bike from Phase 2+ (40-60g carbs/hr in P2, 60-80g/hr in P3).
Cadence focus: target 85-95 rpm average. Spend 5 min every 20 min at 95-105 rpm (high-cadence neuromuscular work).
Phase 1: 90 min Z2. Phase 2: 100-110 min Z2 with last 15 min at sweet spot (88-92% FTP). Phase 3: 110-120 min with 30-40 min at race watts. Phase 4 (taper): 60 min easy.
Why pure ride (not brick): Sat is the FTP-building day. Sun is the race-specific brick day. Splitting the long-bike and brick-run lets each stimulus go deeper.
Sundaybrickswim
Brick (Bike + Long Run) + Drill Swim
~120-150 min · Race-specific day — practice running on tired legs
▼
Bike: 45-60 min Z2 on trainer (68-76% FTP). This pre-fatigues the legs for the run, mirroring race conditions.
Transition practice: rack bike, swap shoes. Time it. Target < 90 sec by Phase 3.
Transition setup: bike shoes pre-clipped to pedals. Run shoes with elastic laces. Helmet unbuckled on aerobars, open side toward you. Same layout every time.
Run: follow Runna's long run prescription, off the bike. HR 130-145 (Phase 1-2). Phase 3+: last 15-20 min at 9:15-9:30/mi.
Brick run pace prescriptions — Phase 1: all easy, pace irrelevant. Phase 2: first 30 min easy, last 15-20 min at 10:30-10:00/mi. Phase 3: first 20 min easy, last 25-30 min at race pace.
Negative-split the brick run: always start slower than you think you should. Build into pace.
Phase 2+: Add 4×20 sec strides after long run.
Phase 3+: Move 1 brick run/week outdoors in warmest part of day (heat acclimation).
Drill swim (from Wk 3): 20 min at gym — 4×50 catch-up, 4×50 fingertip drag, 4×50 focused swim. ~600 yds total. Optional if Sun feels too long; can move to Mon.
Swim is technique-only, not conditioning. Goal: 3x/week frequency to close SWOLF variance.
Phase Details
Deep dive into each phase's focus areas. For the week-by-week overview, see the "22-Week Plan" tab.
Phase 1: Aerobic Foundation (Weeks 1-6)
7.5-8.5 (actual ~5-7 due to Wks 3-5 dip)
Hours / Week
80/20
Easy / Hard
Wk 4
Cutback
Wk 6
FTP Retest
Goal: Build aerobic base, establish 6-day training consistency, develop swim technique, begin run volume ramp. PATH C: phase compressed by 1 week — Phase 2 starts Wk 7.
Bike
Sweet spot intervals at NEW FTP 161W (88-94% = 142-151W). Start 4×8 min, progress to 3×12 min. Saturday: long Z2 rides 70→85 min.
Run
Build from ~5.5 mi/wk to ~12 mi/wk. Cap increases at 1.5 mi/wk. Runna hard Tue (fresh legs): tempo intro. 1x/month tri-specific sub: 15 min easy → 10 min at 10:30/mi → 5 min easy. Cadence drills: 4×30 sec at 180 spm during easy runs. Runna long Sun: 45→60 min. Brick run: 15 min all easy (HR 130-145, pace irrelevant).
Swim
Technique-first. 3x/week from Wk 3 (Mon + Thu + Sun drill swim). Pull buoy + drills. Body position (head down, hips up) and catch mechanics (EVF). SWOLF target: consistently < 35 (not just best effort — every session).
PATH C SALVAGE WK: Pyramid run 4/14 ✓, FTP retest 4/16 ✓ (161W). Sat brick + Sun long run/swim remaining. 4 sessions total.
Phase 2: Build (Weeks 7-12)
9.5-10.5
Hours / Week
80/20
Easy / Hard
Wk 11
Cutback
Wk 12
FTP Retest
Goal: CRUSH MODE (v2.3, 4/29): Develop FTP aggressively via threshold + VO2max alternation + IF-corrected workouts (validated against MyWhoosh's actual IF values). Target FTP 185W by Wk 12 hard gate. v2.3: maintenance nutrition Wk 7+, 12-min CP test Wk 10, sauna Wk 11. PATH C: phase compressed by 2 weeks at end.
Bike
v2.3 CRUSH MODE — THREE bike sessions/wk. Wed alternates: VO2max (Wks 9, 11 — High Intensity 5min IF 0.93, Race Attacks #1 IF 1.06) and Threshold (Wks 8 → Cruise Intervals #4 IF 0.89; Wks 10, 12 → 20-min FTP retest, NOT ramp). IF ≥0.88 required for threshold work — Cruise Intervals #1-2 (IF 0.83-0.85) are sweet-spot sandbag and have been replaced. Sat: long Z2 ride 100-110 min at 110-122W with last 30 min @ sweet spot (88-92% FTP). Sun: brick — 45-60 min Z2 → Runna long run. Outdoor riding starts Wk 11 (1×/wk). Total bike: ~225-260 min/wk.
Run
Runna intensity increases (Tue, fresh legs). Tempo + intervals. 1x/month tri-specific sub: 15 min easy → 15 min at 10:00/mi → 5 min easy. Cadence drills continue. Long runs to 65-70 min + strides (4×20 sec post-run). Brick runs: 20-25 min — first 15 min easy, last 10 min at 10:30-10:00/mi (moderate). Negative-split always. v2.3 ADD: Wed mini-brick (10 min easy run after bike) starts Wk 9 — becomes 3rd run for durability (peak run mileage 18-20 mi/wk needed for 9:15/mi to hold over 10K).
Swim
CSS sets — 5×200 at CSS pace. Sighting practice every 6-8 strokes starting Wk 10. Test CSS every 4 weeks. 3 swims/week continues. Drafting practice on Mon: 4×100 behind/beside lane partner to learn hip-draft positioning.
Strength
MacroFactor Workouts: Wks 7-9 max strength (RPE 8-9), Wks 10-12 transition to power (lighter, explosive intent, RPE 7-8). Sessions: Mon 40-45 min, Thu 30-35 min.
Volume Progression
Wk
Swim
Bike
Run
Str
Hrs
Notes
7
3,500
225m
11mi
2x MF
9.5
PHASE 2 starts. Wed threshold + Sat 100 min long Z2 + Sun 45 min brick. 3 swims back.
8
4,000
240m
12mi
2x MF
10
Timed 1-mile benchmark (Tue): target <9:30. (Done 4/28 via 2-mi TT 9:05 avg ✓ implicit.) Sat ride extends to 105 min.
9
4,200
250m
14mi
2x MF (B mobility-only on VO2 day)
10.5
FIRST VO2 day (High Intensity 5min). FIRST Wed mini-brick (10 min easy). Demote Thu Strength B → mobility/core only.
10
4,400
255m
15mi
2x MF
10.6
MID-FTP RETEST: 12-min CP test (NOT 20-min). Target ≥172W. Sat 110 min + Sun 60 min brick. Mini-brick 12-15 min.
11
3,200
165m
10mi
2x MF (B mobility-only)
7.5
Cutback. VO2 (Race Attacks #1). FIRST outdoor ride (Sauvie Island 75-90 min). FIRST sauna day (15-20 min post-ride, 4×/wk). Demote Thu B → mobility.
12
4,400
255m
15mi
2x MF
10.6
OFFICIAL FTP RETEST: 20-min protocol + mile <9:00. HARD GATE — ≥175W (sub-3 Col), ≥185W (CRUSH). Wetsuit purchase.
Phase 3: Race-Specific (Weeks 13-18)
10.5-10.8
Hours / Week
75/25
Easy / Hard
Wk 17
Cutback
—
FTP Retest
Goal: Race simulation. Practice race-pace efforts, pacing, nutrition, transitions. Wetsuit + open water. Heat acclimation begins. PATH C: phase expanded by 2 weeks for more race-specific time.
Bike
Race-pace bike work begins. Wed: 2×20 min at target race watts (174-185W). Sat: 110-120 min long ride with 30-40 min block at race watts mid-ride (practice 60-80g carbs/hr fueling). Sun: brick — 60 min bike (last 30 min at race watts) → Runna long run with last 15-20 min at race pace. Heat acclim from Wk 13 (passive), full protocol Wk 15+ (fan off + outdoor + sauna). Wk 15: outdoor calibration ride. High-cadence (100+ rpm) last 5 min of every ride. Total bike: 240-275 min/wk.
Run
Brick runs: 25-30 min — first 10 min easy, last 15-20 min at 9:15-9:30/mi (race pace). Negative-split always. 1x/month tri-specific sub on Tue: 10 min easy → 20 min at 9:15-9:30/mi → 5 min easy. Cadence 175-180 spm target. Runna long Sun + strides. Move 1 run/week outdoors in heat. Wed mini-brick extends to 20-25 min easy (started Wk 9 at 10 min). Start mental visualization 2x/week before bed. v2.3 PEAK MILEAGE: 18-20 mi/wk Wks 14-16 (was 15) — durability for 9:15/mi over 10K off bike in heat.
Swim
Race-sim: 3×500 at race effort with upstream/downstream pacing (odd 500s = 85% effort, even 500s = 95% effort). Open water Wks 13, 16, 18. Sighting every 6-8 strokes in all pool sessions. Practice wetsuit on/off (target strip < 60 sec).
Strength
MacroFactor Workouts: maintenance (RPE 6-7, 2 sets instead of 3). Sessions stay 2x/week. Drop to 1x on cutback weeks.
Volume Progression
Wk
Swim
Bike
Run
Str
Hrs
Notes
13
4,400
260m
16mi
2x MF maint
10.7
PHASE 3 starts. Race-pace bricks. OWS #1. Heat acclim (sauna ongoing). Sat outdoor 90-110 min with 30 min race-watts block. Mini-brick 20 min.
14
4,500
265m
18mi
2x MF maint
11.1
Final mile benchmark target <8:15. Race-pace bike (174-185W). Sat outdoor Vancouver Lake (race recon). Run +3 mi via mini-brick + extended Tue + Sun.
15
4,500
270m
19mi
2x MF maint
11.3
Full heat: fan off + outdoor + sauna. Outdoor power calibration ride. Sat 120 min outdoor + Sun 60 min.
16
4,500
275m
20mi
2x MF maint
11.5
PEAK volume. OWS #2. Visualization 2x/week. 4.5h bike + 20 mi run weekly.
17
3,400
170m
11mi
1x MF
7.8
Cutback (-35%). Sat 60 min, Sun 30 min easy brick.
18
4,200
250m
16mi
2x MF maint
10.7
RACE REHEARSAL (Sun) — full nutrition in heat. OWS #3. Practice T1/T2.
Phase 4: Taper (Weeks 19-22)
8.0→2.5
Hours / Week
Keep intensity
Easy / Hard
—
Cutback
—
FTP Retest
Goal: Reduce volume 45-60% (exponential decay), maintain intensity with short sharp efforts, keep touching all 3 disciplines. PATH C: extra week of taper (3 weeks instead of 2) — added safety margin.
Bike
Volume drops 45-65% week-by-week. Wed: short race-pace sharpeners. Sat: easy 60→40→30 min Z2 (no brick run). Sun: light brick 30-45 min bike → easy run. Race week (Wk 22): Wed openers (3×3 min race watts + 10 min run), Sat = race day.
Run
Easy runs only after Wk 19. 2-11 mi/week. No hard running after Wk 19. Sat before race: 20 min easy spin + 10 min jog (openers).
Swim
Feel-fast swims. 800-3,500 yd/week. Race week: 15 min easy Mon if pool accessible.
Strength
MacroFactor Workouts: 1x light Wk 19-20 (RPE 5-6). None Wk 21. No new exercises. No failure.
Volume Progression
Wk
Swim
Bike
Run
Str
Hrs
Notes
19
3,500
180m
11mi
1x MF light
8
PHASE 4 starts. Pre-taper week. Sodium loading practice. Sat 60 min, Sun 45 min brick.
20
2,000
110m
7mi
1x MF light
5.3
Taper — volume -55%. Lay out all race gear. Bike tune-up. Sat 40 min, Sun 30 min brick.
21
1,200
70m
4mi
None
3.6
Deep taper. Phantom fatigue normal. Sat 30 min easy, Sun 30 min easy spin.
22
800
30m
2mi
None
2.5
Race Week — Mon easy swim. Wed openers (3×3 min race watts + 10 min run). Sat 8/8 RACE DAY.
MyWhoosh Workout Calendar
Exact MyWhoosh workouts mapped to each week. Search by name in the app, add to your calendar.
v2.3 CRUSH MODE (4/29/2026):3 bike sessions per week — Wed alternates threshold (IF ≥0.88) + VO2max (Wks 9, 11) + Sat long Z2 + Sun brick. Wk 10 = 12-min CP test, Wk 12 = 20-min FTP test (not ramp). IMPORTANT: Cruise Intervals #1-2 (IF 0.83-0.85) are SWEET SPOT not threshold — replaced. Friday is full rest. Do NOT add extra rides.
Bike volume is THE FTP-growth lever. Sat = pure aerobic engine (no brick run). Sun = race-specific brick (bike → Runna long run). Wed = top-end intensity. The MyWhoosh Olympic Tri plan programs 4 hard rides/week with no awareness of your swim, run, and strength training — don't follow it.
Wednesday — Quality
Intervals (ERG mode)
Sweet spot → Threshold → Race-pace as phases progress
Saturday — Long Ride
Z2 Endurance (no run)
90–120 min steady aerobic. Practice race fueling.
Sunday — Brick
Z2 Bike → Runna Long Run
45–60 min bike → run off the bike. Race-specific.
Phase 1: Aerobic Foundation
Wed: Sweet Spot (142–151W (88–94% FTP)) · Sat: 110–120W (68–74% FTP) · Sun: — (Phase 1 historical, no Sun ride)
Wk
Dates
Wed
Time
TSS
Sat
Time
TSS
Sun
Time
TSS
Notes
1
Mar 10–16
Sweetspot #1
50 min
47
Zone 2 Endurance #1
1h
47
—
—
—
(historical)
2
Mar 17–23
Sweetspot #2
55 min
54
Zone 2 Endurance #1
1h
47
—
—
—
(historical)
3
Mar 24–30
Sweetspot #4
1h 10m
64
Zone 2 Endurance #2
1h
51
—
—
—
Mental health dip starts — actual: ~3 sessions
4
Mar 31–Apr 6
Sweetspot Training
41 min
35
Zone 2 Endurance 30min
59 min
43
—
—
—
RECOVERY De facto (dip continues)
5
Apr 7–13
Sweetspot #5
1h
64
Zone 2 Endurance #2
1h
51
—
—
—
Dip continues — actual: ~3-4 sessions
6
Apr 14–20
MyWhoosh FTP Test
1h 15m
46
Zone 2 Endurance #1
1h
47
—
—
—
TEST done 4/16 = 161W (+7W). Path C adopted.
Phase 2: Build
Wed: Threshold (Cruise Intervals) (95–100% FTP with over-under surges to 105%) · Sat: 110–122W (68–76% FTP) Z2 long ride · Sun: 110–122W brick bike → Runna long run
Wk
Dates
Wed
Time
TSS
Sat
Time
TSS
Sun
Time
TSS
Notes
7
Apr 21–27
Cruise Intervals #1 (DONE — but IF 0.83 = sandbag)
55 min
63
90 Minute Endurance
1h 30m
71
Zone 2 Endurance #2
45 min
38
v2.1 start. Cruise Intervals #1 actual IF 0.83 — too easy. Future weeks corrected below.
8
Apr 28–May 4
Cruise Intervals #4 (IF 0.89 — TRUE threshold)
59 min
78
90 Minute Endurance
1h 45m
82
Zone 2 Endurance #2
50 min
42
Real threshold begins. Sat last 30 min @ sweet spot.
9
May 5–11
VO2: High Intensity 5min (IF 0.93)
50 min
72
90 Minute Endurance
1h 50m
86
Zone 2 Endurance #1
50 min
39
TEST FIRST VO2 day. Brutal but accelerates FTP gains.
10
May 12–18
12-Min CP Test (manual, mid-block)
55 min
70
90 Minute Endurance
1h 50m
86
Zone 2 Endurance #1
60 min
47
TEST MID-FTP CHECK. 12-min CP test (NOT 20-min, too close to Wk 12 official). FTP estimate = 12-min avg × 0.90. Target ≥172W.
11
May 19–25
VO2: Race Attacks #1 (IF 1.06)
56 min
107
Outdoor: Sauvie Island Loop
1h 15m-1h 30m
70
Zone 2 Endurance 30min
30 min
24
RECOVERY volume but keep VO2 intensity. FIRST outdoor ride.
12
May 26–Jun 1
20-Min FTP Test (manual)
1h 10m
90
90 Minute Endurance
1h 50m
86
Zone 2 Endurance #1
60 min
47
TEST OFFICIAL — HARD GATE. Target ≥185W for CRUSH (≥175W for sub-3 Columbia).
Phase 3: Race-Specific
Wed: Race-Pace (174–185W target race watts) · Sat: Z2 long ride with 30-40 min race-watts block · Sun: Brick bike with last 30 min at race watts → run
Wk
Dates
Wed
Time
TSS
Sat
Time
TSS
Sun
Time
TSS
Notes
13
Jun 2–8
Tri Endurance #4
1h 10m
79
Tri Endurance #5
1h 50m
105
Tri Endurance #4
60 min
65
Phase 3 starts. OWS #1 + heat acclim passive
14
Jun 9–15
Threshold #5
59 min
79
Tri Endurance #5
1h 55m
110
Tri Endurance #4
60 min
65
Final mile benchmark <8:15
15
Jun 16–22
Tri Endurance #4
1h 10m
79
Tri Endurance #5
2h
115
Tri Endurance #4
60 min
65
Full heat acclim + outdoor power calibration
16
Jun 23–29
Tri Endurance #4
1h 10m
79
Tri Endurance #5
2h
115
Tri Endurance #4
60 min
65
Peak volume. OWS #2 + mini-brick
17
Jun 30–Jul 6
Sweetspot Training
41 min
35
Zone 2 Endurance #2
1h
51
Zone 2 Endurance 30min
30 min
24
RECOVERY
18
Jul 7–13
Tri Endurance #5
1h 33m
102
Tri Endurance #5
1h 50m
105
Race Rehearsal (outdoor)
—
—
Race rehearsal Sun + OWS #3
Phase 4: Taper
Wed: Sharpeners (Short efforts at race watts) · Sat: Easy spin only (Wk 22 = race day) · Sun: Light brick or rest
Wk
Dates
Wed
Time
TSS
Sat
Time
TSS
Sun
Time
TSS
Notes
19
Jul 14–20
Tri Endurance #3
1h 4m
64
Zone 2 Steady State
1h
44
Zone 2 Endurance #1
45 min
35
Pre-taper. Sodium loading practice
20
Jul 21–27
Sweetspot Training
41 min
35
Zone 2 Endurance 30min
40 min
30
Zone 2 Endurance 30min
30 min
24
Taper — volume -55%
21
Jul 28–Aug 3
Zone 2 Endurance 30min
40 min
25
Zone 2 Endurance 30min
30 min
22
Zone 2 Endurance 30min
30 min
22
Deep taper
22
Aug 4–10
Free Ride (openers)
~30 min
—
RACE DAY
—
—
—
—
—
RACE — Aug 8 RACE DAY
Rules (v2.3 CRUSH MODE)
3 bike sessions per week — Wed (quality) + Sat (long Z2) + Sun (brick). No extras.
Saturday is a pure ride — no run off the bike. Fuel like a race.
Sunday is the brick day — bike → Runna long run. Practice transition.
Friday = full rest — no spin, no "easy ride," nothing.
ERG mode for sweet spot, threshold, AND VO2max. SIM mode for race-pace.
FTP retests at Wk 6 (done, ramp 161W), Wk 10 (mid, 20-min), Wk 12 (hard gate, 20-min) — 20-min protocol from Wk 10 onward (not ramp). Update zones in MyWhoosh + Coros after each.
VO2max days (Wks 9, 11): brutal but accelerate FTP gain. Mon/Thu strength must be moderate that week. If HRV drops >10% AM after VO2 day, swap Sun brick for easy spin.
Outdoor riding from Wk 11: 1×/week, replaces indoor Sat. Real wind, real terrain, real pacing. See Sessions tab for routes.
If you miss a workout, skip it — don't double up the next day.
Phase 3 heat acclim: turn off fan for first 20 min warmup, fan on for intervals.
IF ≥0.88 required for threshold work — Cruise Intervals #1-2 are sweet spot (IF 0.83-0.85), don't substitute them in.
Session Library
Every prescribed session in detail. Click to expand.
Swim Sessions
Monday Easy SwimAll Phases
~40 min · 1,200–1,500 yds · HR < 130
▼
Set
Detail
Warm-up
200 easy
Drills
4×50 catch-up / fingertip drag
Main
4–6×100 pull buoy
Drills
4×50 side kick
Cool-down
200 easy
Coach note: Pull buoy forces catch feel. Sight every 10 strokes from Week 1 — build this habit early for open water.
Monday CSS SwimPhase 2+
~45 min · 1,800–2,200 yds
▼
Set
Detail
Warm-up
400 easy + 4×50 build
Main
5×200 at CSS pace, 20 sec rest
Race-pace
4×100 at race effort, 15 sec rest
Cool-down
200 easy
Coach note: CSS (Critical Swim Speed) = (400 TT time − 200 TT time) ÷ 2. This gives your per-100 threshold pace. Hold it for each 200 rep — if you fade on rep 4–5, the pace is too aggressive.
Race-Sim SwimPhase 3
~50 min · 2,000–2,400 yds
▼
Set
Detail
Warm-up
400 easy + 4×50 race-pace build
Main
3×500 at race effort (2:05–2:15/100m), 60 sec rest
Sprint
4×25, 30 sec rest
Cool-down
200 easy
Coach note: Course tweak: simulate river pacing — 1st rep 90% effort (upstream), 2nd rep 85% (transition), 3rd rep 95% (downstream). Practice the gear shift.
Bike Sessions
Sweet Spot IntervalsPhase 1
~70 min · ERG mode
▼
Set
Detail
Warm-up
12 min ramp 60→75% FTP
Main
2×15 min at 88–94% FTP (142–151W), 5 min recovery
Aerobic
8 min at 70% FTP
Cool-down
10 min easy spin
Coach note: MyWhoosh workouts: Sweetspot #1 → #2 → #4 → #5 → Sweet Spot 6 (see MyWhoosh tab for exact weekly schedule). Stay seated, cadence 85–95. If HR drifts above 90% max in the last 3 min, drop 3–5 W.
Threshold IntervalsPhase 2
~75 min
▼
Set
Detail
Warm-up
15 min ramp 60→78% FTP
Main
3×10 min at 95–100% FTP, 4 min recovery
Aerobic finish
10 min at 72% FTP
Cool-down
10 min easy spin
Coach note: MyWhoosh workouts: Cruise Intervals #1 → #2 → #4 → Threshold #3 → #5 (see MyWhoosh tab). These are from the THRESHOLD category, not Sweetspot — validation confirmed Sweetspot workouts only target 86-88% FTP, too low for Phase 2. These should feel hard but repeatable. Cadence 85–95.
Race-Pace SustainedPhase 3
~75 min
▼
Set
Detail
Warm-up
15 min progressive
Main
35–40 min sustained at 108–115% FTP (174–185W target race watts)
Cool-down
15 min easy spin
Coach note: MyWhoosh workouts: Tri Endurance #3, #4, #5 (see MyWhoosh tab). Use Week 18 rehearsal data to calibrate exact wattage. This is your race-day power — practice fueling and pacing at this effort.
Saturday Long Z2 RidePhase 2-4
90–120 min · No brick run (v2.1)
▼
Set
Detail
Warm-up
10 min ramp 60→70% FTP
Main
70–100 min steady at 68–76% FTP (110–122W). Phase 3: include 30–40 min race-watts block mid-ride.
Cadence
5 min every 20 min at 95–105 rpm (high-cadence neuromuscular work)
Fueling
40g carbs/hr in P2, 60–80g/hr in P3. Sip electrolyte every 15 min.
Cool-down
10 min easy spin
Coach note: Sat is now your bike-volume day — the FTP-growth lever. MyWhoosh workouts: 90 Minute Endurance (P2), Tri Endurance #5 (P3). No run after — that's Sunday's job. If you can hold conversation through this entire ride, you're in the right zone. If not, lower the watts.
High Intensity 5min — IF 0.93. Likely 4–5×5 min at 105–115% FTP (169–185W), 3 min recovery
Main (Wk 11)
Race Attacks #1 — IF 1.06. Race-pace attacks, harder. Use ERG mode.
Cool-down
8–10 min easy spin
Coach note: VO2max raises the ceiling that FTP sits under. 1 session every 2 weeks accelerates FTP gain by ~30% vs threshold-only training. EXPECT FATIGUE — Wk 9 and Wk 11 will feel heavy. Mon/Thu must be easy (don't crush strength). If HRV drops >10% AM after VO2 day, swap Sun brick for easy spin. Don't stack VO2 + outdoor + brick in same week — recovery debt explodes.
12-Minute CP Test (Wk 10 mid-block)Phase 2 mid-retest
~55 min total · less fatiguing than 20-min
▼
Set
Detail
Warm-up
12 min progressive: 4 min easy → 4 min moderate → 4 min @ 85% FTP
Activation
3×1 min @ 110% FTP, 1 min recovery
Easy
5 min easy spin
Test
12 min ALL-OUT — hold steady max sustainable watts. Shorter test = pace 5% harder than 20-min equivalent.
Cool-down
10 min easy spin
Coach note: v2.3: This replaces the originally-planned 20-min test at Wk 10 — testing twice in 2 weeks (Wk 10 + Wk 12) measures the test, not adaptation. The 12-min CP gives a useful mid-block reality check without burning recovery before the official Wk 12 retest. FTP estimate = 12-min avg × 0.90. Less fatiguing than 20-min — Sat ride after this is fine. Cadence 88-92.
20-Minute FTP Test (Wk 12 official)Phase 2 hard gate
~70 min total · replaces ramp test
▼
Set
Detail
Warm-up
15 min progressive: 5 min easy → 5 min moderate → 5 min @ 85% FTP
Activation
3×1 min @ 110% FTP, 1 min recovery
Easy
5 min easy spin
Test
20 min ALL-OUT — pace yourself, don't blow up. Hold steady max sustainable watts.
Cool-down
15 min easy spin
Coach note: FTP = 20-min average × 0.95. The 0.95 multiplier accounts for the fact that 20-min power is slightly higher than true 60-min sustainable power. Ramp tests run 2–3% conservative vs this protocol — same training, ~5W higher reported FTP. PACE FROM THE START: a smart 20-min test holds even watts; a bad one starts hot and fades. Cadence 88–92. Wk 12 HARD GATE — ≥175W (sub-3 Columbia floor), ≥185W (CRUSH stretch).
Sunday Brick (Bike + Run)Phase 2-4
~45–75 min bike + Runna long run · v2.1 race-specific brick
▼
Set
Detail
Bike warm-up
10 min easy spin
Bike main
P2: 35–50 min Z2 (110–122W). P3: 50 min Z2 + last 20–30 min at race watts (174–185W).
Transition
Rack bike, swap shoes. Time it. Target < 90 sec by Phase 3.
Run
Runna long run prescription, off the bike. Negative-split. P2: first 30 min easy, last 15–20 min at 10:30–10:00/mi. P3: first 20 min easy, last 25–30 min at race pace 9:15–9:30/mi.
Strides
P2+: 4×20 sec strides post-run.
Coach note: This replaces the old Saturday brick. Sunday-as-brick lets Saturday be a pure long aerobic ride (more bike volume) AND keeps full race-specific brick practice. Same transition setup every time: bike shoes pre-clipped, run shoes with elastic laces, helmet unbuckled, towel down.
Outdoor Routes (Portland Area) — v2.3 CRUSH MODE
Outdoor riding starts Wk 11. Indoor power lies — wind, drafting, terrain, real pacing matter for Aug 8.
Race-specific (Phase 3, Wks 13-18):
Vancouver Lake / Lower River Rd loop — closest to actual race course. ~25 mi flat, rural roads, low traffic. Park at Frenchman's Bar. Race recon.
Marine Drive (Portland side) — flat paved, Columbia River views. 15-50 mi out-and-back. Parallel terrain to race day.
Z2 base + threshold (Wks 11-13):
Sauvie Island loop — ~13 mi flat loop, 20 min from inner PDX. Repeatable for long Z2. Add 2nd loop for 26 mi.
Banks-Vernonia State Trail — ~21 mi each way, paved, gentle grade, car-free. Great for sweet spot blocks.
Springwater Corridor — paved trail, flat, ~21 mi from Sellwood to Boring. Convenient if no driving.
Climbing capacity (optional):
Hagg Lake loop — 10 mi rolling, 35 min from PDX. Run option after = brick practice.
Larch Mountain Rd — sustained climb out of Corbett. 1× ride at Wk 14 builds threshold tolerance.
Skyline Blvd — rolling NW PDX, 16-25 mi loops. Higher TSS for same time as flat.
Run Sessions
Runna handles your run programming.
Tuesday hard runs and Sunday long runs come from your Runna plan — follow those sessions as prescribed.
v2.1 brick change: The long run on Sunday is now the brick run — it follows a 45–60 min Z2 bike. Run Runna's Sun long run prescription off the bike. Phase 1: all easy, HR 130-145. Phase 2: first 30 min easy, last 15-20 min at 10:30-10:00/mi. Phase 3: first 20 min easy, last 25-30 min at 9:15-9:30/mi (race pace). Negative-split. Saturday is now a pure long Z2 ride (no run).
Strength Training
Why strength matters for triathlon: Research from Rønnestad, Beattie, and Aagaard shows heavy resistance training improves running economy, cycling economy, and injury resilience — without adding bulk. Key change in this plan: from 1x/week at 90 min to 2x/week at 40-45 min. Shorter, heavier, more frequent.
Session A — Monday (Full Body)
Paired with easy swim. Full leg stimulus OK — next hard session is 48+ hrs away.
#
Exercise
Sets × Reps
Why
1
Back Squat or Front Squat
3×5-6
Cycling power, running economy
2
Romanian Deadlift
3×6-8
Posterior chain for run propulsion + hip extension
3
Bulgarian Split Squat
3×8 each leg
Single-leg power, hip stability, run propulsion (asymmetric load)
4
Lat Pulldown or Pull-Up
3×8-10
Swim catch power, shoulder stability
5
Pallof Press or Ab Wheel
3×10 each side
Anti-rotation core
Session B — Thursday (Upper Body + Core + Prehab)
Paired with easy swim at gym. No heavy leg work.
#
Exercise
Sets × Reps
Why
1
Bench Press or Overhead Press
3×8-10
Upper push, swim stroke
2
Dumbbell Row or Cable Row
3×8-10
Upper back for swim catch, cycling posture
3
Dead Bug (weighted)
3×8 each side
Anti-extension core
4
Single-Leg Calf Raise (slow)
3×12
Achilles health, 3-sec eccentric
5
Band External Rotation
2×15
Shoulder health for swimming
6
Single-Leg Balance (unstable surface)
2×2 min each side
Ankle stability prehab — HRT tendon laxity protection at 180 lbs run volume
v2.3 VO2-week demotion (Wks 9, 11): On weeks with Wed VO2max, demote Thursday Strength B to mobility/core only (20 min: dead bugs, pallof, hip mobility, eccentric calves). No upper-body lifting. Concurrent strength + VO2 caps mitochondrial adaptation by 15-25% (Hickson, Murach reviews) — protect the bike adaptation.
Periodization by Phase
Phase
Frequency
Loading
Session A
Session B
1 (Wks 1-3)
2x/week
3×10-12, moderate
Full body
Upper + core
1 (Wks 4-6)
2x/week
3×6-8, heavy
Full body
Upper + core
2 (Wks 7-12)
2x/week
3×4-6, heavy
Full body
Upper + core
3 (Wks 13-18)
2x (1x cutback)
2×3-4, maintain
Full body (reduced)
Upper + core
4 (Wks 19-22)
1x then 0
Light or none
Light Wk 20
None Wks 21-22
MacroFactor setup: Set to Custom, 2 days/week (Mon + Thu), style Strength, RIR 1-2. At Week 15, switch to Maintenance.
Nutrition
Periodized fueling: lose weight on easy days, fuel hard sessions fully.
Strategy (v2.3, 4/29): Maintenance during build. Phase 1 (Wks 1-6): historical ~350 cal/day deficit. Phase 2-3 (Wks 7-18): full maintenance — sport-science review identified that half-deficit + concurrent FTP build is contradictory and sabotages adaptation. Phase 4 (taper): maintenance with carb shift. Projected race weight: 178-180 lbs. v2.3 CRUSH FTP target: 161W (now) → 175W (Wk 12 floor) → 185W (Wk 12 stretch) → 200W (race day, 2.42 W/kg). Evidence: maintenance preserves FTP-build adaptation (Helms 2014, Garthe 2011); flat course makes weight less impactful than power.
Weight Projection (v2.3 maintenance plan)
Current (Wk 8)
180 lbs
trending avg
Wk 12
179 lbs
FTP gate
Wk 18
~178 lbs
race rehearsal
Race Day
~178 lbs
200W = 2.49 W/kg
Daily Targets (MacroFactor)
Hard Days Tue · Wed · Sat
Easy / Rest Days Mon · Thu · Fri · Sun
Race Week Loading 3 days before race
Calories
2,299
2,189
2,400+ (higher carb ratio)
Protein
180g
180g
180g
Carbs
222g in MF
Bias actual eating toward 250g+
200g
8–10 g/kg/day (550–680g)
Fat
72g
77g
50–60g (shifted to carbs)
The carb hack: MF shows 222g carbs on hard days. In practice, eat 250g+ by adding pre-session fuel (banana + toast with honey = ~50g carbs). This fuels your intervals without blowing up the MF tracking. Protein at 180g is the anchor — never drop below this.
Session Fueling
Timing
Hard Days (Tue/Wed/Sat)
Easy Days
Pre-session 60–90 min before
Non-negotiable: banana + toast with honey (~50g carbs). Don't do intervals fasted.
Normal meal timing. No special prep.
During
Sat brick: gel + sports drink (30–40g/hr Phase 1 → 60–80g/hr Phase 3). Tue/Wed: water only unless >75 min.
Sip electrolyte at every station. Pour water on head.
Carry handheld flask for T2→first station gap.
Practice the EXACT protocol at Week 18 race rehearsal. Same brands, same timing, same quantities. Your gut needs to rehearse race-day absorption under heat stress.
HRT-Specific Nutrition
•Calcium: 1,200 mg/day. Supports bone density on estrogen. Food sources preferred, supplement the gap.
•Miles 4-5: 9:00–9:15/mi — commit. This is where sub-3 is won.
•Mile 6: 8:45–9:00/mi — empty the tank. Finish in sight.
• First km feels wrong — normal after cycling, work through it
• Take EVERY water station (5 total), pour water on head
• Sip electrolyte at every station
• Carry handheld flask for T2 → first aid station gap (1.2 mi)
• Walk aid stations if needed (30-sec walk = 15-sec time cost; blowing up = 5-min cost)
•Bailout: if mile 1 >10:15/mi or HR >165, shift to sub-3:10 pacing (10:00/mi even). Don't blow up chasing CRUSH.
Gear inventory: see the Gear tab for the complete owned/needed list with buy-by deadlines. Hard cutoff: no new gear after Wk 20 (Jul 21). Test EVERY item at Wk 18 race rehearsal.
Rules That Can DQ You
Rule
Details
Chin strap
Must be buckled at ALL times when touching or near your bike. Not just riding — while WALKING it in transition. Instant DQ.
No headphones
Earbuds/headphones banned during the entire race. If you train with music, practice WITHOUT it.
Drafting zone
Stay 3 bike lengths (~7m) behind the cyclist ahead. 15 seconds to pass once in the zone. Most common age-grouper penalty.
Blocking
Stay right on the bike. Riding center of lane = penalty.
No outside help
Nobody can hand you anything outside an aid station. Partner can't hand you a gel on the run.
Bib visible
Race number on front during run (race belt handles this).
USAT membership
Annual membership or one-day license required. Verify included in registration.
Portapotty: Use BEFORE putting wetsuit on. Lines are 30+ min. Budget at Race -1:00.
Timing chip: LEFT ankle (away from bike chain). Secure with extra rubber band. Practice swimming with it.
Body marking: Budget 15-20 min for the line. Arms and thighs marked.
Walk to swim start: Columbia River course has you walk upstream to the start. Budget energy.
Goggles under swim cap: If knocked off, they hang around neck instead of sinking.
Throwaway bag: Flip flops, towel, warm layer in a bag at swim start for the 15-30 min wait.
Drive the course: Bike and run course recon the day before. Know turns, aid stations, road surface.
Sunscreen: SPF 50+ waterproof, 30 min before race (before wetsuit). Won't survive the swim fully — consider arm sleeves.
Anti-chafe: Between toes, under race belt, wetsuit zipper seam, bra line, inner thighs.
Flat tire: Practice changing a flat 3 times before race day. Under stress, unpracticed = 20 min or DNF.
HRT & Spironolactone Alert (v2.3 expanded)
If you take spironolactone: It’s a potassium-sparing diuretic that increases dehydration risk, elevates K+ (hyperkalemia → cardiac arrhythmia risk in heat), and reduces plasma volume (works against heat acclimation).
Talk to your prescribing doctor about race day specifically
Get metabolic panel (K+, Na+, Mg) at Wk 14 and Wk 19
Quarterly hematocrit + ferritin check (v2.3 add) — estradiol suppresses oxygen-carrying capacity AND HRT changes iron handling. Ferritin <30 ng/mL = supplement; hematocrit informs realistic FTP ceiling.
Sodium loading may need to be higher than standard protocol
Avoid K-citrate / high-dose K supplementation on long-ride days (cardiac risk with spiro) — banana + coconut water pre-ride is fine; potassium tabs are not
Monitor for dizziness, unusual cramping, or palpitations during hot sessions
Tendon laxity: HRT increases tendon laxity — eccentric calf raises (Strength B) + ankle stability work non-negotiable at 180 lbs run volume
Mental Preparation
Visualization (from Wk 15): 5 min, 2×/week before bed. Walk through entire race mentally: swim start → sighting → T1 → bike loop 1 → nutrition → loop 2 → T2 → run mile 1 (slow!) → turnaround → finish. Builds neural pathway for race-day execution.
Taper phantom fatigue: You WILL feel terrible in Wks 21-22. Heavy, sluggish, slow. This is the plan working. Do NOT add panic workouts.
Visualize B and C goals too: If you hit mile 1 at 10:15 and shift to sub-3:10 pacing, be at peace with that BEFORE race day.
Mile 4-5 wall: Don't think “6.2 miles.” Chunk it: turnaround → next water station → next station.
Pre-assign mantras: Mile 1 = “smooth is fast.” Miles 4-5 = “this is what you trained for.” Mile 6 = “one more mile.”
Walking is not failure: 30-sec walk through an aid station costs 15 seconds. Blowing up costs 5 minutes.
Illness Prevention (Wks 18-21)
The “taper cold” is real. Reduced training temporarily suppresses immune function.
Nothing new on race day. Test every item at Wk 18 rehearsal — same brands, same setup.
Essentials > nice-to-haves. Spend on wetsuit, tri suit, race belt, anti-chafe first.
Wetsuit fit matters more than brand. Try multiple brands at a tri shop. Trial-and-return online (Roka, BlueSeventy) is OK.
Goggles: bring 2 pairs. Clear + tinted. Day-of decision based on sun.
Test gels at Phase 2 bricks. Don't switch brands inside Phase 3.
App Configuration
Runna Settings
Setting
Value
Run days
Tuesday (hard) + Sunday (long)
Hard runs/week
1
Hard difficulty
Regular
Long structure
Reduced
Long difficulty
Reduced
End date
August 1, 2026
Runna doesn't know about bike training. Tuesday hard run gets fresh legs (48+ hrs since Sunday brick). Wednesday bike tolerates prior-day run fatigue well. Rate Runna sessions honestly for progressive overload. v2.1 note: Sunday's "long run" runs off a 45–60 min bike — it's the brick now. Runna doesn't know that, so the prescribed pace is for fresh legs — expect to run 15-30 sec/mi slower in the first 10 min, then normalize.
MacroFactor — Nutrition Side
Setting
Value
Goal
Maintain Weight
Protein preference
Upper end of range
Exercise type
Combination of endurance and resistance
Weigh-in
Daily, first thing in the morning
Log everything consistently. Algorithm needs 2+ weeks to calibrate. Daily targets: ~2,189 (easy) – 2,299 (hard) kcal at maintenance — see Nutrition tab for full breakdown. Weekly avg ~2,230 kcal/day.
MacroFactor — Workouts Side
Setting
Value
Program type
Custom
Frequency
2 days/week (Monday + Thursday)
Style
Strength
RIR target
1-2
Enter exercises from Strength tab. Remove isolation exercises MacroFactor auto-suggests. At Week 15, switch to Maintenance.
Daily Monitoring (v2.3 CRUSH MODE)
Aggressive FTP gain (2.8W/wk) requires recovery discipline. ~10 min/day total.
Each morning (fasted, before coffee)
HRV — Coros wrist measurement, 30 sec. Log the ms value.
Weight — bathroom scale, after bathroom, 15 sec.
Sleep — Coros auto-tracks. Note total + sleep score.
Subjective — 1–10 energy + 1–10 mood (15 sec each).
Decision rules
HRV > 7-day baseline: train as planned
HRV 5-15% below baseline: train but cap intensity at 80%
HRV >15% below 2+ days: easy day, swap hard for Z2
Weight drop >2 lb in 7 days: eat more — FTP gain needs maintenance fueling
Sleep <6 hr 2+ nights: next session = recovery, not quality
Subjective <5/10 mood 3+ days: Path C → Path A off-ramp consideration
Track in a single Google Sheet or Notion table — one row per day, ~30 sec to fill. Auto-calculate 7-day rolling averages for HRV and weight. Review weekly on Monday before strength session.
Coros / MyWhoosh
FTP retest protocol (v2.3): Wk 6 done 4/16 = 161W (ramp). Wk 10 (5/12-5/18) = 12-MIN CP TEST (mid-block check, less fatiguing). FTP estimate = 12-min avg × 0.90. Target ≥172W. Wk 12 (5/26-6/1) = 20-MIN PROTOCOL (official hard gate). 15-min progressive warmup + 3×1 min activation + 5 min easy + 20 min ALL-OUT + 15 min cool-down. FTP = 20-min avg × 0.95. Captures 5-7W of "hidden" gains vs ramp test. HARD GATE target ≥185W (CRUSH) / ≥175W (sub-3 Columbia floor). v2.3 review: split into two protocols because testing twice in 2 weeks measures the test, not adaptation.
HR Zones (Karvonen, Max HR 171, Resting HR 54)
Zone
Name
% HRR
HR Range
Feel
Z1
Recovery
50-60%
112-124
Very easy
Z2
Aerobic
60-70%
124-136
Easy conversation
Z3
Tempo
70-80%
136-148
Comfortably hard
Z4
Threshold
80-90%
148-159
Hard, 3-4 words
Z5
VO2max
90-100%
159-171
Very hard, can't talk
Based on Max HR 171, RHR 54. Retest at FTP test weeks.
Heat Acclimation Protocol (v2.3)
Wk 11 (5/19) — sauna starts (v2.3 moved up from Wk 15). 15–20 min post-ride, 4×/wk. Fastest evidence-based protocol (Scoon 2007, Stanley 2015) — doesn't add training stress. Hydrate during + 500-800 mL post-sauna.
Wk 13–14 — passive heat on bike: fan off first 15 min of Wed warmup.
Wk 15+ — full protocol: fan off first 20 min of Wed warmup, 1 outdoor run/wk in heat, sauna ongoing.
Race week — pre-cooling: ice towel on neck during transition setup, cold water sips 30 min before swim.
T2 ice trick: grab ice, stuff under tri top at back of neck. Buys 10-15 min of reduced HR drift on run.
HRT note: spironolactone reduces sweat-rate adaptation — heat protocol is more critical, not less.
Open Water & Wetsuit Timeline
When
Action
By Week 12 (early June)
Buy wetsuit. Full-sleeve.
Week 13
Open water swim #1 — wetsuit practice, sighting, murky water