Changelog

Follow new updates and improvements to IntervalCoach.

August 1st, 2026

Week three of my summer holiday, so like the two before it this was fixes, improvements and polish rather than a big new feature. Mostly it was about making what is already there behave the way you would expect. A few things were added, but only to fill gaps that were plainly missing.

Your race day is judged as race day

A race is no longer scored like a training session that failed to follow a plan. The post-race analysis judges pacing by phase, your effort signature (intensity, time above threshold, late-race heart-rate drift) and what the race says about your form, and when a pace plan was generated beforehand it closes the loop: planned versus executed. An activity carrying Intervals.icu's "Race" tag counts as a race even without a calendar event, and if your notes mention the result ("P4", a podium emoji, "won") the analysis opens by acknowledging it — winning a crit no longer reads back as "solid endurance ride". Your A, B and C races are also off-limits to the background plan sync now: it can never move, shorten or remove one, and it stops dropping workouts onto a race day.

Goals that match the sport you train

With a running goal event, step 2 now offers a threshold pace target — current, suggested and max realistic — derived from your own Critical Speed history, and that pace shows up on your dashboard instead of your season best. The ceiling is measured rather than estimated: for each candidate target we trial-run your actual plan, with its taper, recovery weeks and available hours, and the slider stops at the highest target whose own plan truly reaches it. The goal card now shows the peak your plan builds to next to the race-day number, so a correct taper stops looking like a failing plan. On the bike, "Max Realistic" FTP scales with how much of your week actually goes to cycling, and progressive overload no longer compares your runs against your rides.

Tests that are actually tests

Several ways of asking for a test did not produce one. Test requests — LTHR, FTP, ramp, running time trial, CSS — now always resolve to the matching protocol and keep their real name on your calendar, instead of an ordinary tempo session presented as the test. The LTHR test is the real field protocol, and completing it writes your measured LTHR straight into your Intervals.icu heart-rate settings so your zones recalibrate. The ramp test is a real ramp again, climbing a minute at a time rather than dividing itself across whatever time you had free — long steps made you stop early, so the FTP it produced came out low. The test you asked for in Settings now actually appears in your plan, never lands on a day your instructions reserve as easy, and if you test in Zwift or MyWhoosh the day is reserved with your instructions and nothing else.

Related, and worth a look: your workouts can land at the wrong watts without anything looking broken. Targets are a percentage of the FTP stored on your Intervals.icu profile, so if that value has drifted from the one your coaching is built on, every session is off by the same ratio — one athlete was sent out to do VO2max intervals at 360W with a real FTP around 250W. Settings → Training now shows both values side by side whenever they differ by more than 10%.

Your coaching instructions, kept

A day you pin no longer disappears from your week. If you asked for "Sunday is always the long run" and you train fewer sessions than you have days, the planner dropped the shortest day first — exactly the recovery run you pinned. Pinned days are now kept. A day you describe as easy stays easy too, instead of surviving in your week but filling up with threshold intervals. Refusing a session by name ("no TT-style efforts") now sticks, and instructions you saved months ago are re-read whenever the planner learns a new rule.

Languages, Google Health and Health Connect

All languages were gone through and corrected: labels you see daily; Readiness, Sleep, Recovery, Health plus a few shorter texts per language had shipped with English sitting inside the translation file, so nothing flagged them as missing. Health signals get their day counts back ("HRV suppressed for 3 days" lost the number in fourteen languages). Swedish and Norwegian were added on top, bringing the total to 17.

Google Health was landing incomplete data. Steps and VO2max now actually reach Intervals.icu, workouts arrive with the sport your watch recorded, deleting an imported workout sticks, and step counts no longer double when your watch and phone both count them. Settings tells you when your connection is missing the activity permission. On Android you can now skip the middleman entirely: turn on Health Connect in Settings and IntervalCoach reads HRV, resting heart rate, sleep, blood oxygen, VO2 max and body composition straight from your phone.

Fixes and polish

