# Why AI Calorie Apps Undercount by 250–345 Calories (and How to Fix It)

> Photo calorie apps come in low for six reasons: hidden fat, portion depth, mixed dishes, keto meals, less familiar cuisines and demo bias. Here is what causes each miss, how big it is, and the 10-second fix for each.

Canonical: https://www.mycallie.app/en/blog/why-ai-calorie-apps-underestimate
Published: 2026-10-20 · Updated: 2026-10-20
Author: Md Sadab Wasim · Source: https://www.mycallie.app

## Key takeaways

- In a 2026 NIH conference abstract, four photo calorie apps underestimated 102 weighed meals by about 250 to 345 calories each, with fat about 30 grams low. Thirty grams of fat is roughly 270 calories, so most of the gap is fat the camera can't see.
- Misses grow with portion size. In a 2025 study of ChatGPT, Claude and Gemini, all three underestimated more as portions got bigger, and a 2025 Nutrients study found ChatGPT put large meals at 530 g when they weighed 798 g.
- Mixed dishes, keto meals and less familiar cuisines are the other big misses. A 2024 Nutrients study found AI photo apps underestimated beef pho and pearl milk tea by up to 76%.
- Telling the AI what the photo can't show is the fix. ChatGPT-5's calorie error fell from 30.5% with a photo alone to 13.9% with the photo plus an ingredient list, across 195 dishes in a 2025 Nutrients study.
- The fastest habits: log the oil separately, weigh calorie-dense foods once, photograph before mixing, add a one-line description and take a second photo from another angle. Then check the estimate before it saves.

Callie is our app. This article explains why every photo calorie app tends to come in low, including ours, and what you can do about each cause. Our own test results are labelled as ours, and every other figure links to its source.

## The 30-second answer

**AI calorie apps undercount mainly because a photo can't show fat or depth.** In a 2026 NIH conference abstract, four popular apps underestimated 102 weighed meals by about 250 to 345 calories each, with fat about 30 grams low. Portion size, mixed dishes, keto meals and less familiar cuisines add more error. The fix is to tell the AI what the camera missed. In a 2025 study of 195 dishes, ChatGPT-5's calorie error fell from 30.5% with a photo alone to 13.9% when it also had an ingredient list.

For the full list of studies, see our [AI calorie accuracy research round-up](/blog/ai-calorie-accuracy-research). This page is about causes and fixes.

## Cause, typical miss and the 10-second fix

**Six things push photo estimates low, and each has a fix that takes about ten seconds.** The misses below come from the studies cited in this article. Where a number is our own estimate, it says so.

