The camera · Decision 1 of 13

How close Snapkin gets to food on a scale

We tested Snapkin on 500 meals that had been weighed on a scale, and compared its calories with the scale. Per meal, Snapkin has a median accuracy of 83% on phone photos. Over a week of meals, 90%.

Last updated .

What the app does
Reaches 83% median accuracy on a single meal from one photo, before you answer a question. Over a week it reaches 90%, because small misses on single meals cancel out in the total.
How sure we are Firm , Pooled trials that agree with each other.
Confident. 500 weighed meals, from a small snack to a 2,400 kcal tray, across a wide mix of cuisines: Italian, Japanese, Mediterranean, Asian, Mexican and more.

83% median accuracy per meal, 90% over a week

Median accuracy is 100% minus the median error: on a typical meal, Snapkin’s calories were within 16.8% of the scale. The Snapkin AI model, with the instructions the app sends. Measured on 24 September 2026.

83% median accuracy per meal on photos taken by hand with a phone. Across all three sets of meals, 80% 225 meals from ACETADA · all sets: 489 meals
90% median accuracy over a week of 21 meals on phone photos. Across all three sets, 89% Simulated: weeks built from random meals in the set
99 in 100 simulated weeks on phone photos came within 20% of the weighed total. Across all three sets, 96 in 100 20,000 simulated weeks each

Why the week matters more than the meal

Your weight follows what you eat over days and weeks, not one plate. One meal might come back a little high and the next a little low. Added up, those misses cancel out. So the more meals you add up, the closer the total gets: 83% on one meal, 88% over a day, 90% over a week.

Median accuracy, from one meal to a week 100% minus the median error against the weighed calories. Higher is better.
One meal, phone photos 83%

225 meals, measured

One meal, all sets 80%

489 meals, measured

A day, phone photos 88%

3 meals, simulated

A day, all sets 86%

3 meals, simulated

A week, phone photos 90%

21 meals, simulated

A week, all sets 89%

21 meals, simulated

0 100%
One meal is measured. The day (3 meals) and the week (21 meals) are simulated: we added up meals drawn at random from the set, 20,000 times each. One thing does not cancel out. Snapkin tends to come in a little under the scale, and it does so steadily. So a week stays at about 90% instead of going higher.

A steady lean is easier to live with than random misses. It shifts every week by about the same amount, so this week still compares fairly with last week.

How we tested it

We needed meals where somebody put the food on a scale, and a photo of the same plate. We took 500 from three public research sets.

Each photo went to Snapkin exactly as a photo from the app does: the same size, the same model, the same instructions. One photo per meal, no note, and no follow-up question answered. So this is the very first number the app shows. In the app you can answer a question or correct an item, and we did not count any of that here.

Meals under 100 kcal are left out of the percentages, because a percentage of a small drink says little. That leaves 489 meals.

One meal at a time

On a single meal, Snapkin reached 83% median accuracy on phone photos and 80% across all three sets: a typical meal came back within 16.8% and 20.0% of the scale. In calories, the typical meal was within 106 kcal. The phone photos matter most, because they look most like the photos you take.

Share of meals that landed close to the scale How many meals in 100 came back within a given distance of the weighed calories. Higher is better.
Within 50%, phone photos 97 in 100

219 of 225 meals

Within 50%, all sets 92 in 100

450 of 489 meals

Within 30%, phone photos 78 in 100
Within 30%, all sets 69 in 100
Within 20%, phone photos 60 in 100
Within 20%, all sets 50 in 100
0 100 meals
Phone photos are the 225 ACETADA meals. All sets is all 489 meals, including a fixed cafeteria camera no user holds. Within 30%, for example, means a 600 kcal plate came back between 420 and 780 kcal.

Compared with published tests

Research papers usually report the mean error rather than the typical one. The mean is a little higher, because a few hard meals pull it up. Measured that way, Snapkin was 19.1% out on the phone photos. The researchers who built that set tested four well-known AI models on its photos and found 23 to 34%.

