Training

Strava + Apple Health → GPT-4.1 coach. Everything self-hosted.

#MihiContraMe →

YTD

Sessions Distance Time Elevation Calories
299 9856.1 km 439h 21m 26932 m 282369 kcal
0.59 ACWR
Undertraining Acute 15.0 · Chronic 25.5 (daily avg suffer score)

Gear

BikeSessionskm
HoneyBadger 36 2342.1 km
Hoops 33 1294.4 km
Holly Grail 15 1195.7 km
ErgBike C2 25 533.7 km
TheMule 2 62.7 km
Commuter 1 52.0 km

HR & HRV — last 90 days

Resting heart rate and HRV (SDNN) with daily training load overlay.

Weekly training — 12 months

km per week with average heart rate and HRV trend lines.

Fitness — CTL / ATL / Form

Chronic Training Load (42d), Acute Training Load (7d) and Form (TSB = CTL − ATL). Computed from suffer score.

This week

This week12-mo avgvs avg
Sessions98.0 +12.5%
Distance194.5 km246.5 km -21.1%
Time7h 43m10h 48m -28.6%
Elevation232 m571 m -59.4%
Avg HR101 bpm116 bpm -12.9%
Avg HRV27.6 ms38.0 ms -27.4%
Load105398.8 -73.7%
Avg Power 152 W 158 W -4.3%

AI coaching insights

  • activity 2026-09-22

    **Today's Activity** - Today’s walk (distance: 368m, avg HR: 72.3, suffer score: 0) is far below your typical cycling and walk training load, intensity, and duration; it’s a recovery-level effort. - Heart rate is well below your weekly average (112 bpm), no power/cadence data as expected for walking, and no signs of high exertion or stress in any metric. - Positive: You kept this truly easy. No concerns—this is an ideal recovery activity. **Weekly Load & Trends** - Weekly load is 83, which is very low compared to your recent training (weekly suffer score past 7d: 105 and 28d: 4281). - You are in recovery/maintenance phase, not building; load is well below normal with no spikes or abrupt drops—consistent with a planned down week. **Recovery Recommendation** - HRV (34.1) and resting HR (55) are moderate and steady; no clear sign of excess fatigue or poor recovery. - Maintain easy effort or full rest tomorrow; do not resume high intensity or volume until load ramps up gradually and metrics are trending upwards.

  • activity 2026-09-26

    **Today's Activity** - Today's session was a short, easy walk (109m, ~27 minutes), well below their typical ride efforts; walking is infrequent based on past data. - HR (avg 73.7 bpm) was well below their usual riding avg (112.4 bpm), no power or cadence data, suffer score was 0 vs recent ride avg of ~159—confirming negligible intensity. - Positive: kept intensity low, good for active recovery; no performance concerns. **Weekly Load & Trends** - Weekly load is 83, significantly lower than recent 28-day (4281) and 7-day (105) suffer scores, indicating a reduced or recovering week. - Recent trend: a drop in training stress—athlete is in a maintenance or recovery phase, not building. - No concerning acute spikes or drops; load reduction appears intentional. **Recovery Recommendation** - HRV is moderately low (34), with resting HR slightly above athletic baseline (55); with low load this week, recovery is trending positively. - Recommendation: favor another easy day or a rest day tomorrow—avoid high intensity until HRV improves and fatigue is fully cleared.

  • activity 2026-09-26

    **Today's Activity** - This was a light walk (109m, 96s moving, HR avg 73.7) — well below their usual cycling or running intensity and duration; mileage and effort are negligible compared to normal training. - HR much lower than weekly avg (74 vs 112), no power/cadence, suffer score is zero; this was purely for recovery or light movement, not training stimulus. - Positive: Good to see light movement for recovery; no concerns. **Weekly Load & Trends** - Weekly load is 83, well below the 28-day average (4281/4 = 1070/wk), indicating a major drop and a likely recovery/taper week. - Clear reduction from usual training—currently in a recovery phase, not building. **Recovery Recommendation** - HRV is on the low side (34), resting HR elevated relative to historical averages, and training load is low. - Advise another easy/recovery day or total rest tomorrow; full training intensity not recommended yet.

  • activity 2026-09-25

    **Today's Activity** - Today's 33.3 km ride (5400s, avg HR 108.3 bpm, avg watts 80.1, cadence 67.1, suffer score 22) is lower intensity and volume than your typical ride (avg ~21 km/ride, avg HR 112, suffer score ~159 per ride). - HR, power, cadence, and suffer score all below your usual averages; this was an easy session. - Positive: Good adherence to an easy ride; no concerning metrics. Negative: None, unless you were targeting intensity. **Weekly Load & Trends** - Weekly load is 83, which is slightly higher than your recent average (~76/week), but in line with a gradual build; no major spikes or drops. - You're trending upward, building load moderately. **Recovery Recommendation** - HRV is on the low side (31.5), and resting HR is typical (52), but with a higher weekly load and lower HRV, recommend easy or rest tomorrow for optimal recovery.

  • activity 2026-09-23

    **Today's Activity** Session was a typical steady-state effort: 2 hours at 171.8W, 117.6 bpm, 71 rpm. All metrics (HR, power, cadence, suffer score 27) were below your recent averages, indicating a moderate session with low strain—good aerobic work, no concerns. **Weekly Load & Trends** Current weekly load (83) is steady, not unusually high or low; 7-day (243) and 28-day (4,281) Suffer Scores show consistent training. No sharp spikes or drops—you're holding a maintenance pattern, not building or tapering. **Recovery Recommendation** HRV (31.5) and resting HR (52) are typical and not suppressed, but the moderate load and today's low strain indicate you're handling volume well. Go easy or consider active recovery tomorrow—no need to push hard.