| Cause | Typical miss | 10-second fix |
|---|---|---|
| Invisible fat (oil, butter, ghee, dressing) | About 30 g fat, roughly 270 kcal per meal (NIH, 2026). About 120 kcal per missed tbsp of oil (USDA). | Add the oil or butter as its own line before saving |
| Portion size and depth | Large meals about a third low by weight (O'Hara et al., 2025) | Take a 45-degree shot with a fork in frame; enter grams if you know them |
| Mixed and layered dishes | 22% to 26% error on lasagna and biryani (our own 20-meal test, 2026) | Photograph before mixing, or log the parts |
| Keto and high-fat meals | Worse than other meals (NIH follow-up, 2026); no figure published | Log fats separately and check the fat total |
| Less familiar cuisines | Up to 76% low on beef pho and pearl milk tea (Li et al., 2024) | Type the dish name and main ingredients |
| Demo bias | Not a food error; sets expectations too high | Judge an app on your own mixed meals |

*Estimate: the 120 kcal figure assumes a full tablespoon was missed. A home stir-fry often uses one; a restaurant dish often more.*

## Cause 1: invisible fat from oil, butter, ghee and dressing

**Fat is the biggest single reason photo apps come in low, because a camera can't see what soaked into the food.** In the NIH analysis presented at NUTRITION 2026, fat was underestimated by [about 30 grams per meal](https://www.eurekalert.org/news-releases/1136415). At 9 calories per gram, that is roughly 270 calories, most of the 250 to 345 calorie gap.

"These apps tend to underestimate calories, especially from fats," said Aaron Hengist, a postdoctoral fellow at the NIH's National Institute of Diabetes and Digestive and Kidney Diseases, in the [NIDDK release](https://www.eurekalert.org/news-releases/1136415).

The amounts that disappear are small by volume and large in calories. [USDA FoodData Central](https://fdc.nal.usda.gov/) lists olive oil at 884 calories per 100 g, which is 119 calories per tablespoon. A tablespoon of salted butter is 102 calories and a tablespoon of ghee about 112. A stir-fry made with one tablespoon of oil looks the same as one made in a dry pan.

The fix is to log the fat as its own item. Our [hidden calories guide](/blog/hidden-calories-oil-butter-sauces) has default amounts for each cooking method.

## Cause 2: portion size and depth

**A single photo shows area, not height, so the bigger and deeper the portion, the further the estimate falls short.** A 2025 study in *Current Developments in Nutrition* by [Fridolfsson and colleagues](https://pmc.ncbi.nlm.nih.gov/articles/PMC12513282/) tested ChatGPT-4o, Claude 3.5 Sonnet and Gemini 1.5 Pro on 52 food photos. The paper reports that all three models showed systematic underestimation that increased with portion size. For energy, the bias slopes ranged from −0.34 to −0.45, and percentage error was roughly 20% to 30% lower for small portions than for large ones. In one large lentil curry, ChatGPT estimated 255 g against an actual 480 g.

A separate 2025 study in *Nutrients* by [O'Hara and colleagues](https://pmc.ncbi.nlm.nih.gov/articles/PMC11858203/) photographed 38 meals in three sizes. ChatGPT was close on small portions but put large meals at an average of 530 g when they weighed 798 g, about a third low. It underestimated weight in 87 of 114 photos (76%).

The [Rodríguez-Jiménez study](https://pmc.ncbi.nlm.nih.gov/articles/PMC12655113/) saw the same pattern. Its largest errors were in dishes served in bowls, which the authors linked to the model's limited ability to judge depth and volume from a single image.

## Cause 3: mixed, layered and sauced dishes

**When ingredients are stirred together or stacked in layers, the AI has to guess what is underneath and how much sauce is in it.** A curry, a stew, a biryani or a lasagna shows only its top layer. The rice under the sauce, the cheese between the pasta sheets and the oil in the gravy are all hidden.

In our own 20-meal kitchen-scale test (May 2026), layered dishes such as lasagna and biryani were the hardest category for both apps we tested. Callie averaged 22% error on them and Cal AI 26%, against 13% and 17% across all meals. The full method is on our [Callie vs Cal AI](/compare/callie-vs-cal-ai) page.

The NIH team's release notes that two of the apps, MyFitnessPal and Lose It!, estimated higher-calorie meals more accurately than lower-calorie ones, so the problem isn't just meal size. What matters most is how much of the meal's energy sits where the camera can't see it.

The easiest fix is to photograph components before you mix them, or to log the parts separately: rice, curry, and the tablespoon of oil or ghee in the tadka.

## Cause 4: keto and high-fat meals

**Meals that get most of their energy from fat are the hardest case for a camera, and the NIH follow-up found the apps did worse on them.** In a further analysis of more than 200 additional meals, the NIDDK team reported early results suggesting the apps [struggle more with low-carb ketogenic meals](https://www.eurekalert.org/news-releases/1136415). HealthDay's coverage adds that this is likely because the apps consistently underestimate the higher fat content.

The release also reports that all four apps estimated carbohydrate more consistently than the other macronutrients. That fits the mechanism. Rice, bread and potatoes have visible volume. Butter in a sauce, cream in eggs and the fat inside a ribeye don't.

If you eat keto, check the fat line on every photo log rather than the calorie total. If the fat looks low for what you cooked, add the butter, oil or cheese yourself. No public figure yet puts a number on the keto gap. This part of the NIH work is a preliminary conference result, not a peer-reviewed paper.

## Cause 5: cuisines the models saw less of in training

**AI food models are trained mostly on image sets drawn from particular countries, so they can do worse on dishes they saw less often.** A 2025 scoping review in [*Frontiers in Nutrition*](https://www.frontiersin.org/journals/nutrition/articles/10.3389/fnut.2025.1501946/full) notes that many food image datasets focus on specific countries or cultures, which can leave AI systems underperforming on foods from underrepresented regions.

A 2024 study in *Nutrients* by [Li and colleagues](https://pmc.ncbi.nlm.nih.gov/articles/PMC11314244/) tested this directly. AI photo apps failed to identify the components of beef pho and pearl milk tea and underestimated their energy by up to 76%. On bibimbap, which has six components, Foodvisor and Fastic recognised 3 and 4 of them. Manual logging apps also drifted: compared with the reference food records, they overestimated a Western diet by 1,040 kJ (about 250 kcal) and underestimated an Asian diet by 1,520 kJ (about 363 kcal).

"Users should be aware that while AI-enabled food image recognition can simplify the process of logging meals, it might not always be accurate, especially with complex or culturally specific dishes," Juliana Chen, a dietitian at the University of Sydney and an author of the study, told [Nutrition Insight](https://www.nutritioninsight.com/news/non-western-diets-harder-to-track-using-ai-powered-health-apps-expert-warns.html).

The fix is to type the dish's real name and main ingredients. Our [Indian food guide](/blog/calorie-tracker-for-indian-food) shows how.

## Cause 6: why demos look more accurate than everyday use

**Marketing demos show the easy case: one food, clearly separated, in good light.** A banana, a slice of pizza or a plated steak with fries photographs well and gets estimated well. A Tuesday-night stir-fry eaten from a bowl under kitchen lighting does not. The studies above tested full meals, many of them mixed or home-cooked, which is one reason their numbers look worse than an app's own videos.

Demo footage is also edited for flow, sometimes for reasons that have nothing to do with accuracy. In a [RevenueCat write-up of the Sub Club podcast](https://www.revenuecat.com/blog/growth/jake-castillo-cal-ai-sub-club-podcast-2026.md) (October 14, 2026), Cal AI co-founder Jake Castillo describes the "magic moment" of scanning on camera. The write-up explains that a streaks pop-up fired after the first scan of the day and broke that rhythm, so "we would make sure our influencers didn't show their first scan of the day." The reason given was the pop-up, not accuracy. The point for you is the same either way: a creator video is a best case.

Judge any app, ours included, on your own mixed and home-cooked meals.

## The fix: give the AI what the photo can't show

**Telling the AI what's in the meal roughly halves its error, according to a 2025 study of ChatGPT-5.** [Rodríguez-Jiménez and colleagues](https://pmc.ncbi.nlm.nih.gov/articles/PMC12655113/) (*Nutrients*, 2025, 17(22):3613) tested 195 dishes from three sources and gave the model more context at each step.

| Feature | Calorie error (MAPE) | Mean miss |
|---|---|---|
| Photo only | 30.5% | about 123 kcal |
| Photo plus a short description (fat type and amount, dairy fat, meat type) | 24.4% | about 92 kcal |
| Photo plus an ingredient list with amounts | 13.9% | about 53 kcal |
| Ingredient list only, no photo | 18.1% | about 67 kcal |

_ChatGPT-5 on 195 dishes. Source: Rodríguez-Jiménez et al., Nutrients 2025._

Two things stand out. Adding the fat and other details the camera can't see cut the error by about a fifth, and a full ingredient list cut it by more than half. The photo still helped: the ingredient list alone did worse than the photo plus the list. The authors write that "accuracy improved consistently when visual inputs were complemented with additional non-visual cues."

The NIH team drew the same lesson. "People using a photo-based tracking app without adjusting the portions or entering the amounts of food should take the results with a grain of salt," Hengist said, as [reported by HealthDay](https://www.healthday.com/health-news/nutrition/how-accurate-are-photo-based-calorie-apps-4-are-put-to-the-test).

## How Callie is built around that fix

**Callie never logs a photo scan automatically, because the correction step is where most of the accuracy comes from.** After a scan, a review screen lists each food with its portion, calories and macros. You can edit any of them, add the oil or butter, or remove something the AI got wrong, and nothing reaches your diary until you confirm.

Callie's portion estimates also use the depth and camera metadata your phone stores in the original photo, rather than judging scale from a flat image alone. That helps with Cause 2, but only when the metadata is there. Screenshots and photos forwarded through messaging apps usually lose it, so take a fresh photo in the app or pick the original from your camera roll.

Neither feature can see oil inside food. Depth helps with how much is on the plate, and the review screen is where you add what went into the pan. In our own 20-meal test, Callie averaged 13% error and Cal AI 17%. That is our test, not an independent one. Our [photo tracking guide](/blog/how-to-track-calories-from-a-photo) has the full setup.

## Five fixes that work in any app

**These habits cut the biggest errors in any photo tracker, not just ours.** Each one targets a cause above.

1. **Log the oil separately.** Add "1 tbsp olive oil" (119 kcal, USDA) as its own line for a home stir-fry or sauté. Do the same for butter, ghee and dressing.
2. **Weigh calorie-dense foods once.** Weigh your usual portion of oil, nut butter, cheese, granola, rice and pasta once or twice. After that, you know what 30 g of cheese looks like and can correct the estimate by eye.
3. **Photograph before you mix.** Snap the rice, curry and toppings before they're stirred together, or log them as separate items.
4. **Add a short text description.** "Chicken thigh, skin on, pan-fried in 2 tsp butter" gives the AI the fat type and amount, which is the kind of detail that took ChatGPT-5 from 30.5% to 24.4% error.
5. **Take two photos.** One from about 45 degrees with a fork or hand for scale, and one from directly above. The angled shot shows height; the overhead shot shows everything on the plate.

Then check your weight trend. If three weeks of logs say you're in a deficit and the scale hasn't moved, the logs are probably low.

## When a photo app isn't enough

**For some goals, a photo estimate is too rough even after correction, and a scale or a database-first tracker is the better tool.** If you're preparing for a competition, counting carbs for insulin, or following a medical diet, you need numbers closer than any photo app currently gives. Our guide on [whether you need a food scale with an AI tracker](/blog/do-you-need-a-food-scale-with-ai-tracker) covers when weighing is worth it.

If you mostly eat packaged food, barcode scanning and a verified database are more accurate than a photo. If you'd rather not use AI at all, our list of [calorie trackers without AI](/blog/calorie-tracker-without-ai) covers manual-first options such as Cronometer and MyFitnessPal.

Photo logging is the right fit if you eat a lot of home-cooked or restaurant food, want to log in seconds, and are willing to correct the estimate before it saves.

This article is general information, not medical advice. If you have diabetes, take medication affected by diet, are pregnant, or have a history of disordered eating, talk to a qualified healthcare professional before changing how you eat or track food.

## Related reading

- [AI calorie accuracy research](/blog/ai-calorie-accuracy-research), every study in one place.
- [AI calorie apps underestimate meals by up to 345 calories](/blog/ai-calorie-app-accuracy-study-2026), our breakdown of the NIH abstract.
- [Is Cal AI accurate?](/blog/is-cal-ai-accurate), an app-specific review.
- [Hidden calories in oil, butter and sauces](/blog/hidden-calories-oil-butter-sauces), with USDA values per tablespoon.

## Sources

1. Charles O, Hengist A et al. (2026). Photo-based calorie apps study, presented at NUTRITION 2026, American Society for Nutrition, July 25, 2026. Conference abstract, not peer reviewed. NIDDK/ASN press release via EurekAlert!: https://www.eurekalert.org/news-releases/1136415
2. HealthDay (July 27, 2026). "How Accurate Are Photo-Based Calorie Apps? 4 Are Put To The Test." https://www.healthday.com/health-news/nutrition/how-accurate-are-photo-based-calorie-apps-4-are-put-to-the-test
3. Nutritional Outlook (July 30, 2026). "Study finds popular AI calorie tracking apps underestimate meal energy by about a third." https://www.nutritionaloutlook.com/view/study-finds-popular-ai-calorie-tracking-apps-underestimate-meal-energy-by-about-a-third
4. Rodríguez-Jiménez M, Martín-del-Campo-Becerra GD, Sumalla-Cano S, Crespo-Álvarez J, Elio I (2025). "Image-Based Dietary Energy and Macronutrients Estimation with ChatGPT-5: Cross-Source Evaluation Across Escalating Context Scenarios." *Nutrients* 17(22):3613. https://pmc.ncbi.nlm.nih.gov/articles/PMC12655113/
5. Fridolfsson J, Sjöberg E, Thiwång M, Pettersson S (2025). "Performance Evaluation of 3 Large Language Models for Nutritional Content Estimation from Food Images." *Current Developments in Nutrition* 9(10):107556. https://pmc.ncbi.nlm.nih.gov/articles/PMC12513282/
6. O'Hara C, Kent G, Flynn AC, Gibney ER, Timon CM (2025). "An Evaluation of ChatGPT for Nutrient Content Estimation from Meal Photographs." *Nutrients* 17(4):607. https://pmc.ncbi.nlm.nih.gov/articles/PMC11858203/
7. Li X, Yin A, Choi HY, Chan V, Allman-Farinelli M, Chen J (2024). "Evaluating the Quality and Comparative Validity of Manual Food Logging and Artificial Intelligence-Enabled Food Image Recognition in Apps for Nutrition Care." *Nutrients* 16(15):2573. https://pmc.ncbi.nlm.nih.gov/articles/PMC11314244/
8. Nutrition Insight (September 5, 2024). "Non-Western diets harder to track using AI-powered health apps, expert warns." https://www.nutritioninsight.com/news/non-western-diets-harder-to-track-using-ai-powered-health-apps-expert-warns.html
9. Rouhafzay A, Rouhafzay G, Jbilou J (2025). "Image-based food monitoring and dietary management for patients living with diabetes: a scoping review of calorie counting applications." *Frontiers in Nutrition* 12. https://www.frontiersin.org/journals/nutrition/articles/10.3389/fnut.2025.1501946/full
10. RevenueCat, David Barnard (October 14, 2026). "Cal AI paid UFC creators thousands of dollars to post, and got no download spike at all." Sub Club podcast write-up. https://www.revenuecat.com/blog/growth/jake-castillo-cal-ai-sub-club-podcast-2026.md
11. USDA FoodData Central, SR Legacy: "Oil, olive, salad or cooking" (FDC 171413), "Butter, salted" (FDC 173410), "Butter oil, anhydrous" (FDC 173412). Accessed October 20, 2026. https://fdc.nal.usda.gov/
12. Callie internal 20-meal kitchen-scale test (May 2026). Method at https://www.mycallie.app/en/compare/callie-vs-cal-ai

## Frequently asked questions

**Q: Why do AI calorie apps underestimate calories?**
A: Mostly because a photo can't show fat or depth. Oil absorbed during cooking, butter melted into a sauce and dressing tossed through a salad leave almost no visual trace, and a single photo can't measure how deep a bowl is. In a 2026 NIH conference abstract, four apps came in about 250 to 345 calories low per meal, with fat about 30 grams under. Mixed dishes, keto meals and cuisines that are less common in training data add further error.

**Q: How much do photo calorie apps undercount?**
A: In the NIH analysis presented at NUTRITION 2026, four popular apps underestimated 102 meals from a metabolic kitchen by roughly 250 to 345 calories on average. That was with no portion correction, which is the worst case. In a 2025 study, ChatGPT-5 missed by about 123 calories (30.5%) from a photo alone and by about 53 calories (13.9%) when it also had an ingredient list.

**Q: Do AI calorie apps underestimate big meals more?**
A: Yes. A 2025 study in Current Developments in Nutrition found that ChatGPT, Claude and Gemini all underestimated more as portions grew. A 2025 study in Nutrients found ChatGPT was close on small meals but put large meals at about 530 g when they actually weighed about 798 g. Bowls and piled food are the hardest because a single photo can't see height.

**Q: How do I make a photo calorie app more accurate?**
A: Add what the photo can't show before the log saves: the cooking oil, butter or dressing, and the portion in grams if you know it. Photograph food before you mix it, take one shot at 45 degrees as well as one from above, and type a short description such as 'fried in 1 tbsp olive oil'. Weigh calorie-dense foods such as oil, nut butter, cheese and pasta at least once so you learn what a portion looks like.

**Q: Why do AI calorie app demos look more accurate than real use?**
A: Demos tend to use simple, single, well-lit foods, which are the easy case. Everyday meals are mixed, sauced, cooked in oil and photographed in bad light. Demo footage is also edited for flow. Cal AI's co-founder said on a 2026 podcast that the company asked influencers not to show their first scan of the day, because a streaks pop-up appeared after it and broke the rhythm of the video.

**Q: Is Callie more accurate than other photo apps?**
A: In our own 20-meal kitchen-scale test from May 2026, Callie averaged 13% error and Cal AI 17%. That is our test, not an independent one. Callie never logs a photo scan automatically: you review the foods, portions and calories first, which is where the corrections in this article go in.
