How it works
Reviewed 2026-08-12 · updated each release
The walkthrough, in the order you would actually meet it. Each step says what has been run on a real phone and what has not, because a screen that renders correctly and a feature that works are different claims.
Setting up
Onboarding asks for the few things every calculation depends on: height, date of birth and sex. You can import them from Apple Health or type them. It also asks for a name, a chat handle and which wearable you use; if you are signed in at that step, the name and handle are stored on our server, and the wearable is sent whenever you are signed in. The setup guide is re-runnable from Settings, so nothing here is a one-time gate you can fail.
Optional connections:
- Apple Health — read-only. BodyComp asks for body composition, height, date of birth, sex, workouts and their effort ratings, energy, heart rate, steps, distance and sleep, and blood glucose only if you turn on glucose tracking. It asks for no permission to write; it never writes to Health. Read-only means it does not change your Health data. It does not mean the figures never leave the phone: two AI features send Health-derived figures, and the privacy policy names which. Both send body composition, and the goal check can send a maintenance figure taken from your Health-recorded burn; the weekly review also sends sleep, energy burned and workouts.
- WHOOP, Oura or Google Health — sign in through WHOOP's, Oura's or Google's own web page; the app never sees that password. Each connection's page says what is read and how to remove it.
- Sign in with Apple — needed for the AI features on our account, for a subscription, for searching USDA's database through us, for chat, and for connecting WHOOP, Oura or Google Health. Everything you type or save into your own log works signed out. Signing in shares no name and no email: the app asks Apple for neither.
Verified on a device: Sign in with Apple, connecting WHOOP and staying connected across its token refreshes, reading real scale data out of Apple Health, reading the workouts in Apple Health from an Apple Watch, WHOOP and others, importing height, date of birth and sex from a real Health profile, and glucose readings from a sensor arriving in the app through Apple Health. Not yet proven: seeing those workouts on the Workout tab, and energy read from Health.
Logging what you ate
Five ways in, and they are deliberately not equal:
- Type it. Name, portion, macros. No network, no AI, nothing to go wrong.
- Search. Public nutrition databases — USDA's FoodData Central, the Canadian Nutrient File and Open Food Facts, plus raw ingredients USDA lacks from Taiwan FDA's table. Most of USDA's unbranded foods and those Taiwan rows ship inside the app, so they show before the network answers. Each search still also goes to Open Food Facts from your phone, and to USDA through us when you are signed in; the Canadian Nutrient File's table is downloaded whole and searched on the phone.
- Your own library. Save a food once, with its serving, and re-log it in two taps. Build recipes and meals out of saved foods.
- Copy a day. Pull yesterday's breakfast, or last Monday's whole day, onto today, and deselect what you didn't have.
- Photograph it. The estimate route, and the one with the most ways to be wrong — see below.
Barcode scanning is part of BodyComp Pro. It still never calls an AI: the order is your own saved foods first, then Open Food Facts, and USDA only when Open Food Facts' figures can't be right. If none of them has a usable record, it offers to photograph the nutrition panel. The AI only runs if you accept that offer. A lookup that fails offers to try again.
Verified on a device: typing, searching, saving foods, editing and re-logging entries, the photo round trip, a barcode lookup finding a real product, and copying a day's food from another day, with the right items at their times of day. Reading a nutrition panel and reading a supplement panel have both run on a phone — what has not been checked is whether the numbers they return are right. Not yet proven at all: planning a future day — built and simulator-tested, never run on a phone.
Where a photo's number comes from
A photograph becomes a macro figure through four steps, and each can be wrong on its own terms:
- Identification. Is it chicken or is it mushroom?
- Portion. Is it 74 g or 155 g?
- Resolution. Which database record did it match, and is that record's per-100 g figure right for this food? USDA holds many rows reading "chicken, breast" that differ in whether the skin was eaten.
- Dropout. Did a component vanish from the total altogether?
They fail independently, which is why the app shows you the components rather than a single number, and why a weight you typed is treated as fact rather than as a hint.
The failures on record. 74 g of rice logged as 155 g, where the model's own note said it had used a standard serving of plain white rice rather than the one in the photograph. Shredded chicken breast read as roasted mushroom — calories were within 12%, protein read 8 g against roughly 26 g. A plate of rice measured by depth camera as four times its real volume, because the mask took in the plate.
These prompted a rework of the whole photo path. The rice was photographed again on 2026-08-14 and sent 3 times: it read 174 g, 74 g and 174 g against 74 g weighed. The chicken and the depth case have not been retried. Until they have, weigh anything that matters.
Turning a goal into targets
Targets are derived from a body, not from a form: the app needs your weight before it will produce them. A DEXA scan or a scale in Apple Health adds body fat and lean mass, but neither is required, and you can type your own numbers instead. You give it a direction and a weekly rate, or a target weight, body-fat percentage or lean mass and a date and it works out the rate that implies; either way it warns about rates that are not achievable — the leaner you already are, the lower the cap. A target below essential body fat is called out in red, in words, with the source behind the figure: the app says there is no version of that goal that works.
It does not stop you saving it. Nothing in BodyComp overrides your own judgement, and nothing in it is a substitute for medical advice.
Optional carb cycling assigns day types across the week, and the day's targets change with them.
Setting up a plan has run on a real phone. Whether its numbers are right has not been checked against a real body. It is also the part most likely to be wrong in a way that looks right, because every number it produces is plausible. Check the maintenance figure against what you would expect.
The day
The Dashboard is the day at a glance: calories and macros against target, what you have burned so far, what you have eaten so far, and the tiles you chose to keep. Every tile can be reordered or hidden.
Food you enter for a day that has not happened is labelled Planned and drawn with a hollow dot on the calendar. It counts toward nothing — not an average, not the energy balance, not the weekly review — until you confirm on the day that you ate it. Nothing else confirms it: no midnight rollover, and no confirm button on a future day.
You can also ask Siri how you are doing, and it reads today's calories and protein against your targets.
Verified on a device: the balance section rendering with a real day behind it, the burn figure rising through the day, and the Siri status phrase reading a real day back correctly. Not yet proven: planning as a whole — it is built and simulator-tested and has never run on a phone, including across a real midnight — whether the plan projection is right against a real day, and the other Siri shortcuts.
The week
On demand — not on a schedule — the app can send a summary of the week you logged to an AI and get a read on it: whether intake matched target, what the training and sleep looked like beside it, and which way the weight trend is moving. It changes no number in the app, and it is instructed to prescribe nothing. What it says comes from a language model reading a spreadsheet of your week, not advice from anyone who has met you, and clause 3 of the Terms applies to all of it.
It is sent as a summary of your logged data and of what Apple Health and your wearables recorded that week, and planned food you never confirmed is not in it. The privacy policy lists everything in that payload — it is the largest single disclosure the app makes.
Not yet proven: the weekly review has run on a phone, but whether what it says is any good has not been assessed.
Body composition over time
Scans and readings on one chart, per metric, scrubbable. A DEXA scan and a bathroom-scale estimate are drawn distinctly because they are not the same measurement, and readings you do not trust can be excluded without deleting anything from Apple Health.
Verified on a device: manual DEXA entry, the chart, PDF import against a BodySpec report, and per-day grouping of real scale readings. Not yet proven: the reading-source controls, which are new.
Getting your data out
Settings → Storage → Export All My Data writes a .zip: your records as plain JSON, your photos as ordinary JPEGs, and a README describing the shape. It is readable in any text editor, on any machine, with no BodyComp installed — and restorable from the same screen. Progress photos are excluded unless you tick the box; API keys and tokens are never included. WHOOP and Oura sleep, your fluid target and your training plan are not in it.
Restoring replaces. Everything currently logged is removed and rebuilt from the file. Your training plan stays, and so do the progress photos on this phone unless the export was made with progress photos switched on.
Verified on a device: export and restore end to end, including a progress photo.
What we haven't proven yet
Everything in this app either has run against real data on real hardware or has not. This is the second list. It is not a roadmap and none of it is a promise about a date — it is what we would want to know if we were the ones trusting the app with a year of logging.
- Meal-photo accuracy. The round trip works. Measured against weighed food once, for rice, it read wrong (above); nothing else has been weighed.
- Your records arriving on a second device. The store is cloud-backed and the app reports iCloud sync as on, which shows the container resolves. It does not show that records move. The evidence we had was earned against a different container and does not carry over.
- How well the label and menu readers read. Reading a nutrition panel, a supplement panel and a restaurant menu have each run on a phone. Whether the numbers they return are right has not been checked against real packets and real menus.
- Planning a future day. Built, simulator-tested, never run on a phone.
- Logging a meal by speaking it. The microphone, the permissions and the transcription have worked on a phone. What the model makes of a transcript has not been seen.
- Siri and Shortcuts. One phrase — asking how you are doing — has run on a device. The others have not run anywhere.
- The weekly review. Has run on a phone; whether what it says is any good has not been assessed.
- Goal targets and carb cycling. Setting up a plan has run on a phone; whether its numbers are right, and carb cycling at all, have not been checked.
- The plan projection on the energy tile. It renders on a device, and the 3 layout issues that run found were fixed on 2026-08-12. Whether it is right against a real day has not been checked, and a projection that is wrong looks exactly like one that is right.
- Resting metabolic rate. Never compared against a real scan report's own figure.
- Micronutrients. The nutrient identifiers are taken from documentation and have never been seen in a live database response.
- Apple Watch and Garmin workouts on the Workout tab, and WHOOP recovery. Apple Watch workouts have been read out of Apple Health on a phone; Garmin's never have. Seeing either on the Workout tab, and WHOOP's recovery figures, have not been checked.
- Subscriptions. No real purchase has ever been made.
If you are testing and you settle one of these either way, that is the most useful message we can get: [email protected]. For anything involving a number, send the real number — "it said 480, the label said 610" is fixable; "the calories look wrong" is not.
Not medical advice. Targets come from standard published equations and your own goal, or from the maintenance the 21-day check measures from your own log; estimates come from photographs, databases and wearables, and all of them can be wrong. BodyComp is a tracking tool. It does not know about a medical condition you have not told a doctor about, and it is not for managing one. It is for adults, and it is not a tool for managing an eating disorder or recovering from one — if tracking food or body composition is not safe for you right now, this is not the app for you. See the Terms of Use.