Features · Multi-sport
One athlete, three sports.
Why single-sport models fail triathletes
If you’re a pure cyclist on TrainingPeaks, or a pure runner on Runna, the single-discipline model works fine. The moment you add a second sport — even recreationally — those tools start lying to you:
- Your cycling fitness number (CTL-bike) looks healthy, but the real combined CTL is 40% higher, and you’re overreached.
- Your run volume is conservative, but cumulated with the Saturday long ride you’re stacking two hard days back to back.
- Your swim is “easy” on its own, but it’s the third session in 24 hours and nobody is tracking the total.
- Monotony per-sport looks fine, combined monotony is 2.3, and injury risk is real.
This is the default problem for every amateur triathlete and every runner who commutes by bike. Our model fixes it.
What combined load actually means
We compute a single TSS per activity, regardless of sport, using whichever method your data supports:
- Cycling: Coggan power-TSS from normalized power and FTP. Falls back to HR if power is missing.
- Running: Friel rTSS from pace and threshold pace. Falls back to HR-based TRIMP otherwise.
- Swimming: sTSS from 100m pace against threshold pace.
- Fallback:Banister-style TRIMP on HR if pace/power aren’t available.
Once we have a single TSS per activity, the classical Banister model gives us combined CTL (42-day EWMA), ATL (7-day EWMA), and TSB as derived values. These are the numbers the coach actually reasons on.
Cross-sport rules we detect
Two dedicated rule-engine checks are specific to multi-sport athletes:
DISCIPLINE_NEGLECT
If you’ve declared two or more primary sports and one of them has zero activities in the last 14 days, the coach flags it. Your next block will include the neglected sport — not because the model wants to, but because the rule engine forces it and the system prompt makes ignoring it a bug.
CROSS_SPORT_LOAD_ADD
When your last 7-day ATL is ≥1.3× the previous week, and at least 20% of that new load comes from a sport that was under 5% of the prior two weeks, we flag it. Textbook injury pattern: runner starts cycling, cyclist adds running. The coach will either redistribute or force recovery.
Plus all the single-sport rules — acute spikes, prolonged negative TSB, monotony watch — run on combined load, not per-sport. That’s the difference.
Plans that actually balance three sports
When the coach prescribes the next block, the weekly template must include at least one workout per declared primary sport, unless your available time is severely constrained. A triathlete with zero swim sessions in the plan is a bug the system catches.
48-hour spacing applies across sports too. Tuesday threshold ride + Wednesday hard run? The coach won’t prescribe that. If you did it anyway and rated the run “too hard”, the next plan will notice.
Read next
For triathletes→
How we balance bike, run, and swim for age-group racers.
Weekly review→
What a triathlete’s Sunday review looks like.
Training monotony→
Why varied load matters more for multi-sport athletes.
CTL, ATL, TSB→
The three numbers — explained without the jargon.
vs TrainingPeaks→
What a human-coach platform gets you, and what it doesn’t.
vs Intervals.icu→
Great data, no interpretation. We handle the coach part.
Train like one athlete.
Connect Strava, and the three sports become one honest read — no more juggling spreadsheets.