
Moe Talaat
Founder, Teshape
App developer with 10+ years building iOS and Android apps for companies worldwide. Coached 80+ clients over a decade ago before the career shift — now building the platform those coaches deserved.
- 30 articles
- Writing since Nov 4, 2025
- Coaching 6Programming 6Nutrition 6Business 6Product 6
All articles
30 total
The check-in template that made my drop-offs visible.
A four-week sliding window on three signals catches 80% of dropouts two weeks early.

The right way to fire a client (and why we wait too long).
A short script and a longer argument about who you actually want on your roster.

The first 30 days with a new client, week by week.
Week 1 is data, week 2 is calibration, week 3 is the real plan, week 4 is renegotiation.

How to run a 50-client roster without losing your evenings.
Block 4 hours on Sundays, template the macro, ack within 30 minutes, drop the calls.

The mid-engagement plateau, and what to do when month 3 stalls.
Drop intensity 20% for two weeks, add one novel movement, run one non-training conversation.

The case against linear periodisation for hybrid clients.
Linear assumes a clean recovery surface. Hybrid clients do not have one.

RPE vs. percentages, when each one quietly stops working.
Use percentages for the working set, RPE for the back-off. The hybrid survives both failure modes.

Hypertrophy blocks for clients who refuse to deload.
Step the volume in waves and run a hidden 60% intensity week as the fourth wave.

Aerobic base for lifters: the 16-week prescription that fits.
90 minutes of zone-2 per week. Strength stays. One threshold session enters at week 8.

Conjugate periodisation for general-population clients.
Rotate the max-effort lift weekly. Gen-pop clients can run this for 6+ months without burnout.

The minimum effective dose for strength gains in busy clients.
Two sessions a week, three compound lifts, three sets of 5-8 at RPE 7. Real gains for 18+ months.

Macro tracking for clients who hate macro tracking.
A two-tier system: count for 4 weeks to calibrate, then quietly hand off to vibes.

Hydration logging is overrated. Habits that actually move the needle.
Hydration follows downstream of sleep, sodium, and protein. Drop the 3-litre prescription.

Protein targets that survive contact with a real schedule.
1.6-2.0 g/kg/day, across 3 meals not 5, using anchors not totals.

Why "intuitive eating" loses to a structured 6-week count.
Intuitive eating is a destination, not a starting point. Calibrate first, then graduate.

Eating out without breaking the plan: a coach’s framework.
Pre-commit to 3 default orders per cuisine. Stop trying to calculate on the spot.

The case for one weighed meal a day.
One meal, six weeks, usually breakfast. Trains the eye, kills the math, builds the habit.

Pricing your roster without burning out the next quarter.
Calculate your hours, not your sessions. Solo coaches hit a sustainability ceiling at 35.

From 12 to 48 clients without a single new sales call.
Referral loops, retention math, one content channel. Three years to 4x the roster.
A refund policy that does not break trust or your runway.
Pro-rata refunds, no refunds on completed months, hard 30-day "didn’t fit" window.

Why I stopped offering bespoke programming.
Bespoke takes 4x the design time and earns the same. The 3-template system replaced it.

The contract clause every coach gets wrong.
The 30-day notice-to-terminate clause is the most important sentence in a coaching contract.

How to raise your rates without losing your best clients.
Grandfather existing clients, apply new rates to new sign-ups, announce 90 days out.

What we shipped in April, and the one thing we pulled.
Habit streaks, body-measurement parity, and the dashboard widget that did not earn its space.

Why I rebuilt the check-in feature three times.
V1 was a form. V2 had no reply UX. V3 is the conversation, not the data collection.

The two-portal architecture (and why one app beats two).
One binary, one login, two role views. The "I am both" use case keeps validating the choice.

What our offline engine had to learn the hard way.
A queue, idempotency keys, server-side conflict resolution. Anything more clever falls apart.

Shipping iOS-first: the case for and against.
Half the dev time, 40% smaller addressable market. The right trade depends on who is buying.

The week we deleted Classes (and why bigger is not better).
8% of usage, 30% of bugs. We removed the feature in a 1-week sprint. Engagement went up.
