Built an AI coach for triathletes that reaches out to you - not the other way around

Today’s update (2026/05/13):

  • you can now add custom iCal subscriptions
  • Apple Health sleep numbers got sharper. Apple Health sleep is now computed from sleep stages (deep / light / REM / awake) instead of time-in-bed, so the number the coach sees matches what your watch shows you in the morning. Terra-backed providers (Polar, COROS, Zwift, TrainerRoad, TrainingPeaks) stream stage-level sleep through the same path now too.
  • Telegram linking fixed on desktop. The dashboard’s “Open Telegram” button no longer dies on desktop browsers without the Telegram app installed
  • Claude does not require a paid plan anymore to connect a MCP server
  • Plan tool dedup. Fixed a bug where the coach could create the same workout twice in your plan during a single rebalance.

As always, more updates coming tomorrow! :slight_smile:

1 Like

Today’s update (2026/05/14):

  • Your athletedata plan is now subscribable as an iCal feed. Open /plan, hit “Subscribe to plan”, paste the URL into Apple Calendar, Google Calendar, or anything that takes webcal. Sessions show up on your calendar / watch and refresh as the coach rebalances.

  • Scientific knowledge base for the coach. Seeded 20 reference docs (polarized, Norwegian method, marathon periodization + taper, brick sessions, BQ standards, zone derivation, sex-specific training, and more) the coach can now pull from.

  • Plan tool fix. Patched a rare bug where a model glitch could leak raw XML tags into a session’s title.

As always, more updates coming tomorrow! :slight_smile:

1 Like

Today’s update (2026/05/19):

The one you’ve asked for most is live: planned workouts now push straight to your watch.

Structured intervals, work/recovery splits, watts or pace targets. Your athletedata plan lands on your wrist. Press start, the watch walks you through it. No phone between reps, no exporting .fit files by hand.

How to turn it on

  • Garmin: Integrations → Garmin tile → “Enable workout push” → approve the second Garmin authorization. Done.

  • COROS: Auto-enabled for new connections. Older ones: open the tile and hit “Reconnect” once.

  • Suunto / Polar / Wahoo: Enable “Mirror planned workouts to my Intervals.icu calendar” on the intervals.icu tile, then make sure your watch is connected with workout push on inside intervals.icu.

Every plan change pushes automatically from here. Pause anytime from the device tile.


One more thing.

athletedata just went through a little merger.
Until last week I was running this solo. From today, there are two of us.

Meet Daniel: sub-3 marathoner, Ironman finisher, 70.3 Worlds qualifier. We’ve been building in the same space from different angles and decided to join forces.
He’s already been reaching out to many of you directly; if he hasn’t pinged you yet, he probably will soon.

If anything in this release feels great, off, or missing → pls tell us. We’ll be quietly grateful, and quickly back at the keyboard.

Happy training, Julian & Daniel :slightly_smiling_face:

2 Likes

Update (19th - 22nd May 2026):

I´ll switch to a bi-weekly update cadence to keep this thread a little cleaner and not spammy.

Activity detail page is live.**

  • Tap any workout in your feed to open a modal with inline editing on everything: title, sport, distance, duration, notes, feel.
  • Delete is soft: it greys the activity in your feed with an undo, and CTL / ATL / TSB recompute correctly.

Watch push, way more reliable.

  • Fixed a pile of provider quirks behind the intervals.icu mirror: swim time-encoding, distance + HR targets, COROS no longer rejecting interval blocks (it doesn’t speak PlannedWorkoutRepeatStep), cycling pushes that were silently 424’ing because we were sending two power targets per step.
  • Re-pushes are now deduped, so rebalancing your week doesn’t spam your watch with “new” workouts.
  • Running pace targets carry a “Pace” suffix so your watch shows the pace band instead of HR.

Sleep tracking, rebuilt.

  • New sleep_periods architecture clusters overlapping sleep windows from different sources (Apple Watch + WHOOP, Oura + Garmin) so we pick one canonical window per night instead of summing them.

Coaching guardrails tightened.

  • The morning brief waits until your watch has actually synced a sleep period for today before firing, instead of writing about a stale night.
  • Plans get audited against your weekly volume target
  • Workout descriptions from your training plan flow into the coach’s context, so it knows what the session is supposed to feel like before responding.

We’ve been doing a ton of feedback calls lately, and honestly, hearing how happy you are with AthleteData - and how much it’s helping your day-to-day training - has us more excited than ever.

As always, more updates coming soon - Happy Training! :slightly_smiling_face:

2 Likes

Update (23rd – 25th May 2026):
Mostly a reliability-and-quality batch this time - the coach getting sharper and more dependable.

Coach reliability, fixed.

  • The coach no longer goes quiet too long: there’s now a minimum check-in floor, plus an override that breaks silence the moment your recovery or readiness flags something.

Smarter, less noisy coaching.

  • “Ease off” calls are now anchored to your own baseline, not generic thresholds - a number that’s normal for you won’t get flagged.
  • Holds more recent conversation in memory, so it loses the thread less often.
  • Cleaner replies: no more ASCII charts, tables, or art.