A connected AI assistant (Max) now asks before it changes anything, adding a workout, moving a session, updating your settings and shows you what it is about to apply. Your morning briefing reads your real overnight values instead of a copy fetched moments too early, which could recommend intensity while the app correctly said to take it easy. Readiness wording states what was measured ("7.1h of sleep vs your recent 7.6h average") rather than passing judgement, and a commute can no longer tick off your planned workout.

Calendar day columns share the row equally instead of one busy day pushing the weekend off the page, "+N more" expands the day, and the monthly view fills out complete weeks. Micro-intervals show their real duration instead of "0min", zone-target steps chart at their real height, an easy run's warm-up no longer builds past the run itself, and a 45-minute run is no longer called a long run. If you use miles, the calendar and goal wizard use them too. You can rename a completed activity from its detail view, Analytics remembers your time range and averaging, and the "Rider Profile" card is now the Athlete Profile — runners train here too.

On the blog

Two posts: the monthly recap, July Update: Readiness Rebuilt, a Race Catalog, and Fitbit Support, and an athlete spotlight, Pius, an Hour on the Trainer and 300 km of Gravel.

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!

July 25th, 2026

Week two of three of my holiday in Italy, so like last week this was mostly a round of polish and improvements — though a couple of bigger things still made it out: triathlon goal races and improved running-power support.

Set a triathlon as your goal race

The week's biggest addition: you can now set a triathlon (IRONMAN, 70.3 and more) as your goal race. Adopt one from the race calendar, which now has its own Triathlon category, or create your own, and your training plan builds toward it across swim, bike and run instead of a single sport. Existing races can be switched to Triathlon too, and a triathlon plan now schedules swim sessions on any training day you haven't limited to another sport, so a triathlon goal no longer produces a bike-and-run-only week.

Running power, and setting your own numbers

The other one: if you run with a power meter, IntervalCoach now treats your running power as its own thing. Running workouts show watts based on your running power threshold instead of your cycling FTP, the dashboard tracks your running-power peak form anchored on your running eFTP, and Analytics has a new Running Power history chart. Runs are also classified by your actual pace or heart-rate zones now, so a relaxed long run no longer gets labelled as a VO2max session.
More broadly, you can now set your FTP, threshold pace and threshold heart rate directly in IntervalCoach: open Settings → Training, tap Edit, and the value saves straight back to Intervals.icu so every workout target uses it right away. Change your numbers in Intervals.icu instead and IntervalCoach now picks that up immediately too. The same in-app editing, including Running FTP, arrived in the iOS and Mac apps this week.

The race calendar keeps growing

Last week's new race catalog got its polish round. Race pages now show a map pinning where the event takes place, plus a facts panel with the date, start location, distance and level, and how many athletes are training for it. You can filter the calendar by region and country alongside sport and search, each page suggests similar races so you can keep browsing, and the whole calendar is easier to scan with your filters shown as tags you can clear in a click. The race catalog also landed in the iOS and Mac apps, so you can browse, adopt and share races from your phone.

Smarter plans, analysis and analytics

A steady round of refinements to keep your plan honest. A training plan now builds toward the fitness target you set instead of flattening out below it: it starts from what you've been doing and steps up week by week, still bounded by your available hours. Your scheduled workouts no longer add up to more than the week's target, because IntervalCoach now checks the load Intervals.icu actually assigns each session and trims it to fit, and a hard run is capped at a sensible length instead of ballooning into an endurance grind. The weekly hours on your plan now match the sessions actually scheduled, finishing a race is recognised as your race whatever the sport (gravel, MTB, walking, hiking included) with the following days coached in a recovery frame, a short easy spin is no longer scored as a failed version of that day's hard session, and updating how you feel partway through the day now refreshes your readiness. Analytics also charts more of your wellness history: sleep, VO2max and your acute:chronic training-load ratio (ACWR), plus your full weight history.

On the blog

Two new posts this week: an athlete spotlight, Martin Trains the Way He Wants, and Lets the Plan Catch Up, and Garmin Just Bought TrainingPeaks and TrainHeroic. What It Means for Your Training Data.