Mean calorie error, Snapkin and a published test Mean absolute percentage error against weighed food. Lower is better.
Snapkin, phone photos 19.1%

ACETADA, 225 meals

Snapkin, all three sets 24.6%

489 meals

Four AI models, ACETADA paper 23.3–34.1%

Coburn et al. 2025, baseline table

Ignore the photo, always say 559 kcal 58.6%

The same 489 meals

0 60% error
The published row is GPT-4.1, GPT-4o, Claude 3.7 Sonnet and Gemini 2.5 Pro, tested by the authors of ACETADA on 806 of its photos. It is not a head-to-head test. They used other instructions and more of the photos. They compared with what people ate, not with what was on the tray. The last row is what you get if you ignore the photo and say 559 kcal for every meal.

The last row shows that the photo is what makes the difference. A blind guess lands within 20% on only 29 meals in 100. Snapkin does on 50, and on 60 with phone photos.

Big misses are rare

What you notice is the meal that comes back at double or half. We counted every meal that was more than 50% away from the scale.

Meals out by more than half Each square is one meal in a hundred.

2.7% of phone-photo meals missed by more than half landed within half of the scale

8% of all meals missed by more than half landed within half of the scale

Phone photos: 6 of 225 meals. All three sets: 39 of 489. Most of these were small plates: 32 of the 39 were under 400 kcal, where one side dish is a big share of the total.

Closest on everyday main meals

Snapkin does best on a normal main meal, a lunch or dinner of 400 to 900 kcal. There, about 6 meals in 10 landed within 20%. Between 600 and 900 kcal, not one of 119 meals was out by more than half.

Typical error by the size of the meal Median of (Snapkin − scale) ÷ scale, by weighed calories. Left of the line is too low.
no difference
Under 200 kcal +10.4%

30 meals

200 to 400 kcal +12.3%

120 meals

400 to 600 kcal −4.8%

120 meals, 61 in 100 within 20%

600 to 900 kcal −12.6%

119 meals, 59 in 100 within 20%, none out by half

900 kcal and more −23.8%

100 meals

−35% +35%
Small plates come back a little high and very large ones a little low. A plate over 900 kcal is where a spoon of oil or a second helping is hardest to see.

It leans slightly low

On a typical meal Snapkin was 8% under the scale, and 5% under on phone photos. The lean depends on the photos, so we do not add a fixed correction.

Typical lean by set, with its 95% interval Median of (Snapkin − scale) ÷ scale. Left of the line is too low.
no difference
Phone photos (ACETADA) −5.0%

225 meals, 95% interval −9.2% to −2.1%

Fixed camera (Nutrition5k) +0.7%

125 meals, 95% interval −7.5% to +10.3%

iPhone, study plates (NutritionVerse) −20.2%

139 meals, 95% interval −25.1% to −16.6%

All three sets −8.2%

489 meals, 95% interval −10.5% to −4.6%

−30% +15%
The phone photos lean a little low. The cafeteria camera is centred. The Waterloo plates lean a fifth low. Because the three differ, one correction factor would help one set and hurt another. The phone-photo interval is too narrow. Its meals come from the same people many times.

We measure it again before every model change

These numbers belong to the Snapkin AI model as it was on 24 September 2026. Before we change the model or the instructions the app sends, we run the same 500 meals again and update this page, whichever way the numbers move.

What this test does not cover yet

Restaurant food and home cooking. These are study trays, cafeteria plates and plates made for research. In a restaurant you see the least of how a dish was cooked.

Protein, carbohydrate and fat. These are harder than calories. A typical meal was within 21% on carbohydrate, 28% on fat and 30% on protein. Fat is the hardest to see, which is why the app asks how food was cooked.

Drinks count. The phone trays have drinks on them, and those are in the weighed total, because Snapkin sees them and counts them.

How the scale's calories were found. The food was weighed, then its calories were looked up in food tables, like every nutrition label.

Who ran it. We did this test ourselves. It is not peer reviewed.

For what other people have measured, and why a photo is worth using, see why we think a photograph is good enough.