Count calories from a photo: how accurate is it? 6 tips

Published · Vitaloop Labs

Yes, you can count calories from a photo, and it is the fastest way to log what you eat. But a photo can’t see the oil, what’s inside a stew or whether the milk is whole or skimmed, and it struggles to tell how much is on a big plate. In a study with standardised photos, the best general-purpose AI models were off by 35.8 % on calories on average, and always on the low side. Here is what AI gets right from a photo, what it misses, how far off it is according to the research, and how to get more out of every photo. We are the team behind vitaloop, a nutrition app made in Barcelona, so we are not neutral: that is why we give you the sources.

What AI gets right from a photo

  • Which foods are there. In a study of 114 photos of real meals, a general-purpose AI identified the foods with 93 % precision (O’Hara et al., Nutrients, 2025).
  • Small portions. In the same study, the weight of small meals matched the real one.
  • Which meal has more. Even when the number was wrong, it ranked the meals by their nutrient content well.

What a photo misses

1. Oil and added fat

Oil soaks into food and leaves no trace in the picture. And it has more calories per gram than anything else on the plate: a tablespoon of olive oil weighs about 13.5 g and has about 119 kcal (USDA FoodData Central). Two tablespoons in a pan of vegetables change the meal more than any mistake in sizing up the vegetables.

2. How much is on the plate

A photo is flat: it can’t tell how deep the bowl is, how much rice is under the meat or how big the glass is. So AI tends to come in low, and more so the bigger the portion. In the study by Fridolfsson et al. (Current Developments in Nutrition, 2025), all three models underestimated consistently, and the error grew with portion size; in O’Hara’s, the weight of medium and large portions no longer matched.

3. Sauces, dressings and things on the side

The mayonnaise in a sandwich, the dressing on a salad or the sugar in your coffee barely show, if at all. This isn’t only a machine problem: when we write down what we ate ourselves, we leave out condiments 1–80 % of the time depending on the study, against 0–32 % for drinks (systematic review by Whitton et al., Advances in Nutrition, 2022).

4. What’s inside a mixed dish

A stew, croquettes, a lasagne or a closed sandwich hide their ingredients. The photo sees the shape, not the recipe. And two bowls of lentils that look the same may or may not have chorizo in them.

5. The exact kind

Whole and skimmed milk, plain and sweetened yoghurt, or a green and a gold kiwi look very much alike in a photo, and their nutrients are not the same.

How accurate is counting calories from a photo?

The two clearest recent studies, with weighed meals as the reference, say the same thing with different numbers:

  • 35.8 % average error on calories across 52 standardised photos, for the best two of three general-purpose AI models, and 36–37 % on weight. All of them came in low, more so the bigger the portion (Fridolfsson et al., 2025).
  • 13 of 16 nutrients more than 10 % off across 114 photos of real meals, 11 of them too low (O’Hara et al., 2025).

For context, logging by hand isn’t exact either: when we report what we ate, we tend to report quite a bit less energy than we burn. And the interesting part is that photos, used well, do work. With the Remote Food Photography Method, where the photos were later compared with photos of reference portions, the estimated energy intake of 50 adults over 6 days was not significantly different from what doubly labelled water measured (−152 kcal/day on average) (Martin et al., Obesity, 2012). With a spread of ±694 kcal from one person to the next, though: the weekly average is reliable; a single meal, much less so.

The practical takeaway: a photo is a good starting point, not a final number. What makes it reliable is what you add.

Getting more out of a photo: 6 habits

  1. Take the photo before you start eating, with the whole plate in view and, if you can, the cutlery next to it: it gives a sense of scale.
  2. Shoot at a slight angle, not just from above. That way the depth of the plate and the glass shows.
  3. Say what can’t be seen. The oil, the sauce, the sugar in your coffee, skimmed milk, chorizo in the lentils. One sentence is enough.
  4. Check the grams of the heaviest foods: rice, pasta, bread, meat. That’s where nearly all the error is.
  5. For packaged food, scan the barcode instead. The label states what a picture can only guess.
  6. Look at the week, not the meal. One meal’s errors even out; your weight trend tells you the rest. If your goal is to lose weight, see the best app for weight loss.

How it works in vitaloop

At vitaloop we are always looking for ways to make logging as quick and easy as it can be, because we know your time is the most valuable thing you have. That is why you can log with a photo, your voice or a message. It is part of Pro, and it is built for exactly what a photo can’t see:

  • Photo, voice or text, and you can mix them. Take the photo and add “with a tablespoon of oil”, or just say it the way you would (“a bowl of lentils with chorizo and an apple”), in English, Spanish or Catalan.
  • It tells you what it assumed. The reply names what it took for granted, such as the usual portion or the oil in the dressing, so you can see it and change it if it’s wrong.
  • When in doubt, you choose. If a food comes in kinds you can’t tell apart by eye, like a green or a gold kiwi, its row says so and you pick yours right there.
  • Everything can be fixed. Each food’s grams are one tap away, and one sentence changes the amount or how it was cooked, or adds what was missing (“and a beer too”).
  • Built on official food composition tables. Every food comes from vitaloop’s food database, with the European ANSES-CIQUAL table, the USDA’s and Open Food Facts products, so you see not just calories but macros, vitamins and minerals too. How we do it: how we calculate.

And without paying anything, vitaloop is free by default, with no ads: you log with the search, the barcode scanner or by repeating an earlier meal, and you see calories, macros and micronutrients. Everything it does is at vitaloopapp.com.

vitaloop is a personal nutrition and data-logging app developed by Vitaloop Labs, SL. It is not a medical device as defined under EU Regulation 2017/745 (EU MDR) and does not constitute professional medical advice. Personalized suggestions are based on your personal data and should not be used as a substitute for advice from a qualified healthcare professional. Nutritional data may contain inaccuracies; always verify critical information on product labels.

Questions

Can you count calories from a photo?+

Yes. AI identifies the foods in a photo well, but it is worse at telling how much there is, and it can’t see what is hidden, such as oil or what’s inside a stew. The most reliable way is to add a sentence about what can’t be seen and check the grams of the heaviest foods.

How accurate is AI at counting calories from a photo?+

In a 2025 study of 52 standardised photos, the best general-purpose AI models were off by 35.8 % on calories on average, always too low and more so the bigger the portion. With photos of real meals, another study found more than 10 % difference in 13 of 16 nutrients.

What can’t a food photo show?+

Oil and added fat (a tablespoon of olive oil is about 119 kcal), how deep the plate is, sauces and dressings, the ingredients of a mixed dish and the exact kind of food, such as whole or skimmed milk.

Is photo logging free in vitaloop?+

No: logging with a photo, your voice or a message is part of Pro. vitaloop is free by default, with no ads: on the free plan you log with the search, the barcode scanner or by repeating an earlier meal, and you see calories, macros and micronutrients.