Bug fixes & reliability

Where most of the week went: deleted planned sessions now stay gone, both from your refreshed plan and from that morning's daily briefing; Coach+ no longer gets stuck creating the same workout repeatedly and no longer reports a saved setting as failed; library workouts with press-lap recoveries keep their structure; cadence targets show on interval steps, not just warm-ups; Google Health sync no longer duplicates activities that arrived from another source; late-arriving activities get analysed instead of staying generic; brand-new runners no longer see impossibly slow paces; the Plan Follower and Perfect Week/Month badges count real weeks of training; and workout names, the illness warning and the sick/injured banner now show in your own language. The iOS app also got a performance pass fixing its two most common freezes.

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!

July 18th, 2026

A lighter week than usual on the new-feature front: I'm writing this from a holiday in Italy, so the focus was polish and refinements (with the race catalog as a nice bonus).

New: browse and adopt real-world races

The one new feature this week: a growing catalog of real-world races. Browse well-known gran fondos, marathons and sportives across Europe, Asia, the Americas and Oceania, each with distance, course details, its full date (including the year, since some are next season) and an "Event site" link to the official page. Tap any race to open a clean details page, then add it to your calendar and make it your goal in a single step, picking your own A/B/C priority so it fits your season.

You can also share your own race so other athletes can find it, now with a link to the official event website. Shared races are reviewed before they appear. Races cover more sports too: alongside ride, run, trail run and swim, you can now set a walk, hike or strength event as an A/B/C race, and add a Notes field for course profile, start time or logistics.

Sharper injury handling and daily check-in

Reporting an injury in your morning check-in now actually changes your training. A serious injury report drops all intensity from your day, and marking yourself "injured" logs an injury day on your Intervals.icu calendar, rests you, and starts a gradual return-to-training ramp scaled to how long the injury actually lasts. Consecutive days of "injured" now count up correctly as one ongoing injury (day 2, day 3) instead of resetting to day 1 each morning, and the injury shows once on your dashboard rather than as three separate warning cards.

Submitting your check-in now re-evaluates your day immediately: any answer that changes your readiness picture triggers a fresh look at today's workout the moment you submit. Your soreness, fatigue, stress and free-text note also reach the coach directly now, taking the worst of your check-in and Intervals.icu rather than quietly disappearing if a background sync hiccupped.

Real pace and power on every workout step

Workout steps now show your actual pace and watts next to the percentages. A step that read "75-79% Pace" now reads "75-79% Pace · 7:24-7:02/km" (or min/mi on imperial units), and cycling steps show the watts a %FTP target resolves to. These absolute targets are now visible on the web event page and in TrainNow's proposed workout, not only when hovering the structure chart.

Training plans that match your fitness

A round of refinements keeps your plan honest about what your body can absorb. Taper and race weeks are now capped at your maintenance load on every plan, pre-race days become a short 75-minute priming session, and the day after a race always materializes as a genuine easy recovery workout. When your daily training budget is tight, quality sessions are now trimmed (never more than 25% below your planned time) instead of downgraded to an easy ride, and downgraded easy days rotate through endurance variations so light weeks stay varied. Multi-sport athletes keep at least one easy weekly session of a secondary sport they train regularly, and planned durations now land on their intended training load instead of overshooting by up to 50%.

Coach+ and TrainNow polish

Coach+ can now build rides up to 10 hours for long brevet prep, gives custom workouts a proper descriptive name, respects the indoor flag on your sessions, and reports weather in your unit preference throughout. It also stops asking for approval twice, and the Rebuild button shows a live countdown to your next available rebuild instead of a bare "limit reached". A new Indoor / Outdoor preference in Settings → Training tailors workouts to where you ride, and you can switch it straight from chat.

TrainNow now gives you the exact workout you tapped, and tells you clearly when a pick can't be served (for example a library workout you deleted) instead of quietly swapping in a different one. In "according to plan" mode, your scheduled session always stays on the table with recovery warnings right beside it, so the final call is yours.