Activities this week

W39 9×  ·  194.5 km  ·  7h 42m  ·  105 load
MonTueWedThuFriSatSun
V.Ride 56.4 km 167.5w
Row 10.0 km 162.7w
V.Ride 22.3 km 185.9w
V.Ride 15.0 km 146.9w
Walk 0.4 km
V.Ride 56.9 km 171.8w
Ride 33.3 km 80.1w
Walk 0.1 km
Walk 0.1 km
All activities 272 sessions · 7841.6 km · 286h 12m · 10356 load
W39 4×  ·  150.6 km  ·  5h 20m  ·  68 load
MonTueWedThuFriSatSun
V.Ride 56.4 km 167.5w
V.Ride 15.0 km 146.9w
V.Ride 22.3 km 185.9w
V.Ride 56.9 km 171.8w
W38 8×  ·  125.5 km  ·  4h 47m  ·  75 load
MonTueWedThuFriSatSun
V.Ride 53.1 km 141.6w
V.Ride 15.0 km 95.1w
V.Ride 23.2 km 197.2w
V.Ride 11.7 km 95.3w
V.Ride 2.6 km 175.7w
V.Ride 5.5 km 140.2w
V.Ride 1.1 km 67.4w
V.Ride 13.3 km 147.7w
W37 2×  ·  38.3 km  ·  1h 25m  ·  35 load
MonTueWedThuFriSatSun
V.Ride 15.0 km 102.4w
V.Ride 23.3 km 199.0w
W36 6×  ·  159.8 km  ·  5h 52m  ·  90 load
MonTueWedThuFriSatSun
V.Ride 40.8 km 146.9w
V.Ride 15.0 km 113.2w
V.Ride 20.9 km 220.3w
V.Ride 57.0 km 172.9w
V.Ride 15.0 km 118.5w
V.Ride 11.1 km 154.9w
W35 5×  ·  59.6 km  ·  2h 18m  ·  42 load
MonTueWedThuFriSatSun
V.Ride 20.0 km 104.0w
V.Ride 14.0 km 222.4w
V.Ride 15.0 km 146.7w
V.Ride 0.1 km 237.3w
V.Ride 10.5 km 157.6w
W34 3×  ·  47.9 km  ·  1h 38m  ·  31 load
MonTueWedThuFriSatSun
V.Ride 15.0 km 169.9w
V.Ride 17.9 km 212.3w
V.Ride 15.0 km 173.7w
W33 2×  ·  32.3 km  ·  1h 11m  ·  13 load
MonTueWedThuFriSatSun
V.Ride 15.0 km 115.9w
V.Ride 17.3 km 203.9w
W32 2×  ·  22.3 km  ·  49m  ·  13 load
MonTueWedThuFriSatSun
V.Ride 5.8 km 88.6w
V.Ride 16.5 km 187.9w
W31 4×  ·  54.8 km  ·  2h 04m  ·  28 load
MonTueWedThuFriSatSun
V.Ride 15.0 km 135.3w
V.Ride 17.3 km 203.0w
V.Ride 15.0 km 130.7w
V.Ride 7.5 km 147.8w
W25 8×  ·  140.8 km  ·  5h 04m  ·  67 load
MonTueWedThuFriSatSun
V.Ride 54.4 km 151.5w
V.Ride 15.0 km 148.8w
V.Ride 11.5 km 195.1w
V.Ride 5.4 km 257.2w
V.Ride 15.0 km 200.0w
V.Ride 15.0 km 162.6w
V.Ride 9.5 km 153.1w
V.Ride 15.0 km 210.6w
W24 8×  ·  212.5 km  ·  7h 32m  ·  117 load
MonTueWedThuFriSatSun
V.Ride 56.1 km 165.1w
V.Ride 30.1 km 149.9w
V.Ride 29.1 km 183.6w
V.Ride 58.6 km 188.7w
V.Ride 15.0 km 164.2w
V.Ride 0.3 km 24.1w
V.Ride 8.3 km 176.0w
V.Ride 15.0 km 164.5w
W23 5×  ·  201.2 km  ·  7h 12m  ·  317 load
MonTueWedThuFriSatSun
V.Ride 56.7 km 169.3w
V.Ride 15.0 km 145.8w
V.Ride 17.9 km 184.0w
V.Ride 54.5 km 152.0w
V.Ride 57.1 km 173.7w
W22 4×  ·  148.9 km  ·  5h 12m  ·  223 load
MonTueWedThuFriSatSun
V.Ride 58.3 km 184.7w
V.Ride 15.0 km 153.0w
V.Ride 18.2 km 190.9w
V.Ride 57.4 km 177.6w
W21 6×  ·  146.1 km  ·  5h 23m  ·  190 load
MonTueWedThuFriSatSun
V.Ride 30.0 km 155.4w
V.Ride 15.0 km 124.2w
V.Ride 18.2 km 194.3w
V.Ride 54.8 km 154.1w
V.Ride 15.0 km 153.7w
V.Ride 13.1 km 165.1w
W20 5×  ·  206.0 km  ·  7h 11m  ·  351 load
MonTueWedThuFriSatSun
V.Ride 56.4 km 167.8w
V.Ride 15.0 km 153.7w
V.Ride 18.3 km 199.1w
V.Ride 57.9 km 180.8w
V.Ride 58.4 km 185.2w
W19 4×  ·  50.6 km  ·  1h 57m  ·  86 load
MonTueWedThuFriSatSun
V.Ride 6.5 km 129.8w
V.Ride 16.8 km 190.4w
V.Ride 15.0 km 142.3w
V.Ride 12.3 km 151.0w
W18 1×  ·  58.1 km  ·  2h 00m  ·  111 load
MonTueWedThuFriSatSun
V.Ride 58.1 km 182.5w
W17 2×  ·  107.7 km  ·  4h 00m  ·  127 load
MonTueWedThuFriSatSun
V.Ride 50.8 km 122.8w
V.Ride 56.9 km 172.0w
W16 4×  ·  127.5 km  ·  4h 32m  ·  232 load
MonTueWedThuFriSatSun
V.Ride 50.0 km 172.4w
V.Ride 50.0 km 178.0w
V.Ride 15.0 km 147.2w
V.Ride 12.5 km 164.0w
W14 3×  ·  128.3 km  ·  4h 26m  ·  208 load
MonTueWedThuFriSatSun
V.Ride 50.0 km 174.9w
V.Ride 28.3 km
V.Ride 50.0 km 190.4w
W13 5×  ·  183.2 km  ·  6h 24m  ·  358 load
MonTueWedThuFriSatSun
V.Ride 50.0 km 175.4w
V.Ride 15.0 km 154.9w
V.Ride 18.2 km 189.6w
V.Ride 50.0 km 177.2w
V.Ride 50.0 km 177.1w
W11 1×  ·  50.0 km  ·  1h 46m  ·  57 load
MonTueWedThuFriSatSun
V.Ride 50.0 km 165.5w
W10 1×  ·  50.0 km  ·  1h 44m  ·  67 load
MonTueWedThuFriSatSun
V.Ride 50.0 km
W9 6×  ·  154.4 km  ·  5h 27m  ·  346 load
MonTueWedThuFriSatSun
V.Ride 50.0 km
V.Ride 5.0 km
V.Ride 18.5 km
V.Ride 30.0 km
V.Ride 0.9 km
V.Ride 50.0 km
W8 7×  ·  124.2 km  ·  4h 48m  ·  170 load
MonTueWedThuFriSatSun
V.Ride 50.0 km
V.Ride 10.0 km
V.Ride 18.0 km
V.Ride 16.0 km
V.Ride 0.2 km
V.Ride 15.0 km
V.Ride 15.0 km
W7 6×  ·  198.3 km  ·  7h 01m  ·  477 load
MonTueWedThuFriSatSun
V.Ride 50.0 km
V.Ride 15.0 km
V.Ride 17.7 km
V.Ride 50.0 km
V.Ride 15.6 km
V.Ride 50.0 km
W6 9×  ·  244.6 km  ·  9h 07m  ·  518 load
MonTueWedThuFriSatSun
V.Ride 50.0 km
V.Ride 15.0 km
V.Ride 17.4 km
V.Ride 15.0 km
V.Ride 50.0 km
V.Ride 20.0 km
V.Ride 17.2 km
V.Ride 10.0 km
V.Ride 50.0 km
W5 5×  ·  226.3 km  ·  8h 20m  ·  255 load
MonTueWedThuFriSatSun
V.Ride 50.0 km
V.Ride 50.0 km
V.Ride 26.3 km
V.Ride 50.0 km
V.Ride 50.0 km
W4 6×  ·  303.4 km  ·  11h 08m  ·  479 load
MonTueWedThuFriSatSun
V.Ride 50.0 km
V.Ride 50.0 km
V.Ride 50.0 km
V.Ride 50.0 km
V.Ride 53.4 km
V.Ride 50.0 km
W3 5×  ·  234.4 km  ·  8h 42m  ·  518 load
MonTueWedThuFriSatSun
V.Ride 53.6 km
V.Ride 27.3 km
V.Ride 53.5 km
V.Ride 50.0 km
V.Ride 50.0 km
W2 7×  ·  269.5 km  ·  9h 53m  ·  679 load
MonTueWedThuFriSatSun
V.Ride 54.4 km
V.Ride 35.0 km
V.Ride 0.4 km
V.Ride 15.0 km
V.Ride 54.3 km
V.Ride 55.9 km
V.Ride 54.5 km
W1 7×  ·  234.0 km  ·  8h 30m  ·  421 load
MonTueWedThuFriSatSun
V.Ride 50.0 km
V.Ride 50.0 km
V.Ride 20.0 km
V.Ride 18.7 km
V.Ride 15.0 km
V.Ride 54.0 km
V.Ride 26.3 km
W52 6×  ·  257.9 km  ·  9h 10m  ·  486 load
MonTueWedThuFriSatSun
V.Ride 15.0 km
V.Ride 17.9 km
V.Ride 50.0 km
V.Ride 50.0 km
V.Ride 50.0 km
V.Ride 75.0 km
W51 8×  ·  201.9 km  ·  7h 14m  ·  454 load
MonTueWedThuFriSatSun
V.Ride 15.0 km
V.Ride 17.9 km
V.Ride 50.0 km
V.Ride 15.0 km
V.Ride 20.9 km
V.Ride 50.0 km
V.Ride 15.0 km
V.Ride 18.1 km
W50 7×  ·  263.9 km  ·  9h 30m  ·  369 load
MonTueWedThuFriSatSun
V.Ride 15.0 km
V.Ride 17.6 km
V.Ride 50.0 km
V.Ride 50.0 km
V.Ride 10.0 km
V.Ride 21.3 km
V.Ride 100.0 km
W49 9×  ·  198.7 km  ·  7h 06m  ·  416 load
MonTueWedThuFriSatSun
V.Ride 15.0 km
V.Ride 17.8 km
V.Ride 50.0 km
V.Ride 15.0 km
V.Ride 11.6 km
V.Ride 6.5 km
V.Ride 50.0 km
V.Ride 15.0 km
V.Ride 17.8 km
W47 1×  ·  50.0 km  ·  1h 45m  ·  39 load
MonTueWedThuFriSatSun
V.Ride 50.0 km
W46 7×  ·  156.0 km  ·  5h 32m  ·  208 load
MonTueWedThuFriSatSun
V.Ride 10.0 km
V.Ride 17.4 km
V.Ride 10.0 km
V.Ride 17.9 km
V.Ride 50.0 km
V.Ride 0.7 km
V.Ride 50.0 km
W45 7×  ·  155.5 km  ·  5h 34m  ·  359 load
MonTueWedThuFriSatSun
V.Ride 10.0 km
V.Ride 17.6 km
V.Ride 50.0 km
V.Ride 10.0 km
V.Ride 17.9 km
V.Ride 50.0 km
V.Ride
W44 6×  ·  149.7 km  ·  5h 27m  ·  255 load
MonTueWedThuFriSatSun
V.Ride 10.0 km
V.Ride 15.0 km
V.Ride 50.0 km
V.Ride 10.0 km
V.Ride 14.7 km
V.Ride 50.0 km
W43 4×  ·  129.5 km  ·  4h 42m  ·  165 load
MonTueWedThuFriSatSun
V.Ride 10.0 km
V.Ride 14.7 km
V.Ride 50.0 km
V.Ride 54.8 km
W42 4×  ·  101.6 km  ·  3h 43m  ·  144 load
MonTueWedThuFriSatSun
V.Ride 25.0 km
V.Ride 50.0 km
V.Ride 10.0 km
V.Ride 16.6 km
W41 4×  ·  155.0 km  ·  5h 55m  ·  60 load
MonTueWedThuFriSatSun
V.Ride 25.0 km
V.Ride 50.0 km
V.Ride 30.0 km
V.Ride 50.0 km
W40 4×  ·  205.0 km  ·  7h 30m  ·  87 load
MonTueWedThuFriSatSun
V.Ride 25.0 km
V.Ride 30.0 km
V.Ride 50.0 km
V.Ride 100.0 km
W39 4×  ·  204.5 km  ·  7h 53m  ·  63 load
MonTueWedThuFriSatSun
V.Ride 25.0 km
V.Ride 26.7 km
V.Ride 52.8 km
V.Ride 100.0 km
W38 5×  ·  155.6 km  ·  5h 44m  ·  76 load
MonTueWedThuFriSatSun
V.Ride 25.0 km
V.Ride 28.7 km
V.Ride 20.0 km
V.Ride 30.1 km
V.Ride 51.8 km
W37 2×  ·  75.0 km  ·  2h 41m  ·  16 load
MonTueWedThuFriSatSun
V.Ride 25.0 km
V.Ride 50.0 km
W36 2×  ·  40.0 km  ·  1h 28m  ·  16 load
MonTueWedThuFriSatSun
V.Ride 20.0 km
V.Ride 20.0 km
W35 3×  ·  60.0 km  ·  2h 13m  ·  28 load
MonTueWedThuFriSatSun
V.Ride 20.0 km
V.Ride 20.0 km
V.Ride 20.0 km
W34 2×  ·  40.0 km  ·  1h 29m  ·  7 load
MonTueWedThuFriSatSun
V.Ride 20.0 km
V.Ride 20.0 km
W33 3×  ·  60.0 km  ·  2h 19m  ·  16 load
MonTueWedThuFriSatSun
V.Ride 20.0 km
V.Ride 20.0 km
V.Ride 20.0 km
W32 2×  ·  40.0 km  ·  1h 33m  ·  14 load
MonTueWedThuFriSatSun
V.Ride 20.0 km
V.Ride 20.0 km
W31 1×  ·  20.0 km  ·  47m  ·  8 load
MonTueWedThuFriSatSun
V.Ride 20.0 km
W30 2×  ·  40.0 km  ·  1h 31m  ·  17 load
MonTueWedThuFriSatSun
V.Ride 20.0 km
V.Ride 20.0 km
W29 2×  ·  40.0 km  ·  1h 30m  ·  9 load
MonTueWedThuFriSatSun
V.Ride 20.0 km
V.Ride 20.0 km
W28 1×  ·  20.0 km  ·  48m  ·  7 load
MonTueWedThuFriSatSun
V.Ride 20.0 km
W27 4×  ·  67.4 km  ·  2h 33m  ·  29 load
MonTueWedThuFriSatSun
V.Ride 20.0 km
V.Ride 20.0 km
V.Ride 27.2 km
V.Ride 0.2 km
W42 3×  ·  75.0 km  ·  2h 50m  ·  34 load
MonTueWedThuFriSatSun
V.Ride 25.0 km 138.5w
V.Ride 25.0 km 132.5w
V.Ride 25.0 km 141.9w
W41 3×  ·  75.0 km  ·  2h 46m  ·  49 load
MonTueWedThuFriSatSun
V.Ride 25.0 km 151.5w
V.Ride 25.0 km 138.3w
V.Ride 25.0 km 152.3w
W40 1×  ·  25.0 km  ·  58m  ·  11 load
MonTueWedThuFriSatSun
V.Ride 25.0 km 126.6w
W39 4×  ·  88.4 km  ·  3h 17m  ·  47 load
MonTueWedThuFriSatSun
V.Ride 25.0 km 138.0w
V.Ride 25.0 km 145.2w
V.Ride 25.0 km 154.0w
V.Ride 13.4 km 143.3w
W38 3×  ·  75.0 km  ·  2h 48m  ·  38 load
MonTueWedThuFriSatSun
V.Ride 25.0 km 136.2w
V.Ride 25.0 km 137.6w
V.Ride 25.0 km 152.1w
W37 4×  ·  75.1 km  ·  2h 51m  ·  38 load
MonTueWedThuFriSatSun
V.Ride 25.0 km 135.4w
V.Ride 0.1 km 89.1w
V.Ride 25.0 km 139.9w
V.Ride 25.0 km 131.0w
W36 3×  ·  49.8 km  ·  1h 56m  ·  22 load
MonTueWedThuFriSatSun
V.Ride 25.0 km 138.7w
V.Ride 13.2 km 138.4w
V.Ride 11.6 km 92.6w