Your AI coach messages you first (Intervals.icu + Garmin + WHOOP + Oura)

Hey everyone,

I’m Julian, AI Engineer based between Berlin and San Francisco, and a triathlete who got tired of being his own data analyst every morning.

Most of us paste screenshots into ChatGPT and hope for the best. athletedata is different: your coach already knows everything and messages you first.

7am. WHOOP recovery at 31%. Garmin body battery at 12. Intervals.icu shows a hard threshold session today. athletedata already swapped it for zone 2; and told you why.

After your ride, it breaks down your power and heart rate drift against your Intervals.icu zones, flags if your aerobic base is slipping, and adjusts next week’s load. When your TSB tanks too far before race day, it catches it before it becomes a problem.

You don’t have to ask. It just knows.

It connects Garmin, WHOOP, Oura, Strava, Wahoo, Withings, and Intervals.icu in under 2 minutes. Coaching is delivered via Telegram - no dashboard to check, no app to open.
Your coach sees your full picture and reaches out proactively.

I’ve been a long-time admirer of what the Intervals community has built here: PlanWatts, IntervalCoach, LeCoach are all great.
My angle is different: less about building the perfect workout, more about removing the daily cognitive overhead of being your own coach entirely.

Would love feedback - try it at athletedata.health (free trial ofc, no strings attached)

  • Julian

Cool to see another builder in this space. I’m working on TrueFeel (truefeel.ai), similar philosophy of reducing cognitive overhead, but I lean into subjective feel as a first-class signal alongside wearable data. The Go/Modify/Bail output is intentionally simpler than a full coaching recommendation. Would love to compare notes on how you weight recovery signals.

so you are more trying to target the general audience instead of serious athletes, right?

Opposite, actually, serious self-coached athletes who already have a training plan and know what they’re doing, but want a better morning decision on whether to execute as written. The subjective layer isn’t about simplifying for beginners, it’s about capturing signals wearables miss (life stress, motivation, lingering soreness) that experienced athletes already factor in intuitively. TrueFeel just makes that process systematic and data-backed instead of guesswork.

Fair enough, I guess it makes sense for that use case…experienced athletes have better body awareness than their wearables anyway.

How do you handle the consistency problem? Self-reported feel is notoriously noisy, especially pre-workout when motivation bias kicks in. Do you weight recent subjective history against itself, or is it purely session-by-session?

Also, do you have a tool/agent architecture set up, or ist just one system prompt?

Hey everyone, thanks for all the signups and positive feedback I received.

A few things I added over the past 2 days:

Currently working on an advanced view that gives you (not just the coach) a better overview of all your data!

Keeping the feedback loop very tight - If you want any integration or feature , just reach out and I´ll build it for you :slight_smile:

Happy Training!

Hey everyone - another update from what shipped over the weekend:

What’s new:

  • :bar_chart: Shipped the Analytics dashboard (screenshot above): training volume, pace trends, aerobic efficiency, wellness & readiness trends, sport/zone distribution, all in one view
  • :sun_behind_rain_cloud: Added a weather integration so the coach can factor in conditions when recommending what to wear or when to schedule your runs and rides throughout the week
  • :satellite_antenna: Requested additional Garmin endpoints to unlock richer, more actionable feedback


Coming next: TrainingPeaks integration is in progress.

The feedback loop has been incredibly valuable - I’m getting a steady stream of ideas via Telegram and email and building quickly based on what you all actually want.
If there’s a feature or integration you’d love to see, just reach out and I’ll make it happen.

To thank you guys for all the feedback so far, I set up code INTERVALSICU that gives you a 30 day trial instead of 7.

Happy Training!

You really should mention its $299 annually.

2 Likes

Good call, should’ve been upfront about it! $299/year or $39/month - the annual plan is the better deal if you train consistently.

The 30-day trial with code INTERVALSICU should give you enough time to see if it’s worth it for you or not :slight_smile:

Hey everyone! another batch shipped today, a lot of it driven by feedback
from this thread and other beta users:

What’s new:

  • :bullseye: Reality Check tool: state a goal like “250W → 280W FTP in 8 weeks” and
    the coach pulls your PMC, training trends, and weekly hours, then tells you
    straight if it’s realistic. Lays out two paths: (A) what’s achievable at
    current volume, (B) what’s possible if you bump hours. You choose. Grounded
    in documented adaptation rates, not vibes.
  • :chart_increasing: Dose-Response analysis: mines your historical data: when stimulus X
    happened, how did HRV / RHR / sleep / readiness / TSB move vs your 14-day
    baseline? Pick the stimulus (hard sessions, long endurance, strength, weekly
    volume, back-to-back hard days) and see your personal sweet spot and where
    things tip negative.
  • :bust_in_silhouette: Profile page: click your avatar to see and edit the markdown profile
    your coach builds about you. Goals, training context, preferences, all in
    one place.
  • :link: Smarter activity dedup: if Garmin auto-uploads to Strava, the
    dashboard no longer double-counts. Also handles padel, tennis, long ultras,
    and pause-heavy sports correctly.
  • :balance_scale: Withings + Garmin weight import: fixed two ingest bugs silently
    dropping body composition. Weight, body fat, and HRV from scales/watches now
    flow into wellness charts.
  • :bar_chart: HR Zone Distribution: computed from raw Strava HR streams using your
    LTHR (no Strava Premium needed). Time-in-zone with bpm ranges, plus a
    “Recompute zones” button.
  • :green_circle::yellow_circle::red_circle: Readiness bands on the readiness chart so you can see at a glance
    when you’re primed vs. cooked.
  • :person_running: Sport filters on training volume and sport distribution: toggle off
    walks, padel, or anything you don’t want skewing stats. Preference is
    remembered.
  • :person_running:‍ Sport-aware thresholds form: runners no longer see an FTP field.
    Threshold pace and LTHR are surfaced instead.
  • :robot: Coach is now analytics-aware: every message includes a compact snapshot
    of your current PMC, last 7-day volume, and recent wellness. The coach is
    required to check your TSB and intensity distribution before recommending
    what to train next.
  • :stethoscope: Better wellness sourcing — Garmin readiness now derived from daily
    stress, and the wellness pipeline does per-field merging across providers so
    a higher-priority source doesn’t block weight from Withings.