In the iOS & Mac apps

The Analytics screens got a polish pass: the activity heatmap opens on your current weeks instead of six months back, statistic tiles keep equal heights with category labels that no longer break mid-word, and the Training Score breakdown legend sits below the chart. Weekly training load now reads done/target (like 75/253), a 1-day streak reads correctly, and workouts can no longer show a 0-minute duration.

Bug fixes & reliability

A batch of smaller fixes: the Analytics tables and cards no longer stretch sideways beyond your phone screen, browsing back through calendar months now shows your completed workouts, stepped warm-ups render as one clean Warmup section, resized library workouts drop the stale duration from their name, and the dashboard ramp-rate warning now correctly reads points per week. Re-importing your training history also shows up in IntervalCoach right away instead of lagging up to a day.

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!

July 11th, 2026

Google Health support

You can now connect Google Health to bring your Fitbit, Pixel Watch, or any Wear OS device into IntervalCoach. Your sleep, HRV, resting heart rate, respiratory rate, blood oxygen, skin temperature, and VO2 Max feed straight into your daily readiness, and the workouts you record on your watch upload to Intervals.icu automatically. It's the path modern Fitbit devices use (including the new Fitbit Air), so if your recovery data lives there you get recovery-aware coaching without adding another strap. Connect it under Settings, Integrations (Pro and Max). More on the blog: Your Fitbit and Pixel Watch, Meet Your Coach.

Bring your own AI assistant

You can now connect IntervalCoach to Claude, ChatGPT, or Cursor, so your AI assistant can read your live training data (your readiness, personal recovery curves, and adaptation signals) and use your coaching tools right inside the chat you already use. Ask it to plan your hard sessions around your calendar or draft a training summary for your coach, all from your real numbers. Available on the Max plan under Settings, Integrations. More on the blog: Bring Your Training Into Claude, ChatGPT and Cursor.

TrainNow, readiness, and the calendar

TrainNow can now build a workout around today's readiness, not just your plan: a new "Fit my plan" / "Fit my readiness" toggle means an open day can still give you a proper session matched to how recovered you are, with your recovery limits still in force. Option cards now show an estimated training load (like "≈65 TSS · 60m"), and the status bar shows your Readiness Score. The training calendar got a big upgrade too: a goal banner with your next race, weeks remaining, and fitness trajectory; a planned-vs-actual volume bar; session RPE and workout-compliance badges; a thin intensity strip colored by Intensity Factor on every session; distance and elevation on completed rides and runs; and a "Low Z5+" alert when a race is near but you've been light on VO2max work.

A smarter Coach+ and daily coach

Coach+ now builds real strength and home workouts (instead of quietly swapping in an easy run), can create walks, hikes, and trail runs, switches your whole week to another sport without mismatched durations or duplicate sessions, knows your body trends (VO2 Max, HR recovery, weight, menstrual phase) without being asked to look them up, and can be expanded to a wider panel on desktop. Telling the coach you're sick or unavailable now genuinely protects your plan: those days stay cleared and the next morning respects them, instead of a background sync quietly refilling them. Daily adaptation is more honest too: it names the actual signal behind a change ("your HRV is 15% below baseline"), won't add intensity the day after a hard session or when your body is signalling fatigue, and won't mistake a long easy ride for a hard one.

Training Plan, tapering, and workout quality

The Training Plan page can now show weekly hours instead of TSS, displays the coach's own proposal next to any manual override, and the calendar's week summary shows per-week fitness numbers (CTL, ATL, TSB). Tapering got real care: race week keeps you training most days with short openers instead of collapsing to a couple of sessions, taper and race weeks pick up more low-load variety (cadence drills, easy fat-max rides, swim technique), and on a polarized plan your hard days now stay genuinely hard through taper and race week. Workout quality across the board: warmups always build up and cooldowns always wind down (even after load scaling), recovery blocks no longer lock you to a cadence, HR-based easy segments sit in the right zone, fussy micro-steps merge into clean blocks, and interval sets keep every hard rep paired with its recovery. Run segments now show actual pace, and HR segments show your real bpm range.