Watch push.

  • HR targets now push as your device zones (% of max), so your watch shows your own Garmin zones instead of raw bpm.
  • More reliable planned-workout deletion, so rebalancing your week re-pushes cleanly.

Garmin analytics, more accurate.

  • We now compute training load for Garmin activities that don’t report it, and prefer moving time over elapsed - so your CTL / ATL / TSB are right.

As always, more coming soon - Happy Training! :slightly_smiling_face:

1 Like

I am checking it out now!

Just FYI first time I tried to link Training Peaks I got this message “Couldn’t connect TrainingPeaks. The provider didn’t accept the connection. Common causes: 2FA enabled on your account, signed up with Google/Apple, wrong password, or a recent password change.” I did make my account via google. I just hit retry and it worked.

will give more feedback as I play around with it.

Thanks!

1 Like

thanks for the feedback so far - looking into the trainingpeaks connection issue you were facing.

Looking forward to your thoughts once you played around with it!! :slightly_smiling_face:

only synced 1 workout from yesterday… AI suggested disconnecting and reconnecting… disconnected and tried to connect again- once prompted to login to TP said “bad request”. Tried again and the error that I previously mentioned in first post came up again. 3rd time was a charm connecting… still waiting to see if it pulls in the historical data.

1 Like

I signed up for the 45-day trial, but I suddenly received an email stating that a $300 charge from AthleteData was declined.

I had to delete my account.

1 Like

Hey Ruben, sorry for the surprise here, that’s a frustrating way to find out.
To be clear: the charge was declined, so nothing was actually taken from your card.

The 45-day trial rolls into the annual plan (which you selected during sign up) when it ends, which is where the $300 came from.
That transition clearly wasn’t visible enough to you, and that’s on us to fix.
If you’d ever want to come back, happy to set you up with a clean trial - and either way thanks for flagging it, genuinely helps us make the billing clearer.

1 Like

Sorted it - the problem was on our side, not your reconnects. Your full TrainingPeaks history is now in, not just yesterday’s workout. Have a look and shout if anything’s missing.

1 Like

One more interesting thing with the AI coach — I named mine Aileen — I let it read MyFitnessPal and it really stays on me about getting enough protein and carbs. The protein especially has been challenging for me because I’m a very carb-focused (and occasionally overly snack-y) endurance athlete who doesn’t eat a lot of meat. I did question the basis for calling for so much protein, and got decently sourced and credible answers.

2 Likes

This made my day, Sharon. The protein focus isn’t random! carb-focused endurance athletes are the group most likely to under-eat it, and it’s one of the highest-leverage things for recovery and holding muscle through a heavy block. The general guidance for athletes lands around 1.2–2.2 g/kg/day, higher than most people expect, which is why it keeps nagging. And glad it gave you real sources when you questioned it… it’s supposed to defend its reasoning, not just assert.

1 Like

Update (26th - 28th May 2026):
Another reliability-and-quality batch - connections that heal themselves, and a coach that’s harder to fool.

Connections that fix themselves.

  • If a connected app’s login silently expires, we now catch it and recover automatically instead of going quiet - and if the provider truly revokes access, we cleanly disconnect and tell you, so you’re never staring at stale data without knowing.

  • WHOOP is live again - we finally got approved for more connections

Sharper, safer coaching.

  • a hard guard catches sessions that ask for paces or power you can’t actually hold.

  • Run and bike thresholds are now kept separate, so your running paces anchor to your running threshold and your cycling targets to your cycling one - no more cross-contaminating the two.

  • Cleaner per-rep interval breakdowns when you ask how an interval session actually went.

Watch push, more honest and more precise.

  • Garmin pace targets now convert to your HR zones instead of being flattened, and distance-based run reps push as real distance (not a string of one-second segments).

  • One single delivery path to your watch with a truthful “pushed / not pushed” status - no more guessing whether it actually landed.

  • Fixed a .zwo/.erg download error for workouts with easy rest legs.

Apple Health:

  • We now pull your during-workout heart rate, so average and max HR land on Apple Health workouts.

More coming soon - Happy Training! :slightly_smiling_face:

1 Like

Update for May 28–31:

We are continuously having feedback calls with you guys to learn more about how you use athletedata and how we can improve.
If we havnt reached out to you already, we probably will over the next few days :slight_smile:

Other than that, we are currently planning our next months roadmap, but this is another sharpen-and-fix batch, so here we go:

Your training zones, more accurate.

  • Run zones now come from your running threshold, not your cycling one. Runners on heart rate were getting zones biased a few beats too hard…that’s fixed everywhere, including the fitness/fatigue numbers behind the scenes.
  • We stopped a connected app’s default placeholder threshold from quietly inflating your zones, which made genuinely hard efforts read as “easy.” Your zones now reflect your real threshold.
  • The dashboard’s zone legend now shows the right heart-rate ranges on the Run tab instead of always showing cycling.

