FTP and zones review

FTP and zones review

“Should I bump my FTP?” is a recurring question — and the wrong answer in either direction costs you weeks of training at the wrong intensity. This recipe makes the assistant weigh real best-effort evidence before recommending a change, and only updates zones with your sign-off.

When to use this

  • After a ramp test, 20-minute test, or a breakthrough effort.
  • Every 4-6 weeks during a build, as a routine threshold check.
  • When workouts feel consistently too easy or too hard for their prescribed zone.

The recipe

Help me decide whether my FTP or threshold has actually moved. Use icuvisor
with my intervals.icu data.

1. Read my athlete profile: current FTP, threshold heart rate, threshold pace,
   and zones for each sport.
2. Pull my best efforts and my power curve (and pace curve, if I run) for the
   last 90 days.
3. Compare those against the prior 90 days to see which durations changed.
4. If I name a ramp or test activity, read its intervals to extract a fresh
   threshold estimate from that effort.

Then:
- Tell me whether the evidence supports raising, holding, or lowering each
  threshold, and by roughly how much.
- Show the specific durations where I actually gained or lost.
- If the evidence is thin or noisy, say so — do not force a change.

If we agree on a new value, update my cycling zones to match — but show me the
exact before/after first and wait for my explicit OK.

What icuvisor does

StepToolWhy
1get_athlete_profileCurrent thresholds and zone definitions.
2get_best_efforts, get_power_curves, get_pace_curvesPeak outputs by duration.
3analyze_efforts_deltaHow best efforts shifted versus a baseline window.
4get_activity_intervalsReads a named test activity for a fresh estimate.
5update_sport_settingsApplies new zones — only after you confirm.

A good answer looks like

Cycling FTP — evidence supports a small raise.

Current FTP: 282 W (get_athlete_profile).

Versus the prior 90 days (analyze_efforts_delta): your 5-min power is up 14 W, 8-min up 11 W, and 20-min up 9 W (to 297 W). Sprint and 1-min power are flat. The gains cluster around threshold and above — consistent with a real FTP move, not just freshness.

Recommendation: Raise FTP from 282 W to roughly 290 W — a conservative read of the 20-min gain (about 95% of 297 W minus a margin). Holding at 282 W would now under-prescribe your threshold work.

Proposed zone change — say the word and I will apply it with update_sport_settings:

CurrentProposed
FTP282 W290 W
Z2 top207 W213 W
Z4 (threshold)268-296 W276-305 W

Variations

  • Running: swap to threshold pace and heart rate — “review my threshold pace from the last 90 days”.
  • Ramp test extraction: “Find my most recent ramp or threshold test — make one get_activities call over the last 120 days and scan names for ‘ramp’, ‘FTP test’, or ’threshold’. Read FTP, threshold HR, and any VO2max estimate from that activity only; if none is found after one scan, say so rather than re-querying.”
  • Heart-rate athletes: ask for get_hr_curves and a threshold-HR check instead of power.

Why this prompt works

  • Evidence before action. Asking for best-effort deltas across durations stops the assistant from rubber-stamping an FTP bump just because you asked.
  • “Do not force a change.” Freshness inflates short tests. This line lets the assistant say “hold” — often the right call.
  • Confirm-before-write. Zone updates are a gated write. Requiring a before/after preview means you never get a silent zone change.