Pet, coins, and streaks
The ED-safe gamification: a caretaking pet, soft streaks with rest days, and opaque coin rewards that are never explained or tied to eating amounts.
Pippa has a light game layer, but it is designed to avoid the one thing an eating-disorder app must never do: turn eating into a score. Everything here rewards showing up, never how much someone ate.

The pet
At the center of the home screen is Pippa, a pixel-art pet. When your client logs a meal, whether by photo or by describing it, the pet happily munches a cookie back on the home screen, and a little speech bubble pops up with a warm line ("yum, thank you 💛", "proud of you 🌸"). Those lines come from a friendly phrase bank the client can extend under What Pippa Says in Settings, so the payoff feels personal. You can add lines to that bank too — see Encouragement from you below. That little animation is the whole feedback loop: the emotional payoff that replaces numbers. Backdated logs skip the celebration on purpose, so a two-day-old entry never triggers a celebration about food that already happened.
Encouragement from you
The Encouragement from you card on the patient's dashboard page lets you write short lines that Pippa can say in that bubble, in your words rather than ours. The moment right after someone eats is often when reassurance lands hardest, and hearing something from their dietitian or therapist at that moment is a different thing from hearing it from a cartoon pet.
Up to 10 lines, 40 characters each — they render inside a small bubble, so short is a constraint rather than a style note. Something like that took courage, i saw it works; a paragraph does not.
The app's own bank, whatever the client wrote themselves, and your lines all go into one pool, and Pippa picks from it at random. Editing or clearing your list never touches the client's own words, and adding to yours never removes theirs. Nobody's voice gets overwritten.
The app screens every line before showing it, yours included. Anything carrying numbers, amounts, or food rules is silently dropped rather than displayed. This is not distrust of clinicians; it is that this text lands on someone's home screen in the seconds after they eat, which is the worst possible moment for a stray number, so it gets the same gate as anything the client writes.
Your lines are also visible to the client in Settings, listed above their own and marked as coming from their care team. They are read-only there. Without that, an unfamiliar phrase in Pippa's mouth has no visible source and no way to tell apart from something they wrote themselves.
The pet has no loss states. It never gets sad, sick, or hungry because of low intake, and it is never "overfed." Its mood is floored so a light-intake day can never produce a crying pet. There is no lever here that punishes eating or not eating.
Coins
Coins appear now and then and can be spent in the shop on hats and backgrounds. The coins popup tells the client only this: Coins show up now and then as little surprises while you spend time with Pippa. Spend them in the shop on hats and backgrounds!
This vagueness is deliberate. Pippa never says "+3 coins for logging" or "earn coins by eating." Award toasts are just a quiet +N 🪙. If the app spelled out exactly what earns coins, coin math would become score-keeping and a behavioral contingency, which is exactly what we avoid. There is also a small daily participation coin on the first log of the day, and skips count toward it, so honesty is never penalized. Coins can never be purchased with real money, and rewards are never scaled to food amounts or calories.
Soft streaks
Pippa tracks a streak, but softly. It grants automatic rest days, and it never displays a zeroed streak or an "at risk" warning.
Two missed days are absorbed inside any rolling seven-day window. Rolling matters: an earlier version budgeted by calendar week, which meant a patient could lose a streak on Sunday for a day they missed on Friday, or slip four gentle days inside seven real ones depending on when they happened to open the app. Each missed day is now judged on its own, oldest first, against the week around it — so a patient who misses three days in a row spends the allowance on two of them rather than resetting having spent nothing.
The ledger also syncs. It used to be a bare local value, so a reinstall or a second device restored the streak with an empty budget and quietly re-judged days the patient had already been forgiven for.
When a streak does reset, the home screen falls back to lifetime days shown up rather than rendering a bare 0 next to the word "Streak". A zero there is a verdict, and it lands at exactly the moment a patient is most likely to conclude they have ruined it and stop.
There are no perfect-week badges and no "don't lose your streak" pressure, in the app or in notifications. A streak that lapses just quietly pauses; it is never shown as a failure. The streak survives only as a gentle chip on the home screen, and milestones are celebrated in-app by the pet rather than used as a deadline.
One quiet bonus in ARFID mode
In ARFID mode only, the first time a food ever enters the patient's ledger pays a small extra coin, capped at three a day. It is silent like every other coin: nothing tells the patient why the number moved, and the celebration line never mentions coins.
Rewarding the act of tasting is evidence-based here — the tiny-tastes trials used stickers for exactly this — but it stays invisible so it cannot become a target. In treatment mode this bonus, and every other eating-triggered reward, is switched off entirely.
The through-line
None of this is tied to eating amounts. Coins, the pet's happiness, and streak progress all come from participation and self-care, showing up, logging honestly (including skips), and spending cozy time with Pippa. That is the core rule of the whole reward system.
For where clients spend coins and the calmer activities, see Play and extras.
For a collaborative plan to reduce reliance while preserving care, see Stepping down Pippa support.