Changelog

Follow new updates and improvements to IntervalCoach.

August 28th, 2026

Race pages became a place to start training

Every race page grew into a full preparation surface this week. A new "What this race demands" panel gives a coach's read of the course, built from its distance, climbing, sport and season, with fueling guidance for long events and estimated finish-time ranges by level, and it now reads in your own language across all 17 we support. Below it, "Your road to race day" maps the actual Base, Build, Peak, Taper and Race-week phases onto real calendar dates using the same periodization the coach uses for real plans, and a "What would it take you?" calculator gives you a finish window for that exact course plus the weekly training hours a solid preparation typically needs. Signed in, you can now set any race as your goal with one click; if you found the race before you had an account, signing up from that page carries it with you, so onboarding starts with your plan already pointed at race day. There is also a one-click "Add race day to your calendar" button, dedicated pages per sport and per country, and a copy-paste "Train for this race" badge organisers can put on their event site.

A coach that only claims what it actually did

The biggest theme of the week: closing every gap between what Coach+ said and what it did. It no longer tells you it set an FTP, Critical Speed, threshold pace or LTHR it has no way to set, and instead points you to your Intervals.icu profile where those values live. Asking to shorten a session now shortens it instead of making it 50% easier; asking for sweet spot gives you sweet spot instead of a plain endurance ride; asking for core work gives you core work instead of the phase default. Saving a note to your custom instructions adds to what is there rather than replacing it, "noted" is only said once something is genuinely stored, and a change written out but never applied is caught rather than confirmed. When something it announced was blocked or declined, it now follows up and tells you. Swapping a workout no longer blocks itself mid-swap, chat history no longer loses the coach's words around a workout card, and approval cards always arrive with a sentence explaining them. Asked about pain, breathing or heart rhythm, the coach now says what it can do for your plan and points you to a doctor or physio for the symptom itself.

Workouts that land on the right day, at the right size

If you train from your own Intervals.icu library, your hardest sessions were being read as easy ones and actively favoured for easy days; library workouts are now sorted by their real intensity. A workout the coach builds now has to be physically executable and has to be the length it says it is before it reaches your calendar. A hard session can no longer land the day after a Sunday race, your plan no longer freezes on the week your goal race was in, and a session the coach had already scheduled can now be adjusted on the day even when it is missing our internal marker. Cadence drills keep their rpm targets when a session is trimmed, walks are prescribed at Zone 1 rather than an unreachable Zone 1-2 (which was also inflating their planned load), a coach-adjusted walk replaces yours instead of joining it, and swims are now classified from pace rather than a wrist heart-rate trace that goes flat in water.

The daily outlook sees the pattern, and sticks to your data

Your daily outlook can now talk about the shape of your training and not just today: how your intensity has been distributed over recent weeks, whether your easy rides are staying genuinely easy, whether every day is landing at the same load, and which way your aerobic efficiency on long sessions is moving. The same numbers Analytics shows you, raised only when there is enough history and when they matter for the day in front of you. At the same time it got stricter: quality checks now strip concerns your own numbers disprove, so it can't flag poor recovery on a green day or claim HRV is below baseline when it sits above, and it can no longer decide you are ill on a heavy training block when you have reported nothing. A session that merely felt harder is no longer reported as fitness going backwards, racing a race is no longer scored as going off-plan, and form is described using the same cutoffs your dashboard uses.

Billing, settings and analytics

You now get a receipt by email every time your subscription renews, showing what you paid, for which period, when the next payment is due and where to stop future renewals. Age-aware planning moved out of the cycling-only corner of Settings up to Preferences where every sport can find it, and flipping it now rebuilds your plan straight away instead of waiting for the next one. In Analytics, the Training Score now matches your dashboard, the body weight chart follows your units setting, and the HRV chart follows the range you selected. Switching wearables no longer distorts your skin-temperature baseline, and your emails now sign off in your own language.

In the iOS, Mac and Android apps

The Android app picked up the age-aware planning toggle, a Form ring that reads as a percentage of your fitness so it agrees with the web app, coaching notifications that ask their suggested question straight away instead of leaving it in the message box, and a morning check-in that survives rotating your phone. On iOS and Mac, Form now reads as a percentage everywhere including widgets, the watch and Siri, HealthKit sync problems come with an actionable hint instead of a bare error, Analytics gained a body fat trend chart, you can swap a planned workout's sport or type straight from the workout detail, and the dashboard scrolls faster.

On the blog

