June 20th, 2026

Week of June 20

Your personal recovery profile is now live

IntervalCoach learns a recovery curve for every session type, how quickly you bounce back from VO2max, threshold, long endurance, and so on, starting from proven defaults and personalizing as your HRV, resting heart rate, and sleep data build. That curve now shapes your daily readiness, spaces your hard days, and estimates how long you'll need after a session you just finished. Pro and Max athletes get the full per-stimulus recovery-curve chart on the Analytics page, a recovery meter in the Daily Briefing showing whether today sits ahead, on track, or still behind, and a recovery snapshot in the weekly summary email. Coach+ can now answer "why can't I go hard again yet?" straight from your own curve.

A clearer readiness score

Readiness is now a single 0 to 100 score, and the ring on your dashboard is drawn in segments so you can see exactly what built it: your readiness level as the foundation, then each signal that nudged it (HRV and resting heart rate, your recovery curve, recent training variety). Tap it for the full breakdown with the numbers, ask Coach+ "why is my readiness 78 today?" and it reads the real figure, and your morning email now explains your readiness, not just your CTL/ATL/TSB.

Two new health signals

IntervalCoach now spots the early signs of an oncoming illness from your wearable: when breathing rate, blood oxygen, and skin temperature drift off baseline together, it eases the day toward recovery so you don't train through it. And if you track your menstrual cycle, your readiness now expects the natural luteal-phase dip instead of reading it as poor recovery; you can log it in the daily check-in or sync it from health data. Easing back after illness now scales to how long you were actually sick and lifts as soon as your recovery metrics are back to normal, rather than holding a flat two-week cap.

See your whole session

Your activity view now charts the whole session: heart rate, power, speed, cadence, and elevation over time, each with its own stats and zones, and you can drag across any chart to read the exact value. Every ride also gets a power curve (your best power for 5 seconds to an hour against your all-time best) and a new Durability view that compares your best efforts early in the ride against efforts deep into it, so you can see whether your power held or faded.

In the iOS & Mac apps

Workouts you send to your Apple Watch now carry heart-rate and cadence alert targets, so the watch nudges you to hold the right zone, and they no longer tack on an extra warmup or cooldown. Completed workouts also sync back to Intervals.icu with their power, cadence, and lap structure intact, and now sync in the background without you having to open the app. Your 0 to 100 readiness score now appears on the home and lock-screen widget, the Recent Activities list is grouped with date separators, and the app reads in your language throughout after a big translation pass. Mac users get a fixed subscription-management screen, and a performance fix clears up calendar-related hangs.

More improvements

Analytics now plots TSB (Form) as its own line and labels each training phase on the projection chart, and the calendar week summary shows total distance and elevation for the week.

Bug fixes & reliability

A workout you build in Coach+ chat no longer disappears from your calendar, taper and race weeks no longer get flagged as fitness "at risk" or nudged toward intensity, running threshold and stride sessions are built at the right shape and pace, duplicate Strava/device sessions no longer double-count your weekly load, and a glitchy resting-heart-rate reading no longer throws off your baseline.

On the blog

Two new posts go deep on all of this: One system that learns how you recover, and shows its work and Tired, or getting sick? IntervalCoach now catches it before you feel it. Plus a new athlete spotlight: Marsl and the Seven-Hour Saturday.

Full changelog with all the details: https://www.intervalcoach.app/changelog
As always, let me know if you run into any issues or have feedback!