The first time I asked AI for a training plan, I wasn’t training for a marathon. I was trying to figure out how to bridge from marathon fitness into my first ultra trail block, and I wanted the plan to actually account for elevation gain, not just weekly mileage. What came back read like a marathon plan with the word “trail” swapped in: sixteen weeks, four phases, a taper, all correctly labeled. Nothing about elevation. Nothing about hiking the climbs instead of running them. It didn’t know how many miles I was running that month, or whether Saturday or Sunday was my long run day. It didn’t know that my left IT band starts complaining somewhere past 90 minutes on flat ground, let alone on descents.
The plan looked complete because it had all the right vocabulary: base building, peak training, taper. What it didn’t have was any information about me, because I hadn’t given it any. That’s the actual problem with AI-generated training plans, and it has nothing to do with which tool you use. Whether you’re running it through ChatGPT or Claude, a single vague prompt gets you the statistical average of every free plan already published online. Front-load the same tool with your mileage, schedule, terrain, and injury history, and keep feeding it data as the block progresses, and the plan actually holds up. It’s the same tool either time. The outcome changes entirely based on what went into the first message.
Same Prompt, Generic AI Plan #
Ask for “a training plan” and you get sixteen weeks of phases that could belong to any runner, on any terrain. It assumes a base you may not have, ignores that your long run has to move around a work trip every third week, and says nothing about the 1,500 meters of elevation gain your goal race actually has. It isn’t wrong so much as generic, assembled from whatever’s already been published a thousand times, because that’s what it’s drawing on.
Feed it the specifics before it writes anything, and the shape of the output changes entirely: elevation gain treated as its own training variable instead of an afterthought, hiking segments programmed into long runs instead of assumed away, cutback weeks built in instead of missing.
The Intake Prompt: Let AI Ask You First #
The fix I’ve landed on is embarrassingly simple: instead of writing a detailed brief myself, I ask the AI to interview me first, the way an actual coach would on an intake call, before writing a single workout. Whether you’re running this through ChatGPT or Claude, here’s what to paste before anything else:
You are an experienced running coach. Before you write any training
plan, ask me the following five questions one at a time and wait for
my answers before moving to the next one:
1. How many days per week can you realistically commit to running,
and is that a hard limit or does it flex week to week?
2. Which day do you want your long run on, and are there any weeks
where that will need to move (travel, work, family commitments)?
3. What's your current weekly mileage, and what's the longest run
you've done in the last 4 weeks?
4. Do you have access to a gym or strength training, and how many
sessions per week can you realistically fit in alongside running?
5. Do you have any current or recurring injuries, and is there a
specific race you're training for? If so, tell me the distance,
how many weeks away it is, and the terrain (road, trail,
elevation profile).
Once I've answered all five, build the plan with these rules:
- If the time remaining isn't realistic for the goal distance given
my current base (a marathon in 6 weeks is a very different
problem than a 10k in 8 weeks), say so explicitly before building
anything, and propose a safer target instead
- Include a genuine cutback week every 3rd or 4th week (reduce
volume by roughly 20-30%, not just intensity)
- Anchor the long run to the day I specified, with a fallback plan
for the weeks I said it might move
- Treat this as a first draft. At the end, tell me explicitly that
we should revisit and adjust it weekly based on how each week
actually goes, not something to follow unchanged for the next
several months.
Five questions, not twenty. Enough to cover the variables that actually separate a usable plan from a generic one, without turning the intake into a chore you abandon halfway through. Nothing stops you from adding more (sleep quality, cross-training, race history) if you want a sharper plan. These five are the floor, not the ceiling: the minimum an AI needs to stop guessing and start building something that won’t run you straight into an injury.
The Numbers, Before and After #
“Write me a training plan” gets you sixteen weeks of phases that could belong to any runner. Run the five-question prompt first, answer honestly, and the shape of the plan changes in ways that actually matter. In my case: the generic version kept me at a marathon-like weekly average of 50 to 75km, with no mention of elevation at all. The version built from my actual answers moved that average up to 80km, peaking at 95km in the biggest week. It also added an explicit weekly elevation gain target of around 1,500 meters, a number the generic plan never asked about and so never tracked. Long runs also got anchored to Saturdays with hiking segments once the block shifted from marathon-paced running into climbing-heavy trail sessions, and the taper acknowledged I’d be power-hiking climbs on race day, not running a flat negative split.
Why These Five Prompt Questions, Specifically #
Days per week and flexibility. A plan built for 6 days collapses the first time real life intrudes on day 5. Stating the honest number, and whether it flexes, is what lets the AI build something you’ll still be following in week 10.
Long run day. Left unspecified, generated plans default to Sunday and rarely include a real cutback week; they just keep climbing. Naming your actual long run day, and your terrain if it isn’t a flat road race, removes both problems at once.
Current mileage and longest recent run. This is the single most common failure mode in AI-generated plans: an assumed base that was never confirmed, followed by a long run progression that ramps as if it had been.
Strength training access. Left unasked, most generated plans either skip strength work entirely or bolt on generic sessions that ignore whether you actually have a gym, a squat rack, or twenty minutes with resistance bands on your kitchen floor.
Injuries, race, and timeline. A “marathon” answer and a “100k with 4,000 meters of elevation gain” answer should produce genuinely different plans, and most won’t unless you say so upfront. The weeks-away number matters just as much as the distance. A marathon 6 weeks out from a 50km base calls for a very different, more conservative plan than a 10k 8 weeks out, and a coach who skips that question can’t tell the two apart. Say so too if you’re carrying a nagging injury the plan needs to train around.
Treating the Plan as a Draft, Not a PDF #
The old failure mode with any training plan, AI-generated or downloaded from a coaching site, is printing it out, taping it to the fridge, and following it regardless of how the actual weeks go. A static document can’t respond to a bad night’s sleep, a hot week, or a race that got moved.
The way I’ve started using it instead: after key long runs, especially the climbing-heavy ones, I paste back the elevation profile, pace, and how the climbs actually felt, and ask for the following week to adjust. On a longer cycle, I export the last two weeks of runs from Strava or Garmin and hand the AI the actual data: distance, pace, heart rate, elevation gain, rather than my memory of how the block felt. Doing that every two weeks catches drift a lot faster than waiting for something to hurt. That’s the real difference between a plan and a PDF. One responds to the terrain that actually showed up on your GPS file. The other doesn’t know it happened.
Key Takeaways #
- A complete-looking plan can still assume a running base, schedule, terrain, or injury history you never confirmed
- The gap between a generic AI plan and a genuinely useful one is almost entirely explained by what went into the first prompt
- Ask the AI to interview you first: five questions covering days available, long run day, current mileage, strength access, and injuries, race, and timeline
- Add more questions if you want, but treat these five as the floor for avoiding an unsafe plan, not the ceiling for a perfect one
- Import your actual running data every couple of weeks so the plan adjusts to what happened, not just what was scheduled
- Explicitly request cutback weeks; AI-generated plans default to a straight climb in volume
- Frame the output as a draft from the start, and keep feeding it data after key sessions instead of following it unchanged
If you’ve tried prompting ChatGPT or Claude for a training plan and gotten something that felt half-right, the fix probably isn’t a different tool. It’s asking it to ask you first.
Have you tried something like this? I’d like to hear what your five answers changed in the plan you got back.
Related: Why Your Easy Runs Are Actually Zone 3
- Photo by Pierre-Antoine FRANCK