The August update is out: the coach on your wrist, race pages that plan, and coaching instructions that the planner cannot overrule.

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!

August 22nd, 2026

The coach dashboard is now a real squad tool

For coaches with linked athletes, the coach page grew into a proper dashboard this week. Every athlete is a row in a sortable table: order your roster by who needs attention, who's doing the work, or whose race is closest. Athletes needing your eyes are flagged with the reason spelled out β€” a recovery warning, deep fatigue, stale data, or an AI adaptation waiting for approval β€” and a new Adherence column shows the last four weeks of prescribed-versus-completed load, so a quiet drop-off becomes visible before it turns into a conversation. Opening a row shows what the athlete actually did today (not just what was planned), their Readiness Score with a 14-day colour strip, and today's HRV, resting heart rate and sleep against that athlete's own 30-day baseline. The dashboard also opens with what changed since your last visit β€” new warnings, pending approvals, slipped adherence β€” ordered by what it costs you, and you can mark an athlete as handled so they go quiet until something new happens. The "This week" column now answers whether the week is going to land, projecting completed plus still-planned load against the target.

Your week now follows its target

A cluster of fixes around one theme: when your plan lowers a week's load, the workouts on your calendar now follow. After a race, the plan correctly turns the next week into a recovery week, but sessions built against the old, heavier week used to stay put (measured across all athletes, 1 in 4 weeks started more than 20% over target, recovery weeks worst of all).

After each Sunday update the coach now trims the excess the same careful way mid-week adjustments do: shortening the biggest sessions before dropping one, never touching today or workouts you added yourself.

Related fixes: reaching your CTL target no longer flattens the race-aware structure out of your plan (taper and recovery weeks stay intact), and heavy days can no longer stack back-to-back beyond what your own history shows you can absorb, the planner learns your heaviest 2-day and 3-day stretches and keeps planned stretches within that plus progression headroom.

Age-aware planning and a more transparent coach

You can now switch on age-aware training planning under Settings β†’ Training. Recovery between hard sessions genuinely lengthens with age, and the planner used to treat a 70-year-old like a 30-year-old: from 50+ the coach keeps at least two days between hard sessions and plans at most two quality sessions per week, and from 60+ it progresses your load in smaller steps.

The Agent Log also got more honest: every entry now says what set it off (your daily check, a watch sync, a settings change, a chat request), how far it was allowed to reach, and when it gets looked at again, including runs that deliberately changed nothing. And the Fitness, Fatigue and Form numbers now explain themselves: tap the info icon next to CTL, ATL and TSB anywhere in the app for what the metric means and how your coach uses it.

Bug fixes & reliability

A busy week of fixes: asking Train Now for a very long session no longer multiplies the intervals along with it (a 240-minute request could come back as 160 minutes of threshold work); the post-workout analysis now counts intervals correctly when you press laps on your head unit; a completed session no longer disappears from the dashboard on days without a planned workout, and the Daily Outlook rewrites itself when your day changes shape instead of still calling it a rest day. The dashboard now warns you with a reconnect banner when IntervalCoach loses write access to your Intervals.icu calendar. Easy sessions under 75 minutes no longer come with unnecessary fueling advice. Connecting IntervalCoach to ChatGPT no longer stops at "unknown client".

On the blog

Two new posts this week: Spotlight: Alfred, the 1:28 half marathon built on a bike commute β€” a 1:28 half on barely 25 km of running a week, with the engine built on a 28 km bike commute β€” and The Button That Changes Tomorrow's Workout, on what the coach actually does with your post-workout RPE rating.

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!

August 15th, 2026

The Apple Watch app is here

IntervalCoach is now on your wrist. The new Apple Watch app shows your readiness score, today's workout, your health metrics (recovery, HRV, resting heart rate, sleep) and your training score at a glance, and lets you rate your workout right after you finish it. There are watch face complications for readiness and training score, including the Smart Stack. And with optional auto-scheduling turned on, your planned workouts for the coming days appear in the Watch's own Workouts app automatically, ready to start.

The coach chat levels up

The chat now knows real races: mention an event you're targeting ("I'm riding the Marmotte in July", "how should I taper for Roth?") and the coach looks it up in the race catalog, planning against the actual distance, climbing and date instead of asking you to type them in. Converting a workout to heart-rate, power or pace targets now changes only the targets: same intervals, same structure, no more silent replacement with a generic template. Telling the chat your weekly availability now updates your actual training schedule instead of being filed away as a note. And it got more trustworthy across the board: it can no longer clear large parts of your calendar in one go, a chat regenerate reshapes your plan without deleting your committed week, it sticks to the real error instead of inventing an explanation when something fails, and long conversations stay sharp instead of degrading.

