Blog · Calorie counter app

Can an AI count calories from a photo?

It can name the food, and there the photo stops: a picture shows neither how much is on the plate nor what it was cooked in, and a test with a scale found 20 to 54 percent error on the portion. With IZeat the assistant is asked for the portion and the fat first, and the estimate is recorded as one.

Can an AI count calories from a photo of a plate?

It can identify the dish, often the ingredients, and that is real progress over a search box. It cannot weigh anything. A photo has no scale, no depth and no view of the oil, so the model guesses the portion and the fat, the two figures that carry most of a meal's calories, and presents the guess as a count.

The measurement that settles it came from the people who count calories for real. A member of r/loseit weighed meals on a kitchen scale and gave the same plates to five vision models, thread read 4 September 2026: 20 to 54 percent average error on portion size, a 50 g sweet potato guessed at 150 g, dry and cooked couscous matched wrongly, hidden oil and butter invisible. The thread's own line: "The models always know what the food is. They just can't tell how much is on the plate."

"PSA: ChatGPT, Claude and other LLMs are not accurate calorie tracking methods": the model "will give you the results with absolute certainty despite all the ways it can introduce errors". r/loseit, read 4 September 2026.

What does a food photo show, and what does it hide?

It shows the kind of food and, roughly, how the plate is composed. It hides everything that has to be weighed or poured: the grams, the oil, the sugar in a sweetened yoghurt, the dry weight behind a cooked grain. Each of those can move the figure a long way, and a figure that ignores them is a guess rather than an estimate.

What the camera seesWhat it cannot seeHow much that changes the figure
The dish and its main ingredientsThe weight on the plate20 to 54 percent average error in the r/loseit test of five models
A glossy surfaceThe oil or butter it was cooked in10 g of oil is about 88 kcal, a tablespoon of vinaigrette about 70 to 90 (USDA FoodData Central, checked 15 September 2026)
Couscous, rice, pastaWhether the weight was dry or cookedDry couscous about 376 kcal per 100 g against 112 cooked, in the same test; pasta 371 against 158, rice 365 against 130 (USDA)
A variantWhole or skimmed, in water or in oilWhole milk about 61 kcal per 100 g against 35 skimmed; tuna in water about 116 against 198 in oil (USDA)
A bowlHow deep it isA bowl's capacity cannot be read from its rim, so the assistant is asked never to guess it
What a plate photo carries and what it leaves out, with the size of each gap from the sources named.

Bottom line: the photo answers "what"; the calories live in "how much" and "cooked in what", and those are questions, not pixels.

How do photo calorie apps deal with it?

Mostly by answering anyway. The feature is sold as speed, a photo and a number, and the number arrives with the same confidence whether the portion was obvious or not. What the sellers say about it, on their own pages, is worth reading before trusting it, and it varies from one app to the next.

AppWhat the photo feature is calledWhere it sits
Lose It!"Smart Camera": "Use your camera to scan package barcodes or the food itself"In the free Basic plan, according to its own page, read 14 September 2026
YAZIO"AI food tracking": "Log your meals in seconds with a quick photo. Yazio's AI recognizes ingredients and portions"PRO only, according to its help centre, read 14 September 2026
Photo features as the two sellers describe them on their own pages; other apps were not read on this point.

Bottom line: the feature exists at both prices read, free at one and paid at the other; what neither page says is how far the portion it recognizes is from a scale.

The author of the r/loseit PSA drew the useful line. With "a description, brands and weights", an AI "is basically looking up a database with some extra steps", and that is fine. The failure is the photo alone, answered with a confident number, and the remedy is not a better camera. It is a question.

What is the honest way to use a plate photo?

Let the photo do what it can, name the dish, and answer the two questions it cannot: how much, and cooked in what. Then take the result for what it is, an estimate with a range, and record it as one. Four steps, and none of them needs a scale if you have a cue you can check.

  1. Send the photo and let it name the dish. "Chicken stir-fry with rice" is the part the model gets right.
  2. Give one portion cue suited to the food. A weight if you know it; otherwise spoonfuls or ladles, a fraction of the plate or of the batch, or a known container, "a soup bowl", "a takeaway box".
  3. Say what it was cooked or dressed in. "Pan-fried in oil", "grilled, no oil", "vinaigrette".
  4. If you have no cue at all, send a top and a side photo with a ruler, a utensil of known length or your hand beside the food, so the size can be reasoned from something known.

