How accurate Kove is.
Kove looks common foods and branded products up in open reference tables, and estimates only what it cannot find. Here is how close each lands, measured, with every food listed.
- 100%Accuracy on weighed foodsAI alone: 94.5%
- 100%Within 10% of the right figureAI alone: 73%
- 79.1%Accuracy on plate photosno table to look up, estimate only
- 100%Food messages logged328 of 328
Weighed foods.
The test uses 37 foods, each written with its weight, like “150 g cooked rice”. The model alone was 94.5% accurate; Kove was 100%, because it used the data from the reference sources 98% of the time and kept the estimate otherwise. Within 10% of the right figure: the model more than two times in three, Kove every time.
Sent again, the same sentence was 100% consistent with the model alone, and 100% with Kove.
So when Kove finds the food, what it logs is that figure exactly. This part measures how often it finds the right food, not whether a table is right about your plate.
| Food group | Model alone | Kove |
|---|---|---|
| Pasta, rice, bread and grains | 94.5% | 100% |
| Legumes | 86.9% | 100% |
| Meat, fish and eggs | 87.6% | 100% |
| Dairy | 95.4% | 100% |
| Fruit, vegetables, nuts and oil | 98% | 100% |
| Sweets and drinks | 89.9% | 100% |
| Branded products | 99.2% | 100% |
All 37 foods, one by one
| Input | Reference | Model alone | Kove logged | Looked up |
|---|---|---|---|---|
| 80 g of pasta | 291 kcal Ciqual | 297 kcal 98% | 291 kcal 100% | 6/6 |
| 200 g of cooked pasta | 334 kcal Ciqual | 316 kcal 94.6% | 334 kcal 100% | 6/6 |
| 70 g of rice | 245 kcal Ciqual | 254 kcal 96.5% | 245 kcal 100% | 6/6 |
| 150 g of cooked rice | 233 kcal Ciqual | 195 kcal 83.9% | 233 kcal 100% | 6/6 |
| 40 g of rolled oats | 148 kcal Ciqual | 156 kcal 94.3% | 148 kcal 100% | 6/6 |
| 60 g of quinoa | 215 kcal Ciqual | 221 kcal 97.1% | 215 kcal 100% | 6/6 |
| 60 g of white bread | 172 kcal Ciqual | 160 kcal 92.9% | 172 kcal 100% | 6/6 |
| 200 g of boiled potatoes | 162 kcal Ciqual | 174 kcal 92.6% | 162 kcal 100% | 6/6 |
| 230 g of canned chickpeas, drained | 281 kcal Ciqual | 320 kcal 86% | 281 kcal 100% | 6/6 |
| 50 g of dry lentils | 164 kcal Ciqual | 176 kcal 92.4% | 164 kcal 100% | 6/6 |
| 150 g of cooked beans | 168 kcal Ciqual | 190 kcal 86.9% | 168 kcal 100% | 6/6 |
| 150 g of grilled chicken breast | 212 kcal Ciqual | 248 kcal 82.7% | 212 kcal 100% | 6/6 |
| 120 g of chicken breast, weighed raw | 132 kcal Ciqual | 144 kcal 90.9% | 132 kcal 100% | 6/6 |
| 150 g of cooked salmon | 308 kcal Ciqual | 309 kcal 99.5% | 308 kcal 100% | 6/6 |
| 80 g of tuna in oil, drained | 154 kcal Ciqual | 158 kcal 97.1% | 154 kcal 100% | 6/6 |
| 2 hard-boiled eggs (120 g) | 161 kcal Ciqual | 186 kcal 84.3% | 161 kcal 100% | 6/6 |
| 50 g of prosciutto | 115 kcal Ciqual | 135 kcal 82.6% | 115 kcal 100% | 6/6 |
| 125 g of Greek yogurt | 129 kcal Ciqual | 120 kcal 93.2% | 129 kcal 100% | 6/6 |
| 200 ml of whole milk | 128 kcal Ciqual | 122 kcal 95.5% | 128 kcal 100% | 6/6 |
| 125 g of mozzarella | 284 kcal Ciqual | 350 kcal 76.7% | 284 kcal 100% | 6/6 |
| 30 g of parmesan | 123 kcal Ciqual | 129 kcal 95.4% | 123 kcal 100% | 6/6 |
| a 150 g apple | 81 kcal Ciqual | 78 kcal 96.3% | 81 kcal 100% | 6/6 |
| a 120 g banana | 105 kcal Ciqual | 107 kcal 98.2% | 105 kcal 100% | 6/6 |
| 200 g of courgettes | 33 kcal Ciqual | 34 kcal 98.2% | 33 kcal 100% | 6/6 |
| 100 g of blueberries | 58 kcal Ciqual | 57 kcal 98.8% | 58 kcal 100% | 6/6 |
| 30 g of almonds | 185 kcal Ciqual | 174 kcal 94.3% | 185 kcal 100% | 6/6 |
| 10 g of olive oil | 90 kcal Ciqual | 88 kcal 97.9% | 90 kcal 100% | 6/6 |
| 20 g of dark chocolate | 104 kcal Ciqual | 120 kcal 84.8% | 104 kcal 100% | 6/6 |
| 15 g of honey | 50 kcal Ciqual | 46 kcal 92.6% | 50 kcal 99.9% | 6/6 |
| 330 ml of beer | 129 kcal Ciqual | 140 kcal 91.2% | 129 kcal 100% | 6/6 |
| 150 ml of red wine | 114 kcal Ciqual | 125 kcal 89.9% | 114 kcal 100% | 6/6 |
| a 170 g Fage Total 5% yogurt | 158 kcal Open Food Facts | 165 kcal 95.6% | 158 kcal 100% | 6/6 |
| 80 g of Barilla spaghetti | 287 kcal Open Food Facts | 288 kcal 99.7% | 286 kcal 99.5% | 6/6 |
| one Kinder Bueno bar (21.5 g) | 123 kcal Open Food Facts | 123 kcal 99.6% | 123 kcal 100% | 6/6 |
| 15 g of Nutella | 81 kcal Open Food Facts | 81 kcal 99.8% | 81 kcal 99.9% | 6/6 |
| a 330 ml Coca-Cola Zero | 1 kcal Open Food Facts | 1 kcal 100% | 1 kcal 100% | 1/6 |
| a Big Mac (232 g) | 530 kcal Open Food Facts | 550 kcal 96.2% | 530 kcal 100% | 6/6 |
Of 328 messages describing food, Kove logged 328 (100%). It never stopped to ask for a figure it did not have.
Raw or cooked.
Some foods weigh differently raw and cooked. Pasta, rice and legumes, for example, weigh about twice as much cooked, so 80 g of pasta can be either 290 kcal or 130. Packs usually state their figures dry, so a weight with nothing specified means dry. A plate, a bowl or the word cooked means cooked, and a jar means drained.
When a weight came with no word for cooked or dry, the model read it as dry, the way the pack states it, in 100% of 24 sentences. Kove shows that reading beside the amount, so a wrong reading can be fixed on the spot in chat.
Portions from words.
Say “a plate of pasta” and Kove guesses a weight. CREA's Italian dietary guidelines give each food a standard portion as a raw weight, so a cooked guess is turned into its raw weight before the two are compared. The guesses were 80% accurate against the standard portion, and within 20% of it more than half the time.
| Input | Standard portion | Kove's guess |
|---|---|---|
| a plate of pasta with tomato sauce | 80 g | 115 g |
| a portion of plain rice | 80 g | 89 g |
| a portion of bread | 50 g | 60 g |
| an apple | 150 g | 180 g |
| a pot of plain yogurt | 125 g | 125 g |
| a glass of milk | 125 g | 220 g |
| a portion of grilled chicken breast | 100 g | 192 g |
| a portion of baked salmon | 150 g | 159 g |
| a hard-boiled egg | 50 g | 50 g |
| a tablespoon of olive oil | 10 g | 14 g |
| a portion of parmesan | 50 g | 30 g |
This tests whether a guess is a sensible portion. What you actually ate is only known when you weigh it or say it, and a weight or a calorie count you give always wins over Kove's guess.
Photos.
20 plates weighed in a lab, photographed from above and read the way a picture in chat is read: described, estimated, logged. Kove read 40 of 40, and the estimates it logged were 79.1% accurate against the ones measured in the lab, within 20% half the time.
All 20 plates
| Plate | Weighed | Measured | Kove logged |
|---|---|---|---|
Brown rice, pork, mixed greens | 193 g | 301 kcal | 295 kcal |
Pork, mixed greens, green beans | 292 g | 419 kcal | 509 kcal |
Caesar salad, pork, wheat berries | 290 g | 383 kcal | 395 kcal |
Scrambled eggs, egg whites, yam | 271 g | 309 kcal | 193 kcal |
Broccoli, chicken breast, squash | 332 g | 246 kcal | 344 kcal |
Salmon, beef, squash | 750 g | 1,116 kcal | 979 kcal |
Potatoes, almonds | 122 g | 274 kcal | 277 kcal |
Caesar salad, roasted potatoes, pork | 479 g | 664 kcal | 999 kcal |
Sweet potato, egg whites, berries | 257 g | 274 kcal | 239 kcal |
Caesar salad, pepperoni pizza, raw spinach | 256 g | 327 kcal | 516 kcal |
Pork, pepperoni pizza, cauliflower | 315 g | 455 kcal | 512 kcal |
Watermelon, pineapple, cottage cheese | 483 g | 352 kcal | 350 kcal |
Chicken, raw spinach, green beans | 256 g | 330 kcal | 270 kcal |
Scrambled eggs, berries, pineapple | 415 g | 420 kcal | 405 kcal |
Roasted potatoes, cauliflower, chicken | 264 g | 258 kcal | 350 kcal |
Egg whites, sweet potato, salsa | 871 g | 490 kcal | 251 kcal |
Egg whites, cantaloupe, sweet potato | 753 g | 402 kcal | 491 kcal |
Chicken breast, cheese pizza, brownies | 435 g | 1,030 kcal | 700 kcal |
Fish, eggplant, roasted potatoes | 425 g | 385 kcal | 352 kcal |
Cherry tomatoes, cantaloupe, cauliflower | 303 g | 359 kcal | 246 kcal |
These are cafeteria plates from California, photographed from above in the same lab light, so a plate of pasta at home can land closer or further.
What this does not measure.
Sources.
Ciqual and USDA are official tables, measured by public bodies: the French food safety agency and the United States Department of Agriculture. Open Food Facts carries the figures from product labels. This test checks that Kove uses their figures, but it does not measure them again.
Even an official source can be wrong about a food. When one is, say the right figure: a number you give is logged as you said it, and Kove looks nothing up in that message.
What you actually ate.
A table's apple is an average apple. Yours can be sweeter, and a portion is only known when you weigh it or say it. Kove writes down what it assumed, so the day stays checkable.
Regional dishes.
A burek or a piadina varies more from one bakery to the next than any table varies by error, and no open table is likely to carry them. Kove logs its own estimate, and the second time you have one it offers to keep it as your own food, so the next one logs the same figures.
Sources.
- ANSES Ciqual 2025, the French food composition table, under the Etalab Open Licence 2.0: Anses. 2025. Table de composition nutritionnelle des aliments Ciqual. ciqual.anses.fr
- USDA FoodData Central, SR Legacy and FNDDS, in the public domain. fdc.nal.usda.gov
- Open Food Facts, © Open Food Facts contributors, under the Open Database License. Kove keeps a filtered copy: every product sold in Italy, plus those scanned most elsewhere. The filter that makes the copy. openfoodfacts.org
- Nutrition5k, weighed plates and photos by Thames et al., 2021, under CC BY 4.0. The photos here are resized. Nutrition5k on GitHub
- CREA, Linee guida per una sana alimentazione (2018), for the standard portions. crea.gov.it
Want to try Kove?
Kove is in closed beta, open by invite. Everybody gets 30 days free, with no card.
After the trial Kove is €39 a year. For the first 50 from the waitlist, before launch, it is €29 a year, about €0.08 a day, for as long as you stay.
Join the waitlist Have an invite? Sign in
Only an email address is required. How it is handled.



