New insights, new languages, and the apps

Analytics gained a Compound Score column (watts × W/kg, fairer across body types) and a Variability Index / Efficiency Factor trend chart. IntervalCoach now speaks Japanese and Korean, bringing the app to 13 languages. In the iOS & Mac apps, iPad got a desktop-class experience: full-width calendar, dashboard, and sidebar, a larger Add Workout sheet covering all sports, and smoother calendar navigation, alongside more responsive quick-stat cards, another pass at eliminating app-hangs, and Mac sidebar and Settings polish.

On the blog

This week's athlete spotlight: Djeno Points a Whole Spring at the Alpe d'Huez.

Bug fixes & reliability

Plenty more under the hood: the one-click email unsubscribe link works without logging in, disabled weekly plans are no longer rebuilt overnight, imported long rides next to a race get shortened to short openers, post-workout analysis correctly classifies a session by what you actually did, and head-unit owners get better support (a power tag for IGPSport/XOSS devices, plus new toggles to turn off cadence drills and in-workout coaching messages).

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!

July 4th, 2026

Readiness Score 2.0

Your readiness score is now a pure measure of how recovered your body is: HRV, resting heart rate, sleep, your personal recovery curve, and how you feel this morning, each compared against your own 30-day baseline. Your training plan no longer touches the number, so a rest day with a recovered body finally shows a high score. The score anchors once your morning data is in and shows when it was set, and it only moves again for a real reason: you submit your check-in, or genuinely new recovery data lands mid-day. Tap the ring to see every factor with today's value, your baseline, and whether it's working for or against you.

How you feel is now a full factor too. The morning check-in opens in its own fast pop-up straight from the readiness ring, and logging soreness, fatigue, stress, mood or motivation (there, or directly in Intervals.icu) feeds straight into your score. Training without a wearable? Your score is now built from your recovery curve, your check-in, and your accumulated training fatigue. And the 14-day wellness ribbon on the dashboard now shows your own Readiness Score history, day by day.

Your whole training block, planned

Your calendar now holds real, fully structured workouts for your whole planning horizon: four weeks ahead on Pro, eight weeks ahead on Max, and the current week on Free. Every session is built and synced the moment your plan exists, so workouts reach your head unit or Zwift weeks in advance. And your week now rebalances itself in real time: complete an unplanned ride and the remaining sessions ease back to keep the week within your target load; move or delete a workout and the rest of the week adjusts around it. Hard days stay spaced, and today plus everything already done are never touched. Prefer to manage your week yourself? Turn it off in Settings.

Weekly targets got smarter underneath as well. Your targets now build toward what you've shown you can handle instead of stalling at a number based only on your scheduled hours, your build phase now actually steps up week over week, and a single unusually big week no longer inflates every target after it.

Weather-aware coaching (Pro)

Open a planned outdoor ride or run and you'll see the forecast for exactly when you'll be training: temperature and feels-like, an hour-by-hour strip from your start time, wind speed and direction, rain chance, UV and more. It shows for upcoming outdoor sessions within the next 10 days, rolling out on iPhone first with web and Android to follow. Coach+ can factor the weather into its advice too: ask whether to move a wet ride, take a session indoors, or pick the driest day to train. And you can now start that chat straight from a workout: open any planned session and tap "Ask Coach+ about this workout".

Workouts that build what they promise

Your easy and aerobic rides now actually feel different from each other: cadence rides alternate high- and low-cadence blocks, spin-up rides add short bursts of leg speed, pickup rides drop in brief tempo touches, and long aerobic rides hold one steady effort. The same "right name, real structure" fix covers running and swimming: run VO2max sessions build the shape they're named for, anaerobic sessions match their description, and the swim sprint test is a real speed test. Adding a training to your calendar now builds the complete workout right away instead of a placeholder, and recovery spins are now tagged as recovery so Intervals.icu and Strava keep your intensity mix honest.