What this path is built to avoid: a bowl's capacity guessed from its look, a portion silently assumed as "normal", or a figure from a picture presented as precise. The assistant is instructed that way; the receipt is how you see whether it followed. A range is stated, its midpoint recorded, and the item is marked estimated. A day with that item is a normal day, and it says which item was estimated.

How can you use the photo without guessing the missing details?

IZeat is the calorie tracker inside ChatGPT, Claude or any other assistant. Tell the assistant you already use what you ate instead of searching for foods and entering them one by one. It has no camera: you send photos in the chat, the assistant reads them under IZeat's protocol, and IZeat records what the reading was worth, so the diary stays honest without you inventing the details a photo cannot show. The menus are not reprinted here: they move, and the current steps for ChatGPT live on the connection guide, which is the copy we test and keep current.

You photograph a plate of pasta at a friend's. The assistant names the dish, and IZeat's protocol has it ask before any number: about how much, a bowl or a full plate, and what the sauce was made with. You answer "a full plate, cream and bacon". The assistant states a range; IZeat records the items as an estimate at its midpoint, with your words beside it, and returns the day so far. Had you photographed a nutrition label instead, the values would have been read back to you first, and the item recorded with the label as its source, scaled to what you ate.

The photoWhat the assistant is asked to doWhat IZeat records
A nutrition labelRead the values, explain the units, flag an energy figure that does not fit the macros, and repeat them back before recording; ask how much you ateThe item with the label as source, the per-100 g figures scaled to your grams
A plate, with your portion cue and the fatName the dish, then estimate with a rangeEach item as an estimate, the midpoint of the range, marked estimated
A plate, nothing elseAsk for one portion cue and the cooking fat firstNothing, until you answer
A menu board with printed caloriesRead the printed figure you show and repeat it back; estimate the macros the board does not printThe item recorded as an estimate that quotes the board's figure; a board is not a nutrition label
A top and a side photo, with a fork or your handReason the size from the known object, state the rangeAn estimate, marked estimated, with your words beside it
Five photos, what is asked, what is stored: the label is the precise path, the plate the honest one.

Bottom line: a label photo is the product's declared values, read back for you to check; a plate photo is a question on the portion and the fat, then an estimate that says so.

  • You send the photo you already took, in the chat you already have open. No camera to open, no app to switch to; the assistant reads it and IZeat records what the reading was worth.
  • A label photo saves you the typing, and the readback is where you can catch a misread. The declared values are repeated to you before anything is recorded, with the units explained; the assistant can also point out an energy figure that does not fit the macros, and 1.2 g taken for 12 g can be corrected in the same breath if you spot it.
  • A plate photo needs the details it cannot show, and the estimate says it is one. A portion cue and the cooking fat, sometimes the sauce or the variant, then a range and its midpoint, recorded as an estimate beside the label and table figures.

Laetitia, who builds IZeat with Seb, sent a fig-jam label on 7 September 2026. The assistant first read the energy as about 57 kcal per 100 g, then pointed out that 60 g of carbohydrate per 100 g did not fit the 240 kJ it had read, proposed 240 kcal per 100 g instead, and asked how much she would use; she said 15 g, and the breakfast was updated. That is an interpretation and a consistency check, with a first reading the assistant then corrected; the transcript alone does not prove the manufacturer was wrong, and a value deduced that way is an interpretation to confirm on the pack, not a printed declaration.

A nutrition label read back to you and a plate photo estimate that states its range are two different sources, and the record keeps them apart. Each item keeps its own source, and a meal is as certain as its least certain item: one estimated sauce makes the meal estimated, and the receipt names the estimated items when only some are. The whole day is on one screen in the web app, each item with its source, so a week later you still know which dinner was an estimate and which was a label or a weight you gave. The docs on photos keep the protocol as it runs today.