Plus smaller fixes: chart card heights aligned, TSB tooltip explained
properly, profile markdown rendered with full formatting, and the “latest
weight” card now finds your most recent weigh-in instead of going blank on
rest days.

Big thanks to everyone sending feedback!!! a lot of this shipped because
someone took the time to write a paragraph about what wasn’t working.
Keep it coming.

Currently working on a Calendar Feed integration for TrainingPeak and TrainerRoad - should go live tonight.

Quick update - a few more metrics are live and being computed in our own data pipeline.

With the last bigger update, I essentially built our own data aggregator pipeline where we compute a ton own metrics so the coach (or MCP) can reference those easier and much faster.

How it works:

  • we compute everything once when you connect your integration
  • whenever new data gets synced, we recompute → so its always up to date

P.S. Please excuse the sleep deficit - athletedata kept me burning the midnight oil lmao





Looks interesting, any plans to pull from Apple Health at all?

Hey Greg, thanks for your message!

Currently working on:

  • TrainingPeak integration
  • Whatsapp integration

Once that is done, I´ll work on a native mobile app so we can connect to apple health as well.
I can reach out once its live (probably in around 2weeks) - lmk :slight_smile:

Another big update batch for athletedata - here’s what shipped recently:

Coach & analysis improvements

  • Added advanced reasoning to the AI coach for more nuanced responses
  • Improved interval analysis
  • Better long-term training plan reasoning (think: triathlon in 6 months, building back properly)
  • Proactive plan change suggestions now react more smartly to your data
  • Zone distribution now shows % alongside hours

Billing & flexibility
You can now pause and reactivate your plan at any time (not just cancel) — a few people reached out after getting injured and not wanting to lose their setup entirely. You can also switch between monthly and yearly mid-cycle, with unused days credited/refunded automatically.

Data & integrations

  • Got access to more Oura data again
  • Fixed a Garmin HRV data bug
  • Added explanations to all analytics metrics so you know exactly how things are calculated
  • New custom metrics added to the aggregation pipeline
  • Proper profile settings are finally in

Coming up

  • WhatsApp integration → I know a lot of you are waiting for this, it’s my main focus right now
  • Reached out to TrainingPeaks and MyFitnessPal → confident we can get full integrations soon once we can show them demand (they acknowledged it)

Super grateful for all the support and feedback guys - we are really building something really really cool here!
As always, feel free to reply here or DM me with anything.
EMail: julian@athletedata.health (I am really responsive haha)

BIG update guys (2026/04/12):
WhatsApp support is now live.
A few of you mentioned Telegram was a barrier, so I prioritized this.

Give it a try and let me know how it goes - looking forward to your feedback.

If a feature is missing or if you have any other questions or concerns, all my contact information (email, whatsapp & telegram) can be found here: About | athletedata.health - feel free to reach out anytime

Hey again, another quick update:

I am getting a ton of feedback and feature requests via email (from users who signed up bc of this thread) - so here is todays update:

  • Power Profile section that shows your power duration curve, CP/FTP estimate, rider type classification (sprinter vs time trialist vs all-rounder etc), personalized power zones, and training recommendations based on where your strengths and limiters are.
  • Upgraded the AI Model for in-depth analysis tasks
  • better deduplication for auto detected whoop/oura workouts when there is data for “real” workouts from strava, garmin, intervals.icu etc
  • .fit an .csv file upload support via whatsapp/telegram

If anything else comes up or you have a feature in mind you´d want in the platform, feel free to reach out anytime via telegram, whatsapp or email and I´ll make it happen as fast as possible.

Cheers!

Second Update for today haha:

You can now enable/disable which data should be used from which wearable.
E.g. some athletes use a whoop+garmin so whoop workouts are effectively unreliable and just added noise but whoop sleep data is still the main source of truth

→ you can now adjust those settings yourself:

Todays update:

I am very happy share that the platform is growing super fast → thats why I had to massively upgrade the underlying infrastructure behind athletedata, meaning:

  • better&faster servers
  • upgraded the database (increase in and outputs and concurrent connections)
  • got an increase for our quota for frontier AI models

Additionally, more users also mean more edge cases are surfacing, so I´ve fixed the following:

  • The first data backfill when connecting garmin was sometimes too large and we couldnt process it, thats now fixed (thanks to the new database)
  • whatsapp couldnt process files,images or voice messages → fixed too
  • backfilled garmin data for users that had only partial garmin data (wont happen anymore in the future)

Everything is running super smooth now but I´ll keep an eye on the server load and logs to make sure it stays that way.

As always, if anything comes up, you can always message me directly! :slight_smile:

Todays Update:

  • infrastructure improvements to keep up with all the new users
  • you can now adjust the tone of your coach

For the rest of the week, I´ll focus on:

  • Apple Health integration
  • TrainingPeaks integration
  • MyFitnessPal integration
  • ofc continues small fixes and improvements

If anything comes up, just reach out!