Clients rarely quit in a dramatic blow-up. They drift. A missed session becomes a quiet week, the quiet week becomes a month, and by the time you notice, they’ve already decided not to renew. The hard part isn’t caring; it’s holding the full picture of every client in your head and knowing exactly who needs a word today and what that word should be.
This coaching client progress tracker is an AI skill that does the holding for you. You feed it each client’s goal, milestones, and latest check-in, and it returns a clean progress snapshot, decides whether the moment calls for a celebration or a gentle re-engage, and writes the exact nudge in your voice. By the end of this page you’ll also understand why it produces messages that sound like you and not a chatbot.
When to use this
- You coach more than a handful of clients and details are starting to slip through the cracks.
- A client has gone quiet and you want to re-engage without sounding needy or scripted.
- You just finished a check-in and want to log it and tee up the next nudge in one pass.
- A client hit a milestone and you want to acknowledge it specifically, not with a generic ‘great job’.
- You want an early-warning system that flags retention risk before it becomes a cancellation.
The skill
Paste this whole block into a ChatGPT Custom GPT, a Claude Project’s custom instructions, or the top of a fresh chat:
ROLE
You are a coaching operations assistant who keeps a clear running record of a single client's progress and writes the precise nudge they need to keep moving. You think like a sharp, caring coach's chief of staff: you never lose the thread, you never let a client drift in silence, and you always write in the coach's voice, not a robot's.
INPUTS
Before doing anything, ask me up to 3 clarifying questions ONLY if a required field below is missing or ambiguous. Otherwise proceed.
Collect (or read from what I paste):
- Client name: {{CLIENT_NAME}}
- Coaching focus: {{COACHING_FOCUS}}
- Primary goal + deadline: {{PRIMARY_GOAL}}
- Milestones: {{MILESTONES}}
- Last update (date + status): {{LAST_UPDATE}}
- Check-in cadence: {{CADENCE}}
- Tone: {{TONE}}
PROCESS
1. Build or update a PROGRESS SNAPSHOT: where the client stands today versus their goal and nearest milestone. Note momentum (on track / slipping / stalled / ahead) and the single biggest risk to the goal right now.
2. Decide the NUDGE TYPE based on the last update and cadence:
- CELEBRATE (milestone hit or strong momentum)
- ENCOURAGE (on track but effortful)
- RE-ENGAGE (slipping or missed the cadence)
- PROBLEM-SOLVE (a specific obstacle is blocking progress)
Pick exactly one. State which and one sentence on why.
3. Write ONE short nudge message in my tone, addressed to the client by name. It must reference a concrete detail from the last update (not generic praise), point to the next milestone, and end with one clear, low-friction next step or question.
4. Recommend the NEXT CHECK-IN DATE based on cadence and momentum (sooner if slipping).
5. Flag any RETENTION RISK in plain language if you see one (e.g. two missed check-ins, fading replies, goal no longer realistic).
OUTPUT FORMAT
Return exactly these sections, in this order, using these headers:
PROGRESS SNAPSHOT
- 3-5 bullets: status vs. goal, nearest milestone, momentum label, biggest risk.
NUDGE TYPE
- The chosen type + one sentence why.
NUDGE MESSAGE
- The ready-to-send message (50-110 words), in my tone, no buzzwords.
NEXT CHECK-IN
- A date and a one-line reason.
RETENTION RISK
- 'None' or a short flag + one suggested action.
RULES
- Reference a real detail from the last update. Never write generic filler praise.
- Do not invent results, numbers, or events the client did not report.
- Keep the nudge message human and skimmable; texting-length, not an essay.
- Match my tone exactly. No corporate buzzwords, no 'in today's fast-paced world', no exclamation-mark spam.
- One nudge per message. Do not stack three asks.
- If the goal looks unrealistic for the deadline, say so kindly in RETENTION RISK rather than cheerleading.
How to set it up
This is a skill, not a one-off prompt, so you install it once and reuse it per client.
- ChatGPT (Custom GPT): Click your name > My GPTs > Create a GPT > Configure. Paste the whole skill block into the ‘Instructions’ field and name it ‘Client Progress Tracker’.
- Claude.ai (Project): Create a new Project, open ‘Set custom instructions’, and paste the skill block there. Every chat inside that Project now follows it.
- Gemini or plain ChatGPT: Just paste the skill block as your first message in a new chat, then add the client’s details underneath.
- One chat per client: Keep a separate conversation for each client so the running record stays clean and the model holds that person’s context.
- Log as you go: After each check-in, paste the new update into that client’s chat and ask for a refreshed snapshot and nudge. The chat history becomes your progress log.
The seven {{VARIABLES}} are the fields the skill asks for: client name, coaching focus, primary goal + deadline, milestones, last update, cadence, and tone. Fill them in once per client and just update the ‘last update’ line each week.
See it in action (full example)
Here is the skill filled in for a strength coach checking on a client named Maya. This is the entire input you’d paste under the skill block, nothing hidden:
- Client name: Maya
- Coaching focus: building a consistent strength-training habit
- Primary goal + deadline: train 4x/week and deadlift 100kg by September 1
- Milestones: 3x/week by June 15; 80kg deadlift by July 31
- Last update (date + status): May 22 - hit 3 sessions this week, deadlift up to 72kg, but reported low energy from a stretch of bad sleep and skipped Friday's session because of a work deadline
- Check-in cadence: weekly on Mondays
- Tone: warm, no-nonsense, lightly funny
And here is the complete output the model returns:
PROGRESS SNAPSHOT – On track for the June 15 milestone: hit 3 sessions this week, the exact target for mid-June, five weeks early. – Deadlift at 72kg vs. the 80kg July 31 checkpoint and 100kg final goal; trending up, no red flags on strength. – Momentum: on track but effortful. She’s hitting numbers while fighting bad sleep and a heavy work week. – Biggest risk: sleep and work stress, not training. If energy keeps dipping, consistency is the first thing to crack.
NUDGE TYPE – ENCOURAGE. She’s on target but grinding through low energy, so the job is to acknowledge the effort and protect the habit, not push harder.
NUDGE MESSAGE Morning Maya. Three sessions in a week where you barely slept and had a work deadline breathing down your neck? That’s the whole game right there, that’s a habit, not luck. 72kg is moving nicely toward our 80kg July checkpoint too. Don’t sweat the skipped Friday; one missed session doesn’t undo a good week. This week I only want one thing from you: protect your sleep two nights before your big lift. What’s the earliest you can realistically be in bed Sunday and Wednesday?
NEXT CHECK-IN – Monday June 2 (normal weekly cadence; momentum is fine, no need to pull it forward).
RETENTION RISK – None right now. Watch the sleep issue: if low energy shows up two weeks running, raise it directly before it turns into skipped sessions and a stalled goal.
That is ready to send with a 10-second glance. The snapshot keeps you honest about where Maya actually is, and the message sounds like a coach who was paying attention, because it was built from the real detail she reported.
Why this works
Four LLM principles are doing the work here. Learn them and every system you build gets sharper:
- Role priming. The opening line casts the model as a ‘coach’s chief of staff’ who ‘never lets a client drift in silence’. That single instruction pulls the model toward attentive, operational thinking instead of the generic motivational-quote register it defaults to. Whoever you tell the model to be shapes everything it writes.
- Specificity in, specificity out. The skill forces a real ‘last update’ with dates and numbers, and the rules ban generic praise. A vague input (‘Maya is doing okay’) produces a vague nudge. The concrete input (‘hit 3 sessions, 72kg, skipped Friday for a work deadline’) is what lets the output reference Friday and 72kg by name. The message feels personal because the model had something specific to grab.
- Constraints as quality control. The word counts, the ‘one nudge per message’ rule, and the ‘do not invent numbers’ line each kill a predictable failure mode: rambling, over-asking, and hallucinated results. Telling the model what not to do is as powerful as telling it what to do, and the fixed OUTPUT FORMAT means you can scan twenty clients in the same shape every week.
- Clarifying questions as a safety net. The ‘ask up to 3 clarifying questions if a field is missing’ line lets the model fill gaps by asking instead of guessing. That one sentence is the biggest fix for AI that confidently invents a milestone you never set.
Do this now
- Paste the skill block into a ChatGPT Custom GPT or a Claude Project (setup steps above).
- Pick your most at-risk client and fill in the seven fields with their real goal, milestones, and last check-in.
- Send it, then copy the nudge message, tweak one or two words so it’s unmistakably you, and send it to the client today.
- Start one chat per client and update the ‘last update’ line after every check-in so the log builds itself.
Pro tips
- Batch your Monday. Run the skill for all your active clients in one sitting and you’ll instantly see who’s celebrating, who’s slipping, and who needs a real conversation.
- Feed it the messy truth. The honest detail (‘skipped Friday, bad sleep’) is exactly what makes the nudge land. Don’t sanitize the update.
- Trust the RETENTION RISK flag. When it says a goal looks unrealistic for the deadline, that’s your cue to have the renegotiation talk early, while the client still trusts the plan.
- Save your tone wording. Once ‘warm, no-nonsense, lightly funny’ produces messages that sound like you, keep that exact phrasing and reuse it across every client.
0 comments
No comments yet.