Training log
The 2026 block, from Strava. It starts with the day that mattered most. No maps, no locations.
26.27 mi
in Calella
Oct 3, a storm cancelled the Barcelona race. On Oct 4 I ran 26.27 miles anyway. This is my heart rate the whole way: 4 h 9 min moving, 162 bpm average.
By the numbers, Apr 20 to Oct 18
1,652 miles.
226 sessions. One cancelled race.
Cumulative distance
11.8 full-distance triathlons, by distance.
1,652 miles of swimming, riding and running since Apr 20. A full-distance triathlon is a 2.4-mile swim, 112-mile ride and 26.2-mile run; the dashed lines mark every two.
- Swim 36 mi
- Run 361 mi
- Ride 1,255 mi
Bike efficiency
+23% faster at the same heart rate.
Outdoor rides over 10 miles: average speed per 100 beats per minute, monthly median. June: 11.27 mph. October: 13.9 mph.
Small sample: 29 rides in total, 8, 5, 12, 4 per month. Wind, hills and route change the number, so read it as a trend, not a lab test. No qualifying rides in May or July.
| Month | mph per 100 bpm | Rides |
|---|---|---|
| June | 11.27 | 8 |
| August | 13.07 | 5 |
| September | 13.67 | 12 |
| October | 13.9 | 4 |
- 34,065 ftclimbed, or 1.17 Everests
- 17 dayslongest streak in a row, Apr 20 to May 6
- 97%of sessions tracked with heart rate
Show weekly load as a table
| Week of | Relative Effort |
|---|---|
| Apr 20 | 828 |
| Apr 27 | 568 |
| May 4 | 404 |
| May 11 | 318 |
| May 18 | 898 |
| May 25 | 531 |
| Jun 1 | 669 |
| Jun 8 | 664 |
| Jun 15 | 633 |
| Jun 22 | 690 |
| Jun 29 | 305 |
| Jul 6 | 253 |
| Jul 13 | 314 |
| Jul 20 | 191 |
| Jul 27 | 357 |
| Aug 3 | 159 |
| Aug 10 | 866 |
| Aug 17 | 996 |
| Aug 24 | 411 |
| Aug 31 | 772 |
| Sep 7 | 897 |
| Sep 14 | 466 |
| Sep 21 | 307 |
| Sep 28 | 562 |
| Oct 5 | 283 |
| Oct 12 | 600 |
From Strava, computed when the site is built. No maps or locations. How sessions are counted: every swim, ride, run and strength activity on Strava dated Apr 20, 2026 or later, when the training block began, excluding entries under 2 minutes (watch tests). This one count is used everywhere on the site.
The last 31 days
- Swim
- Bike
- Run
- Strength
Oct 4: Barcelona cancelled. I ran 26.27 mi in Calella anyway.
- 310.9 mibike
- 59 mirun
- 6,263 ydswim
- 29.3 hmoving time
Show this chart as a table
| Date | Swim | Bike | Run | Strength | Total |
|---|---|---|---|---|---|
| Sep 18 | – | 93 | – | – | 93 |
| Sep 19 | – | 195 | – | – | 195 |
| Sep 20 | – | – | 59 | – | 59 |
| Sep 21 | 22 | – | – | – | 22 |
| Sep 22 | – | – | – | – | – |
| Sep 23 | – | 55 | – | – | 55 |
| Sep 24 | – | 47 | – | – | 47 |
| Sep 25 | – | – | 16 | – | 16 |
| Sep 26 | – | 103 | 33 | – | 136 |
| Sep 27 | 33 | – | – | – | 33 |
| Sep 28 | – | – | – | – | – |
| Sep 29 | – | – | – | – | – |
| Sep 30 | – | – | – | – | – |
| Oct 1 | – | – | – | – | – |
| Oct 2 | – | 43 | – | – | 43 |
| Oct 3 | 12 | – | – | – | 12 |
| Oct 4 (Barcelona cancelled) | – | – | 249 | – | 249 |
| Oct 5 | – | – | – | – | – |
| Oct 6 | – | – | – | – | – |
| Oct 7 | – | – | – | – | – |
| Oct 8 | – | – | – | – | – |
| Oct 9 | 41 | – | – | – | 41 |
| Oct 10 | – | 183 | – | – | 183 |
| Oct 11 | – | – | 54 | – | 54 |
| Oct 12 | 19 | – | – | – | 19 |
| Oct 13 | – | 46 | – | – | 46 |
| Oct 14 | – | – | 84 | – | 84 |
| Oct 15 | – | 86 | – | – | 86 |
| Oct 16 | 18 | – | – | 60 | 78 |
| Oct 17 | – | 194 | 15 | – | 209 |
| Oct 18 | – | – | – | – | – |
21 of 31 days have a session. Days are counted in Eastern time. From Strava, synced hourly. Activities under 2 minutes (11, such as watch tests) are left out.
Milestones
- Apr 20
Training block begins
The full-distance triathlon block starts. Earlier Strava activity isn’t counted in the block totals.
- May 6
17-day streak
Trained every day for the first 17 days.
- Aug 15
Longest ride: 112.39 mi
The full bike distance, done in training.
- Aug 20
Longest swim: 4,284 yd
Logged as “First 2.4 miles straight.”
- Oct 3
Race cancelled
A severe storm warning cancels the Barcelona race the day before.
- Oct 4
Longest run: 26.27 mi
Calella, on what would have been race day.
Training block since Apr 20
- 226sessions (see how they’re counted above)
- 216 htraining time
- 133 of 182days with training
Show weekly hours as a table
| Week of | Hours | Training days |
|---|---|---|
| Apr 20 | 11.2 | 7 of 7 |
| Apr 27 | 8.7 | 7 of 7 |
| May 4 | 9 | 6 of 7 |
| May 11 | 4.8 | 4 of 7 |
| May 18 | 10.1 | 6 of 7 |
| May 25 | 9.8 | 6 of 7 |
| Jun 1 | 7.8 | 6 of 7 |
| Jun 8 | 10.4 | 7 of 7 |
| Jun 15 | 9.7 | 4 of 7 |
| Jun 22 | 14 | 6 of 7 |
| Jun 29 | 5.2 | 3 of 7 |
| Jul 6 | 4.8 | 4 of 7 |
| Jul 13 | 1.9 | 2 of 7 |
| Jul 20 | 2.7 | 1 of 7 |
| Jul 27 | 8 | 5 of 7 |
| Aug 3 | 2.7 | 4 of 7 |
| Aug 10 | 16.3 | 7 of 7 |
| Aug 17 | 14 | 6 of 7 |
| Aug 24 | 5.9 | 6 of 7 |
| Aug 31 | 13.4 | 7 of 7 |
| Sep 7 | 14 | 5 of 7 |
| Sep 14 | 8.4 | 6 of 7 |
| Sep 21 | 5.2 | 6 of 7 |
| Sep 28 | 5.1 | 3 of 7 |
| Oct 5 | 4.6 | 3 of 7 |
| Oct 12 | 8.7 | 6 of 7 |
Recent sessions
| Date | Sport | Session | Distance | Time | Avg HR | Avg power |
|---|---|---|---|---|---|---|
| Oct 17 | Ride | Lunch Ride | 63.31 mi | 3h 14m | 140 | 174 W |
| Oct 17 | Run | Afternoon Run | 1.53 mi | 15m | 139 | 313 W |
| Oct 16 | Strength | Morning Weight Training | – | 1h 00m | 108 | – |
| Oct 16 | Swim | Afternoon Swim | 1,000 yd | 18m | 124 | – |
| Oct 15 | Ride | Afternoon Ride | 30.01 mi | 1h 26m | 145 | 193 W |
| Oct 14 | Run | Afternoon Run | 10.25 mi | 1h 24m | 156 | 373 W |
| Oct 13 | Ride | Afternoon Ride | 15.8 mi | 46m | 150 | 199 W |
| Oct 12 | Swim | Evening Swim | 1,125 yd | 19m | 135 | – |
| Oct 11 | Run | Afternoon Run | 7.55 mi | 54m | 171 | 416 W |
| Oct 10 | Ride | Evening Ride | 53.68 mi | 3h 03m | 133 | 163 W |
Show 30 earlier sessions
| Date | Sport | Session | Distance | Time | Avg HR | Avg power |
|---|---|---|---|---|---|---|
| Oct 9 | Swim | Night Swim | 2,100 yd | 41m | 118 | – |
| Oct 4 | Run | Afternoon Run | 26.27 mi | 4h 09m | 162 | 309 W |
| Oct 3 | Swim | Morning Swim | 508 yd | 12m | 99 | – |
| Oct 2 | Ride | Lunch Ride | 12.58 mi | 43m | 139 | 147 W |
| Sep 27 | Swim | Warmup | 430 yd | 8m | 152 | – |
| Sep 27 | Swim | Punch training 🥊 | 1,006 yd | 22m | 129 | – |
| Sep 27 | Swim | Cooldown swim | 94 yd | 3m | 145 | – |
| Sep 26 | Ride | Call us the Green Reapers | 32.38 mi | 1h 43m | 138 | 163 W |
| Sep 26 | Run | Race pace check | 4.1 mi | 33m | 159 | 373 W |
| Sep 25 | Run | Afternoon Run | 2.26 mi | 16m | 159 | 413 W |
| Sep 24 | Ride | Evening Ride | 12.82 mi | 47m | 122 | 124 W |
| Sep 23 | Ride | Evening Ride | – | 55m | 137 | – |
| Sep 21 | Swim | Afternoon Swim | –distance hidden (watch error) | 22m | 124 | – |
| Sep 20 | Run | Start of taper week shock the body | 7.01 mi | 59m | 161 | 348 W |
| Sep 19 | Ride | Morning Ride | 60.47 mi | 3h 15m | 139 | 149 W |
| Sep 18 | Ride | Morning Ride | 29.84 mi | 1h 33m | 130 | 160 W |
| Sep 17 | Swim | Evening Swim - 18 days from race day | 950 yd | 18m | 121 | – |
| Sep 16 | Ride | Afternoon Ripper | 21.55 mi | 1h 00m | 158 | 197 W |
| Sep 16 | Ride | Afternoon Ride | 5.92 mi | 21m | 142 | 119 W |
| Sep 15 | Ride | Morning Ride | 14.83 mi | 56m | 115 | 115 W |
| Sep 13 | Run | Evening Run | 18.07 mi | 2h 55m | 153 | 305 W |
| Sep 12 | Ride | Full IM sim ✅ 112mi PR by 1.5 hours | 112.15 mi | 5h 46m | 139 | 158 W |
| Sep 12 | Run | Full IM sim day complete ✅ | 6.33 mi | 1h 01m | 154 | 306 W |
| Sep 11 | Swim | Morning race Swim - 23 days to IM Barcelona | 4,200 yd | 1h 21m | 138 | – |
| Sep 10 | Ride | Morning Ride | 31.57 mi | 1h 36m | 137 | 166 W |
| Sep 9 | Swim | Afternoon Swim | 975 yd | 19m | 138 | – |
| Sep 9 | Ride | Battle of the bugs 🦟 | 19.07 mi | 1h 03m | 131 | 139 W |
| Sep 6 | Run | Lunch Run | 12.01 mi | 1h 57m | 139 | 305 W |
| Sep 5 | Ride | Century Morning Ride 🔥 🔥 🔥 | 101.18 mi | 5h 20m | 139 | 174 W |
| Sep 5 | Run | Brick from hell 🧱 | 3 mi | 30m | 158 | 308 W |