Photograph your plate.
Know exactly what you ate.
CalorieBuddy reads one photo and gives you the food items, the calories, carbs, fat, protein and fiber, the full mineral and vitamin breakdown, and two scores that say whether the plate actually suited your goal. Got something wrong? Tell it once, in plain words, and it re-reads the plate.
One photo. No barcodes, no searching a database, no weighing.
Three taps, and the plate is logged.
Most calorie apps ask you to find your food in a list, then guess the portion. CalorieBuddy starts from the photograph and asks you one question you can actually answer: how much of it did you eat?
Snap it
Shoot it in the app or pick it out of your camera roll. Choose the meal, drag How much consumed? to what you actually ate, and add a note if the photo does not tell the whole story: “chicken was in the soup.”
Get the whole picture
Every item on the plate, the calories, carbs, fat, protein and fiber, and the full mineral and vitamin list, with a Food Health Score and a Balanced Diet Score. Not just a number to feel guilty about.
Correct it, in words
“Skipped the mushrooms.” One correction per scan, written the way you would say it. CalorieBuddy replays the whole conversation and re-reads the plate rather than making you start again.
Two numbers that mean something specific.
A calorie count on its own tells you how much you ate, and nothing about whether eating it was a good idea. So every plate gets two scores instead, and they answer different questions.
Food Health Score
How good the food on the plate is, on a scale of ten. This one is about the food itself, so it reads the same for everybody: a fried plate scores low whether you are cutting or bulking.
Balanced Diet Score
How closely the plate fits your goal. Losing weight and building muscle want different shares of protein, fat and carbohydrate, so the same meal is a hit for one and a miss for the other. This score is measured against the goal you actually chose, not a generic ideal.
Both are worked out the same way every time, from the numbers on the plate. Two identical meals always score identically.
What the scores looked like
A day that came in comfortably under target, leaning a little heavy on protein and light on fat. Close enough to the shape the goal wants to score well, and the food itself was decent without being spotless.
- Around 90%
- The plate is the shape your goal is asking for.
- Around 70%
- Calories are fine, but one macronutrient is crowding out the others.
- Under 50%
- Mostly one thing. Worth knowing, and worth balancing at the next meal.
The whole day, not just the meal.
A scan is only useful if it adds up to something. Your targets come from your BMI, your goal and the activity level you set for that day, so the same plate means something different on a rest day than on a training day.
Most of the work happens after the photo.
Reading the plate is one step. Everything downstream of it is deterministic code with unit tests, which is why two identical plates cannot produce two different calorie counts.
The nutrition maths is code
Mifflin–St Jeor for basal rate, five activity multipliers from 1.2 to 1.9 for daily expenditure, a goal adjustment between −20% and +20%, and Atwater 4/9/4 for calories. Unit-tested, and the same every time.
Portions are exact
The plate is always read at full serving size, exactly as it reached the table. The server then scales it by how much you said you ate. Nothing about the portion is guessed twice.
It knows where you are
Estimation is informed by your time zone and the time of day, so a plate is read against what people actually eat where you are, at that hour. Portion scale comes from the plates, utensils and hands in the frame.
Micronutrients normalize
Every mineral and vitamin is converted to micrograms, with the international unit conversions applied up front. The same conversion runs inside the database aggregation, so a total can never disagree with itself.
Every scan is costed
Token usage and cost in dollars are recorded against every single photograph, tagged by whether the figure came from the provider or from our own price table. We have known our unit economics per scan since the first one.
Ours, end to end
Asymmetrically signed sessions with short-lived access tokens and revocation on logout. Containers behind a load balancer with TLS, clustered workers, autoscaling, structured logging and images served from a CDN.
What it refuses to do
Guess at a non-photo If there is no food in the frame it says so rather than inventing a number.
Log something unsafe Food that reads as raw when it should be cooked is flagged, not silently counted.
Fall for a screenshot A photograph of a screen showing food is detected and rejected as not a meal.
Return a broken answer Every result is schema-checked before you see it, and rejected if it is incomplete.
The people who keep you honest.
Diets fail alone. Add a buddy by scanning their code and you can both see the day as it actually went: their target, what they have eaten against it, and where their BMI sits. No leaderboard, no badges, no streak to protect. Just the person who will ask you about lunch.
To be clear about the camera: the code pairs you with a person. There is nothing to scan on a packet, because CalorieBuddy does not read barcodes and has no database of branded products to look them up in.
One meal is noise. Six months is a signal.
Every scan feeds a record you can actually read back: seven days when you want to know how this week went, six months when you want to know whether anything has really changed. Miss a day and you can go back and add it from the calendar rather than leaving a hole.
- Goals
- Seven, filtered by your BMI so the app does not offer you a deficit you should not be running.
- Activity
- Five levels, set per day, from sedentary through to extra active.
- Health history
- Weight, height and BMI over time, in metric or imperial, with life stage accounted for.
Last 7 days
calories by macroBe there on day one.
CalorieBuddy is finishing review for the App Store and Google Play. Send us a line and we will tell you the day it goes live, and nothing else. No newsletter, no drip campaign.
Coming to the App Store and Google Play.