Bug fixes & reliability

A big week for polish too: marking days as injured or sick now clears planned workouts from those days, accidental duplicate workouts a few weeks out are cleaned up automatically, fuelling advice now scales with the session instead of giving a 15-minute commute a race briefing, heart-rate runs keep every effort on heart rate, Coach+ can build very short sprint efforts and switch runs to power targets, planned cycling workouts show actual watts next to each %FTP target, you can remove your goal directly from Settings, hard sessions land on the days you asked for, polarized plans stay polarized, and if you pay through both Stripe and an app store your higher plan now always wins.

On the blog

Three new posts this week: Your readiness score grew up on the thinking behind Readiness Score 2.0, Your whole training block, planned on the new planning horizons, and the June 2026 update rounding up last month.

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!

June 27th, 2026

IntervalCoach is now on Android

The big one: IntervalCoach is live on Google Play. It's the full app, matching the iPhone version: your dashboard and readiness, the daily briefing, Coach+, training plan, calendar, and the activity charts (heart rate, power, speed, your power curve and durability). Search "IntervalCoach" on Google Play or grab it from the link on our homepage. There's a full write-up on the blog.

Connect IntervalCoach to your AI assistant (Max, beta)

You can now link Claude, ChatGPT or Cursor directly to IntervalCoach, so your assistant works with your training: ask it for your readiness and recovery, your plan and performance trends, compare past activities, or have it create and adjust workouts, all from its own chat. It's a Max-plan beta. Turn it on under Settings → Beta, add IntervalCoach as a connector in your assistant, and follow the step-by-step setup guide at docs.intervalcoach.app.

Heart-rate riders get the load they ask for

If you train your rides by heart-rate zones with no power meter, the planned TSS on your calendar now matches your target, both for on-demand workouts and your weekly plan. Previously an easy ride could land well below the number you set.

Coach+ got noticeably sharper

A whole batch of Coach+ improvements landed this week. The coach now reads your live calendar before moving, deleting, or adjusting a session (no more "no workout found" on a day that clearly has one), confirms the change actually landed before telling you it's done, and won't move the wrong session when you name a day a workout isn't on. Deleting a workout now keeps it deleted instead of having the plan quietly refill the day. It also stays anchored to the correct date in long chats, and re-checks the latest data before explaining a number you've flagged as wrong, instead of inventing reasons.

Smarter illness detection and recovery

IntervalCoach can now spot an oncoming illness a little earlier: a multi-day rise in resting heart rate paired with a drop in HRV now backs up the other early-warning signs, so the coach eases your training toward recovery sooner, even if your wearable doesn't measure temperature or breathing. Coming back is paced more carefully too: a sensible minimum easing window after any illness, lifted only once your resting heart rate returns to your own normal. There's a deep dive on the blog: can you actually see illness coming in your data?

Training & workout fixes

Several plan and workout corrections shipped: polarized plans now keep your hard days genuinely hard instead of slipping into the tempo "grey zone"; your weekly TSS target is sized from all the days you train (not just your single longest day) and no longer shows a number above what your available time supports; running warm-ups now build up to the main set and cool-downs ease down from it; a new workout is no longer added onto a day you've marked as a holiday; and a session can no longer quietly disappear when your weekly plan rebuilds. Strength and gym sessions now show an estimated recovery time, and your dashboard recovery ring matches your daily email and Coach+.

In the iOS & Mac apps

The iPhone app's home screen is faster and smoother: we fixed brief freezes that could lock up the app for a few seconds when opening your dashboard.

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!

June 20th, 2026

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!

June 13th, 2026

Your coach now adapts the day as your recovery data comes in. If your overnight HRV and sleep sync late and show more fatigue than your morning plan assumed, it dials today's ride back to a lighter version of the same session instead of leaving you with a plan that no longer fits. A too-early "rest day" call can now reverse itself too: if the data that lands mid-morning shows you're actually well recovered, the rest suggestion is withdrawn and your planned session stands. (Cycling for now, for athletes on automatic or adaptation preview.)

