Last updated: August 26, 2026

The AI Coach

Incredible has a coach you can talk to about your own training. What makes it different from a chat window bolted onto an app is that it does things rather than only describing them. Tell it your knee is sore and it rebuilds the week around it. Ask it to move Thursday's session to Saturday and it moves it. It will build a workout and put it on your watch. And when it explains one of your scores, it explains it from the model the app actually uses, not from general advice.

It is off until you turn it on, and it is the only part of the app that sends your training and health data to a server.

I wanted it running on your phone instead. It does not yet, and this page says honestly why. Getting it there is still the ambition.

Nothing Happens Until You Turn It On

The first time you open the coach there is nowhere to type. There is a screen explaining what it does, and a button. Until you tap Turn On Coach, your phone does not even ask my server for the token it would need to start a conversation.

One switch turns it off again and takes it out of the toolbar. Nothing else in the app depends on it. Your workouts, health data and plans stay on your device and sync through your own iCloud account, which I cannot read.

Why It Is Free

Three things together: a generous startup grant of credits to run it on, a smaller and cheaper model doing the work, and a hard ceiling on how much any one person can use it. None of the three would be enough on its own.

The app stops you at 50 requests a day and 250 a week, counted on your phone. Even somebody who uses the coach as hard as the app will let them costs very little to serve across a whole week. That is what makes a grant of credits cover a lot of people for a long time, and it is the whole reason the coach is not behind a subscription.

The cheap model is a deliberate choice with a cost attached. The coach runs on a smaller model, picked for what it gives per dollar rather than for being the best available. A better model exists, it costs more, and I am not buying it.

Automatic top up on the balance is switched off, so if the credits run dry the coach stops rather than quietly billing for more.

What I do instead of paying for a bigger model is test. I have 71 cases, each one judged on its own against written criteria. The run I made while writing this passed 67 of them. That is my judge, my cases and my criteria, so read it as a regression suite that catches things getting worse, not as a benchmark against anybody else.

One of the four failures said it could not see your plan, when the plan was named on the screen in front of it. That is a fact attached to the wrong thing, which is exactly what the next section disqualifies Apple's model for. What differs is how often it happens, not what kind of mistake it is.

And 67 flatters me. Earlier the same day, a run failed fourteen cases, and six of those passed on a rerun with nothing changed. A third of the cases are scored from a single sample where the rest get two, which is enough to move the number on its own. So read 67 of 71 as roughly where it sits. Read anybody's green test run the same way, mine included.

Everything else in Incredible is free and stays free. The coach is the one part I cannot promise, and the reason is simple: it runs on a model that costs money every time you use it. That is not a promise anyone can make to everybody forever.

Why It Is Not On Your Phone Yet

Because I measured Apple's models, and they did not reach the bar I set.

In August I built a test harness. It runs the real coach instructions, the real reference material and real questions against Apple's models, and scores the answers with the same automatic judge I use on the coach I ship.

Apple has two models here. The one that runs on the phone itself is too small to hold the coach at all: the coach's instructions plus a description of your screen were already over its limit before you type a word. Apple's other model runs on Private Cloud Compute, which is Apple's own servers, and that one is big enough. So that is the one I tested properly, across ten different setups, using the same questions and the same judge each time.

Across those ten setups the same kind of mistake kept coming back. Apple's model could not reliably keep several numbers attached to the right things: it would take a number that belonged to one thing and describe it as belonging to another. Here is one example, because it shows the problem in a single sentence.

Incredible gives each day a training load score, and a target range to keep it inside. On the day in the test, the screen showed a load of 70 against a target of 46 to 66, so the day was above target. It also showed that the one strength session that day had scored 61 on its own.

Apple's model looked at that and wrote: "load at 61 pushed above your 46-66 target."

That is wrong twice. It used the session's score, 61, when the day's score was 70. And it called 61 above a range that runs up to 66, when 61 is inside it. The rule that a number inside a range is never above it was written into that model's instructions word for word.

The coach I ship answered the same question correctly, in the same run.

That is one example, not the whole case. I am showing it because it is easy to check, and because the mistake in it is the mistake that kept happening: a number attached to the wrong thing. Different questions, different setups, same kind of error.

Nothing I tried fixed it. I let the model think for longer, I cut the instructions down to a shorter version, and I split the turn in two so that it gathered the facts first and then wrote only from what it had gathered. Apple's model lost by a clear margin in every setup, and the setup closest to what I actually ship was among the worst.

I am not quoting the scores. While writing this I found what may be a counting error in my own comparison, so I am rechecking the numbers before I put any of them in front of you.

Here is what that test is worth. It was a small set of questions. The instructions were mine, tuned for months against a different model. The test set was mine and the judge was mine. So it shows that I could not get Apple's model to do this job. It does not show that Apple's model cannot do it.