The coach, sharper and more dependable.

  • It no longer narrates an old sleep or recovery reading as “last night” when your watch hasn’t synced yet - you won’t get coached off stale overnight data.
  • Late-syncing devices (looking at you, Oura) no longer cost you your morning recap. A skipped midday note used to silence the rest of the day; now you get your morning message.
  • It stops bringing up niggles you’ve already shrugged off, and it quotes your real zone numbers instead of doing zone math from memory.
  • If an activity from a slower-syncing app (TrainingPeaks, Apple Health) is just taking its time, the coach no longer wrongly tells you to disconnect and reconnect.

Connecting apps + watch push.

  • The integrations page is now a clean, scannable list with Popular and All tabs, so connecting your first app is faster and less cluttered.
  • “Push to watch” now lives right on your Garmin row instead of being buried in settings.

Billing that doesn’t dead-end.

  • If a charge fails, you can now switch or downgrade your plan yourself instead of being stuck retrying the same failed amount.
  • Starting a trial now tells you up front that we’ll email a reminder before it ends, so it’s clear you won’t be charged by surprise.

PS:
for those who are still having second thoughts about giving athletedata a try, we are currently offering a 30day trial if you do an onboarding call with us so we can better understand friction points: https://cal.eu/team/athletedata/onboarding-videocall (no prep or anything needed, just you sharing your screen while you onboard so we can improve and make things more intuitive)

Thanks and more soon !!

1 Like

athletedata - what shipped (June 1-3)

Coach, sharper.

  • The coach no longer rewrites your whole plan off a single workout or offhand comment. Bigger changes get talked through and confirmed first, instead of quietly restructuring your week.

  • When you tell it you’ve dropped a discipline (say, swimming), it actually sticks - the change no longer gets forgotten and re-added every week.

  • Mixed/HIIT and CrossFit-style sessions now count toward your plan instead of showing as “skipped.”

  • Travel and holiday days you mark off stay off - they won’t get silently refilled by the weekly refresh.

  • It keeps your thresholds current on its own, and proactively schedules a test when one’s getting stale.

Numbers you can trust.

  • Resting HR and HRV now favor your direct Garmin feed over the relayed copy, so early-morning numbers read true instead of drifting high.

  • Run-only athletes no longer see a stray cycling threshold inflating their zones.

  • If your training data updates mid-morning (a late sync or backfill), the coach explains the shifting numbers correctly instead of guessing at causes.

Watch push.

  • Structured workouts now push to COROS with proper targets instead of losing their structure, same as Garmin.

Reliability + setup.

  • Killed a slow-reply bug where a stalled chat could sit minutes before responding - it now falls back fast.

More coming soon - Happy Training! :slightly_smiling_face:

1 Like

Product update - June 4-6

Big batch this time - the coach got a real memory upgrade, and Garmin watch push finally does native pace.

The coach remembers, properly.

  • Full memory overhaul: the coach now keeps organized memory files per topic (goals, constraints, baselines, preferences) instead of one big profile blob, and automatically captures durable facts from your conversations before they scroll away.
  • Long data-heavy chats no longer push your own words out of context - the coach holds roughly 3x more of the actual conversation.

A coach you can trust.

  • No more quiet drops: if a rebalance removes or shortens any of your recurring sessions, the coach names it, explains why, and offers to reslot it.
  • Settled race plans stay settled - the coach won’t reopen an agreed fueling or pacing plan without a real new signal, and won’t flip-flop when you push back.

Watch push: native pace on Garmin.

  • Running pace targets now land on your Garmin as actual pace targets, not a workaround. Your watch shows the prescribed pace band directly.

Sharper numbers.

  • Activity detail now shows Intensity Factor, Variability Index, Efficiency Factor, and aerobic decoupling.
  • Strength sessions finally count toward your training load, even when your watch doesn’t score them.
  • Indoor rides recorded on two devices no longer show 0 km when one source had the real distance.

Smaller wins.

  • Prices now show and charge in your local currency (USD/EUR/GBP/CHF/CAD).
  • The referral card counts friends from the moment they sign up, not only once they subscribe.
  • WhatsApp: instant “you’re connected” confirmation when linking, and links render cleanly.

More coming soon - Happy Training! :slightly_smiling_face:

3 Likes

Already seeing significant improvements, thanks!!

1 Like

What’s new: 7-9 June

Big week. Coach personalization, sharper feedback, and cleaner watch pushes.

Your coach, your way.

  • Choose a coaching voice (Director, Partner, or Companion), set how aggressive or relaxed the training approach should be, and how long you want replies. Onboarding or dashboard, your call.

A more honest coach.

  • Weekly reviews are now grounded in your actual numbers and what you did last week - not generic advice. It does exactly what you ask, and flags ambiguity instead of quietly winging it.

Watch push, cleaner.

  • Garmin gets pace targets directly. COROS converts them to the right HR zone. Stryd users now get running workouts pushed with Watts. Short reps (5 x 20m etc.) no longer explode into multi-minute blocks.

Better integrations.

  • Garmin permission issues now surface immediately with a one-tap Reconnect. IF and efficiency metrics now match intervals.icu and use your actual FTP.

Happy Training! :slightly_smiling_face:

2 Likes

can I ask what where you charging for before this update ?
just to clear I find it rather interesting what you do! and did some background searching who you are and you seem to be good , I just cant figure out why people would pay you for a product in beta testing.

1 Like