We also made the daily briefing far more reliable for anyone training off a recovery device. Your briefing and workout now still arrive on mornings when Whoop misses its sync, built from whatever sleep and recovery data is available, instead of waiting indefinitely for numbers that never come. If your Whoop connection silently breaks, IntervalCoach now notices and emails you to reconnect. And Whoop users can finally set a fixed briefing time in Settings → Notifications, so it waits for the hour you picked instead of landing at 5am.

The Training Plan got smarter about how much it asks of you. Your available hours are now treated as a ceiling, not a target to fill: plans build from what you've actually been training and ramp up gently from there. The Training Plan page now shows the three inputs behind your weekly load (what your goal needs, your hours ceiling, and your recent training) and which one is setting your number, so you can tell whether to raise your goal, add hours, or just keep training. If you fall behind, your targets nudge back up to help you catch up instead of quietly getting easier, and polarized plans now keep their hard days genuinely hard.

Analytics picked up a new Rider Profile that reads your rider type (Sprinter, Climber, Time Trialist and so on) from the shape of your power curve, alongside your strength in each energy system at a glance. Power charts can now switch between watts and W/kg with one toggle. And outdoor rides and runs now show a map of your route right in the activity view, with redesigned shared activity pages built around it.

Coach+ stopped wasting your messages on avoidable errors: schedule changes and workout edits that used to fail on a technicality now go through the first time, deleted workouts stay deleted, and it tells you the truth about plan rebuilds instead of pointing you at an unchanged calendar. The in-app help assistant can now answer questions about your own account using live data: your plan, your training phase and this week's target, why today's session is what it is, and whether your devices are syncing.

IntervalCoach now speaks Traditional Chinese (繁體中文), and if your browser is set to a language we support you'll get a one-time nudge to switch everything over, including your daily emails. On Android you can now install IntervalCoach to your home screen, and pinch-zoom works again. We also published three reads this week: Coming Back From Illness Without Blowing Yourself Up, plus athlete spotlights on @javi building a Mallorca engine for La Purito and @tino-76 rebuilding at 49 on his own terms. Max subscribers can now switch down to Pro right in Settings, heart-rate cycling workouts now show their real training load, and multi-sport schedules now stick.

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!

June 6th, 2026

You can now log time off without leaving IntervalCoach. The "+ Add" menu on the calendar and training plan has Sick, Injured and Holiday alongside Workout and Race — pick a date range, say whether you're fully out or just limited, and the coach eases off or pauses training for those days, then ramps you back up gradually once you're past it. No more hopping over to Intervals.icu to block out a sick week or a holiday.

There's a new way to shape how you train, too. In Settings → Training you can pick a training methodology: Norwegian Singles turns your quality days into controlled sub-threshold work (the "golden zone" just below threshold) instead of all-out VO2max, Norwegian Doubles adds a second short sub-threshold session on your two-a-day days to build threshold volume with less strain, and the Easy Interval Method keeps everything aerobic with frequent short, moderate efforts that never go truly hard. Recovery and taper weeks stay easy whichever you choose.

Your weekly plan can also start adapting itself (beta). Turn on "Self-adjusting weekly plan" in Settings → Beta, and when you add, move, or delete a workout the week rebalances around your change — staying within about 10% of your weekly load target and keeping hard days well spaced, without ever touching today or sessions you've already done. Your own change always comes first.

On the blog, I wrote up Race Pace Plans: A Coach For The Day Itself — a goal-aware pacing strategy, a warm-up protocol, and an honest read on race morning for your A and B events, with a lighter version for C races.

Clubs had a busy week: leaderboards can now span 7 days, 30 days, 90 days or a year instead of only the trailing week, the Clubs area opens with an at-a-glance Overview tab, any member can add club events and edit the ones they created, you'll get a push when a club adds or changes an event, and you can make a club discoverable so others join without an invite code.