Most apps would probably never run into this. This one asks a model to hold several numbers that are close in size and mean different things, and never to contradict what you can see on your own screen.

Two things went in Apple's favour. Whenever a setup could call tools, it picked the right tool every time, and that was the part I expected to go wrong. It was also faster. And Private Cloud Compute is not less private than what I use today. It is more private, which is exactly why I wanted it.

What I am waiting for is Apple. Apple is building a stronger version of the models this page is about, and when one of them is good enough for this job, the coach can run on your own phone or on Apple's private servers instead. Then it costs me nothing to run, so it is simply free, and your training data stops leaving your phone at all. That is the ambition, and it is why I tested Apple's models before anyone else's rather than after.

Until then I keep testing. I rerun the whole thing when Apple updates its models, when the stronger tier opens up to developers, and when the next version of Xcode ships. I move the coach across when Apple's model can answer the same questions as well as the one I use now, without a single answer that misstates your own numbers.

What It Can Do

It reads your training data and suggests changes to it. It never makes a change on its own. When it wants to change something, the app draws a card saying exactly what will happen, and nothing happens until you tap that card. Your tap runs the change through the same code the app's own screens use.

There is one exception. The coach can start and stop the rest timer without a card, because a countdown that waits for a tap is not a countdown.

The coach is told never to invent a session, a date or a score. That is an instruction I give the model, not a wall it cannot get past. It can still get things wrong.

What Leaves Your Phone

When you send a message, the app sends what the model needs in order to answer it, and nothing that says who you are. That is:

  • the conversation so far
  • a summary of your training: your age, sex, body weight and VO2max where Apple Health has them, and then the last five weeks, each week as a count of sessions, a distance, a duration and a load score
  • your plan name and up to three of your goals
  • a written description of what is on your screen at that moment
  • the notes the coach has kept about you

Incredible has no accounts. There is no name, no email address and no sign up anywhere in the app, so there is nothing for any of this to be attached to. No location goes either.

What it travels with instead is a random id that your phone invents. Delete All Data throws that id away and starts a new one.

That gets it close to anonymous, though not completely, and the two gaps are worth knowing. The id stays the same until you reset it, so anything sent under it can be tied together as coming from one person. And my server can see the internet address you connect from, as any website can. Neither of those is your identity, but neither is nothing.

My server keeps no database. Its log records how many requests came in and what kind they were, with no id and no message text in it. It used to have one exception: when a reply failed, the provider's error message could quote the piece of text it objected to, and that landed in the log. That is fixed. An error that might quote you is reduced to its shape before it is logged.

Where Memory Lives

Your conversations, and the notes the coach keeps about you, are ordinary files inside the app on your phone. If you use iCloud Backup, they sit inside that backup. Nothing is kept as a record anywhere else, not on my server and not at any other company.

You can read every note the coach has written, delete any of them, or switch memory off entirely. Deleting a note hides it from the coach straight away, though the line stays in the file marked as deleted rather than being erased. Delete All Data removes the notes, the conversations and the random id.

Who Writes The Reply

Two companies are involved in writing a reply. A third one gets your text only if you choose to send it.

My server runs on Vercel, in Frankfurt. Your message goes from there through Vercel's AI gateway to the provider serving OpenAI's model, and the reply comes back the same way. I have a data processing agreement with Vercel, and the providers operate under Vercel's own agreements.

Every request that carries your text now demands zero data retention. The gateway may only send it to a provider under a zero retention agreement, and if no such provider is available the request fails rather than falling back. Today that provider is Microsoft Azure, serving OpenAI's model. Nothing you write trains a model, and nothing you write is kept: not by my server, not by Vercel, not by the provider. The request is processed and it is gone.

This took two tries. I switched zero retention on once before, on 25 August, and the route it forced refused tool calls, which is how the coach looks anything up. Every reply that needed to check something died, and I reverted within the hour. Two days later the same enforcement worked through a different interface to the same provider, and it has been on for every message since 27 August.

So Delete All Data clears your phone, and your phone is the only place anything exists to clear.

Every message is also screened for signs of self harm. That check is a separate call that goes straight to OpenAI's moderation endpoint, which by OpenAI's own retention table keeps nothing and trains on nothing. If it fires, the reply is told to answer about your immediate safety rather than about your training. Nothing is logged and nobody is notified.

The third company is the feedback form. Rating a reply down opens it. Sending it shares that reply, your last message, and anything you write in the box, with PostHog. That text can describe your training and your body. Nothing goes until you tap Send, and Delete All Data cannot reach it once it has gone.

The privacy policy and the terms cover the rest, including that replies can be wrong and that the coach is not a doctor.