Frequently asked questions

Short answers to the questions people type, each one sourced above.

How accurate is an AI calorie counter from a photo?

For the name of the food, good; for the calories, no better than its guess of the portion. In the only test we found with a scale as the reference, on r/loseit, read in September 2026, five vision models averaged 20 to 54 percent error on portion size, guessed a 50 g sweet potato at 150 g, and could not see oil or butter at all. With a portion cue and the cooking fat given, the two largest errors are gone, and what remains is an estimate worth recording as one.

Can ChatGPT count calories from a picture?

It can name the dish from a picture, and that is where its reliability ends: it cannot see how much is on the plate or what it was cooked in. Through IZeat, ChatGPT is asked for a portion cue and the cooking fat before anything is recorded, and the result is stored as an estimate, marked as one. A photo of a nutrition label is the opposite case: read, interpreted, repeated back to you, and recorded as a label.

Which app counts calories from a photo for free?

Lose It! keeps its "Smart Camera", which scans barcodes and the food itself, in its free Basic plan, according to its own page read on 14 September 2026; YAZIO sells "AI food tracking" by photo as a PRO feature, according to its help centre. IZeat has no camera of its own: you send the photo to the assistant you already use, and what is recorded is an estimate marked as one, or a label read back to you.

Is a label photo better than a plate photo?

Yes, by a long way, because the label is a declared value and the plate is a guess. A photographed nutrition label is read by the assistant, the units are explained, an energy figure that does not fit the macros can be flagged, and the values are repeated back so a misread such as 1.2 g taken for 12 g can be caught; the item is recorded with the label as its source, scaled to the grams you ate. A plate photo names the dish and then needs two questions before any number.

What if I have no scale and no idea of the portion?

Give the cue you do have: spoonfuls or ladles, a fraction of the plate or of the batch, a known container such as a soup bowl or a takeaway box. If you have none, send a top and a side photo with a ruler, a fork or your hand beside the food; a known length gives the assistant something to reason from. The result is still an estimate, and it is recorded as one.

Does IZeat have a photo calorie feature?

No camera and no scanner of its own. You send photos in the chat you already use, the assistant reads them, and IZeat records what the reading was worth: a label read back to you is stored as a label, a plate is stored as an estimate after the portion and the fat are asked, and a plate alone is stored as nothing until you answer. The receipt says which items were estimated.

Why doesn't it just give me a number from the photo?

Because the number would be a guess dressed as a measurement, which is the thing the calorie-counting communities distrust most, and rightly: the test with a scale found the portion off by 20 to 54 percent. Two questions, the portion and the fat, take one reply and remove the two largest errors. The range is then said, its midpoint recorded, and the item marked estimated, so the day stays honest.

Does a plate photo work for restaurant meals?

It names the dish, which helps, and then the restaurant plate needs the same two questions as any other, about how much and cooked in what, because the kitchen weighed nothing for you and the oil is invisible. Where the menu prints calories, that figure is the one to give, as you would a label.

Can an AI read a menu board from a photo?

Yes, and the printed figure is the chain's own declaration for a standard portion, the same kind of fact as a packaged label, so it is the figure to give as the starting point. A board usually prints calories and no macros, so the assistant estimates the macros, and since the source is recorded per item, that item is recorded as an estimate that quotes the printed figure. Say the items you had, one by one, and say what the board did not print, a sauce or a drink, as you would any other item.

Is it worth photographing every meal?

A photo of every label, yes: it is the producer's declared figure for that product, read back so you can check it, and it costs one picture. A photo of every plate, less so: a sentence with the dish, the grams and the cooking fat is what the author of the r/loseit PSA called "looking up a database with some extra steps", and it skips the questions a picture cannot answer; we have not timed either. Use the plate photo when you do not know what you are looking at, and the sentence when you do.

The diary you don't type.

Start my 7-day free trialHow it works

Say what you ate to the assistant you already use, ChatGPT, Claude or any other. It is logged, every number says where it came from, and the whole day is on one screen. 7 days without a card.