The coaching got sharper, too. When the coach caps your intensity for a rough recovery day, your interval targets are now actually lowered to match (VO2max and anaerobic sessions trim volume instead, to protect the hard stimulus), and running workouts honour the cap as well. Your weekly plan now leans into the workout types you prefer and away from the ones you don't, TrainNow can build a session to a target TSS, and a new "Coach picks the duration" mode treats your set time as a ceiling and finds the most effective (often shorter) session within it.

A few smaller touches and fixes round things out: there's now a Help Center and a public Roadmap in the menus, date pickers share one calendar with weeks starting Monday, and the Daily Briefing only surfaces signals that need attention. On reliability — upcoming workouts no longer get stuck as greyed-out placeholders after you edit something in Intervals.icu, the Daily Briefing no longer shows a stale card first thing in the morning, checkout and Coach+ top-ups go through cleanly again, and a distance-labelled running rep (like 8×500m) is no longer misread as 500 minutes.

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!

June 1st, 2026

Clubs are here — you can now train with the people you actually ride and run with. Create or join a club to share an activity feed (who joined, badges earned, completed workouts), compare on leaderboards built around effort you control — weekly TSS, consistency, and 4-week fitness growth, not raw watts — and post shared events that each member can add to their own calendar, where the coach folds them into their individual plan. Privacy is strict: you choose what you share per club, and your recovery and wellness data is never shared with clubmates. Joining is free on every tier; creating a club is part of Pro (up to 10 members) or unlimited on Max, which also gets a weekly AI digest summarizing how the group trained. More in the Introducing Clubs post.

Trail running and brick workouts both became first-class this stretch. Trail Run is now a distinct sport across TrainNow, the workout picker, the library mapper, and the race editor — with GAP-aware race pacing, separate trail/road critical-speed and pace zones, elevation-aware post-workout analysis, and five new trail workouts (Long Climb, Downhill Repeats, Power-Hike Intervals, Technical Trail Intervals, Ultra Time-on-Feet) that get picked preferentially when you have a trail goal. Bricks moved beyond on-demand: mark a day as Brick and the weekly planner now schedules a bike-to-run pair, switching to a race-simulation pattern in your Peak and Pre-Race Taper weeks, and downgrading to a single easy ride when readiness is poor. The full story is in Trail Running and Brick Workouts.

Your coach also got more personal. Pro and Max athletes can flip on a new Recovery Profile card (Settings → Beta) that fits your own recovery curves per stimulus — tempo, threshold, VO2max, anaerobic, long endurance — and the planner now uses those curves to space hard days further apart when your data says you recover slowly. Max athletes can benchmark their curves against a peer cohort. On top of that, the daily workout pick and the explanation in your email now draw on the notes the coach has accumulated about you (ranked by relevance to today's situation), and the coach quietly writes new notes after each session — so Settings → Coach Memories fills in over time. Hard cycling sessions now also open with a short pre-activation primer at the day's main-set intensity, and there's a new Billat 15/15 VO2max workout in the catalog.

A lot of plan-quality and reliability work shipped too. When your goal event is automatic and the current one passes, your plan now rebuilds toward the next goal on its own instead of leaving the weeks empty. The Sunday refresh no longer collapses a week to a single session when the plan changes shape, and a few unavailable days (an appointment, a weekend away) no longer flip the whole week into an empty "Holiday" shape and wipe your pushed sessions. The race-event form now pre-fills planned load from sport and target time, and distance/load caps were raised so ultra-distance brevets up to Paris-Brest-Paris fit with their real numbers. Plus a batch of fixes: library workouts keep their real power and zone targets on upload, threshold sessions honor the Z4 ceiling across every template, the Workout Structure chart renders correctly for runs and swims, Training Milestones unlock again (and backfill retroactively), the activity heatmap stops showing trained days as rest for returning accounts, running pace no longer reads "3:60 /km", and the daily email greeting and week overview match when and what they should.

Also new on the blog: the May 2026 update recapping the month, and two athlete spotlights — @falsesummit at Pikes Peak and @jos-stapel-beukers' rebound.

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!