Why Coaching Apps Are Worst Exactly When You Need Them Most

In short This article shows how apps treat an injury layoff as missed sessions to catch up on rather than a lost fitness base, and what to change manually before restarting a plan after time off.

Route ahead 6 sections
  1. What the app thinks happened
  2. Why the data misleads the app (and you) 1 min
  3. A worked example 2 min
  4. What to change by hand before you restart 3 min
  5. Using ChatGPT for this, if that’s your tool 5 min
  6. The right mental model 5 min

You get injured in week 6 of a 16-week marathon plan. Six weeks later, a physio clears you to run. You open Runna, Garmin Coach or the ChatGPT spreadsheet you built in the summer, and it greets you with a plan that has quietly rearranged itself around the gap. Here’s the problem. It has treated your layoff as a scheduling error.

That is the core flaw of every running app after injury: the software sees missed sessions, and what you actually have is a lost fitness base. Those are different problems with different fixes, and the app only knows how to solve the first.

What the app thinks happened

A plan is a calendar of workouts. When you skip some, the cheapest thing a calendar can do is compress. Depending on the tool, you’ll see one of these:

  • Catch-up logic. The plan shifts forward and squeezes the remaining weeks, so you jump from where you would have been to the race date with fewer steps in between.
  • Silent resumption. You tap “continue” and week 7 shows up, as if week 6 ended yesterday.
  • Regenerated plan. Some apps rebuild from your goal date and a pace estimate, often one still based on your pre-injury race result.

None of these ask the question a coach would ask first: what can your tissue tolerate today? Bone, tendon and muscle adapt on different timelines, and the cardiovascular system is the fastest to build and the fastest to fool you. After six weeks off, your lungs will tell you that you’re nearly fine. Your Achilles, tibia or hamstring has not been consulted.

Why the data misleads the app (and you)

The apps lean on a few inputs: recent mileage, recent paces, and the target date. After a layoff, each one lies.

Chronic load is wrecked. Many platforms, including Garmin’s Training Status and Strava’s Fitness & Freshness, calculate fitness from a rolling window. Take a runner who held 45 km a week for two months, then did nothing for six weeks. Their acute:chronic workload picture looks like this:

Week   km    Note
-8     44
-7     46
-6     45    (injury)
-5      0
-4      0
-3      0
-2      0
-1      0
 0      0    restart

Stay with the common 4-week rolling average and your chronic load is now zero. A first 30 km week then reads as an enormous spike, so some tools flag it, while others simply have no baseline and fall back to your profile defaults. Either way, the number isn’t telling you what’s safe. It’s telling you what it remembers.

Pace estimates are stale. Your VO2max estimate on a Garmin watch will drop after a few weeks off, but your plan’s target paces may still come from a 10K you ran in April. The first tempo session is then prescribed at a speed your heart can sort of manage and your calves can’t.

Heart rate feels reassuring. Easy running at 135 bpm will feel comfortable almost immediately. That comfort is aerobic. Connective tissue takes much longer to catch up, which is exactly why the second and third weeks back are where relapses happen.

A worked example

Take Dana, 38, marathon in 10 weeks, peak plan week of 62 km. Dana runs 50 km a week, then gets a calf strain and does no running for five weeks. The app offers two options: continue with the plan as written, or “adjust for missed training.”

Adjusting produces this:

WeekOriginal planApp’s “adjusted” plan
152 km48 km
255 km52 km
345 km (cutback)56 km
458 km58 km

Dana hasn’t run for five weeks. Week 1 at 48 km is nearly her former weekly load, delivered cold, with two quality sessions. It looks cautious only against the original plan, not against Dana’s body.

Here’s what a sane restart looks like instead:

WeekDana’s manual planNotes
13 x 20 min run/walk, ~12 kmAlternate days, all easy, 1 min walk per 4 min run
24 x 25 min continuous, ~20 kmNo hills, no speed
35 runs, ~28 kmLongest run 8 km
45 runs, ~34 kmFirst strides only (4 x 15 s)
55 runs, ~38 kmLongest run 12 km
6Cutback, ~30 kmReview before adding intensity

That’s roughly a 10 percent weekly step once she’s past the first fortnight, after an initial reintroduction block. At week 6 she’s at 38 km against a previous 50, and nobody is panicking about that. With 10 weeks to go, she isn’t going to hit 62 km peak, and that’s the point. She may run the marathon at 44 km peak weeks and finish healthy, which beats the alternative of a DNS.

What to change by hand before you restart

Do these before you press go on whatever the app serves up.

  1. Pick your restart week by days off, not by the plan. A rough guide: under 1 week off, resume close to normal. 1 to 2 weeks, start at about 75 percent of prior volume. 2 to 4 weeks, around 50 percent. Beyond 4 weeks, rebuild from roughly 25 to 30 percent and treat it as a short base block. These are rules of thumb, not prescription, and a clinician’s clearance outranks them.
  2. Delete all intensity for the first two to three weeks. No tempo, no intervals, no hill repeats. Strides come later, once easy running is boring.
  3. Cap the long run. Make it no more than about 30 to 35 percent of that week’s volume, and don’t let the plan restore your old long run until the weekly total supports it.
  4. Reset your paces. Drop target paces by 10 to 20 seconds per km, or just run by feel for a block. Update your threshold or race-time input in the app if it lets you, and don’t trust the old one.
  5. Fix the load baseline. In Garmin Connect or TrainingPeaks you can’t easily erase six empty weeks, but you can ignore the load-focus warnings and read the trend yourself: rising weekly km, no single run above 30 percent of the total, no consecutive hard days.
  6. Rewrite the race goal. If the finish line is 8 weeks away and you’ve lost 6, switch from a time goal to a finish goal in the app, or move to a shorter event. Apps default to preserving the goal date, but you can change it.
  7. Add a symptom gate. Between runs, check: pain under 2/10 while running, no limp afterwards, and no worse next morning. If any fail, repeat the week, don’t advance it.

Using ChatGPT for this, if that’s your tool

A chatbot plan is no better unless you feed it the right facts. Don’t write “I missed 5 weeks, update my plan.” Instead tell it: the injury, the date you stopped, the date cleared, your last four healthy weeks of mileage, what the injured site feels like on walks, and a hard ceiling for weekly increases. Then ask for a plan that starts at a specific volume. Without a number, the model will happily approximate the original schedule, because that’s the pattern it was shown.

Then read the output with your own Strava open. If week 2 is more than 10 to 15 percent above week 1, or if a quality session appears before week 3, reject it.

The right mental model

Your plan is a prediction made when you were healthy. An injury invalidates the prediction, and no amount of rescheduling updates it. Before your first run back, decide your own starting week, your own caps and your own exit rules, then let the app fill in the details.

For the full staged approach, including how to match your restart to the type of injury, see our guide to return to running after injury.