Training methods, taken at their word

A batch of fixes for athletes on a named method. Norwegian Singles and Doubles: "sub-threshold" now boosts the sub-threshold zone instead of full threshold work, quality sessions are built from the method's own 3-to-12-minute repeats, and long runs stay aerobic from start to finish. The Easy Interval Method now produces real EIM sessions, frequent 200m/400m/1000m repeats at moderate effort, instead of ordinary tempo work. Polarized athletes get exactly the hard days they named, nothing extra: no third quality session in Peak weeks, no sweet-spot sneaking onto intensity days. And Settings now shows what the coach actually understood from your coaching instructions, and says plainly when something can't be set there.

Race weeks and recovery, sorted

The week after an A- or B-race is now always a proper recovery week, and when two races sit two weeks apart, the week between them recovers first instead of piling near-full volume onto tired legs. Training sessions IntervalCoach generated are cleared off your race days automatically, even if you've switched the weekly plan off. A race week's training target no longer counts the race itself on top of your taper. And a C-event that carries real load, like a competitive club ride, now keeps the day before it easy.

Sessions sized to you

The planner now learns from what you actually do: every planned day is capped at your heaviest recent session plus 30% progression headroom, so a generous time slot can no longer produce a session out of proportion to your history. One long ride can no longer absorb half your week, hard rides stop growing past the point where structured work is productive, workouts respect the daily time limits you configured, and an instruction like "long runs max 2h30" is now genuinely enforced. The Ramp Test also became the real open-ended protocol: one-minute steps that climb until you can't hold the target, instead of ending before a fit rider does.

Bug fixes & reliability

A very large sweep this week. The same ride recorded by two sources is now analyzed once instead of twice; switching to a new wearable no longer reads as a month of poor recovery; long sick, injury and holiday periods are respected for their entire duration; dragging a planned workout to another day finally sticks; and finishing a workout no longer makes the coach plan a new one on the same day. Your invite link is now short enough to say out loud, interval.coach/r/YOURCODE, and referral rewards can no longer reset an App Store or Google Play subscription. Plus dozens more fixes across duplicate push notifications on Android, Zwift run sync, swim assessment by pace, flaky heart-rate straps, and the calendar, dashboard and emails.

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!

August 8th, 2026

What you delete stays deleted

If you deleted a workout directly on Intervals.icu, the deletion itself triggered a sync that rebuilt the plan and put the session straight back, sometimes within a minute β€” one athlete deleted the same workout over and over and watched it return every time. The plan now remembers what was on your calendar, so a session that vanishes without the coach touching it reads as your decision and the day is left empty.

Your plan, kept honest

This was a polish week with one theme: what you set is what you get. Your recovery week no longer drifts β€” the training cycle used to turn over on whatever weekday you happened to save it, so a rebuild on the wrong day pushed recovery back a week; it now turns over on Monday like everything else, corrected automatically for every account. A fitness test already on your calendar counts as scheduled, so the same test is no longer booked two weeks running. A day you name as a hard day can no longer be simultaneously filed as an easy one. A session you asked the coach for yourself is no longer the first thing trimmed when a week runs over target. The weekly summary reads next week's type and target from your actual plan instead of guessing β€” no more invented tapers β€” and the daily email's week strip no longer shows scheduled sessions as rest days. And races with Chinese, Japanese or other non-Latin names no longer merge or disappear in the race catalog.

Referral rewards now work from the app stores

Recommending IntervalCoach earns you 30 days of Pro when the person you referred subscribes β€” but the reward was only handed out for web signups. If they subscribed inside the iPhone or Android app, nothing happened: no free month, no badge, and your referral page still showed zero. Both app stores now pay out the same as the website.

In the Android app

An update rolled out this week with two fixes: upgrading your plan (say Pro to Max) now replaces your existing subscription instead of leaving both running side by side, and workout steps that ramp down β€” a descending warm-down, a fading interval β€” now draw as a proper slope in the workout chart instead of a flat bar.

On the blog

A new athlete spotlight: JiMaocc Asked for Her Weak Spots, and the Power Curve Answered β€” she told the coach to read her power curve and make her more complete, then moved continents, lost her trainer, and the flat part of that curve kept rising anyway. 20-minute power up 24%.

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!

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!