Barcode, generic, or photo: which calorie number to trust
By Cook EZ editorial · Published: 2026-08-30 · Updated: 2026-08-30 · 4 min read
Every calorie number in an app is a retrieval, not a lab test of your plate. A barcode hits a packaged product. A generic hit is USDA FoodData Central for onions, chicken, and cooked rice. A photo is a model guessing from pixels. This article ranks those methods, cites the FDA Nutrition Facts label and Open Food Facts, and describes a logging habit that stays useful even when the three numbers disagree.
If it has a pack, the pack wins
The FDA Nutrition Facts label is the legal number for that packaged food. Serving size first. Dual columns if you might eat the package. Added sugars, sodium, and the ingredients list for allergens live here. Barcode logging should let you change grams if you did not eat the serving.
Open Food Facts is a crowdsourced catalog. It is fast and often right. It lags reformulations. A new label design is a hint to look at the physical panel. If OFF says 90 kcal and the cup says 120, log 120.
User-typed entries in some apps are a fourth pile. Cook EZ prefers FDC generics, barcode and OFF for packages, and the ingredient math on recipes you generated. It should not scrape a stranger's "healthy sandwich."
Rounding on the label means a food with less than 0.5 g trans fat can show 0. Read the ingredients list too. The panel and the list are a pair.
Generics for the actual kitchen
Onions, chicken thighs, cooked lentils, and oil do not have barcodes that mean anything. FoodData Central is the dataset for those. Pick cooked versus raw. Pick meat-only versus skin-on. Pick roasted chickpeas versus boiled if that is what you made.
A generic bagel at 270 kcal and a branded bagel at 320 kcal can both be internally consistent. If you bought a brand, barcode it. If you bought a bakery roll with no panel, a generic plus honesty about size is the job. Weigh it.
Restaurant PDFs are marketing nutrition. They often use a different fryer than tonight's kitchen. Treat them as a starting slider. Shine on the plate means oil. Add it.
Why calorie apps disagree is often this: different rows for the same word. "Chicken" is not a food. Roasted chicken, meat only, per 100 g, is a food.
What a photo can and cannot do
A photo estimate is useful for mixed plates, takeout, and leftover bowls you did not weigh. It will undercount oil and miss the sugar in a clear glaze. Slide those. Cook EZ photo estimates cost a credit. Barcode, search, and logging a saved recipe should not.
Photograph from above if you can. Include a fork for scale if the model needs it. Then edit. The diary is yours. The model is a draft.
Do not photograph a packaged yogurt and skip the barcode. The panel is better. Use the camera for the burrito that has no panel.
If the photo looks like 400 kcal and your eyes see a ladle of dressing, believe your eyes. Add the dressing. Mifflin-St Jeor already set the budget. Lying to the diary only delays the clothes-trend conversation.
Recipes you actually cooked
A Cook EZ generated card with ingredients and oil is closer than a photo of the finished skillet, if you followed the card. Edit oil and skipped items. That is ingredient math, which is how FDC-style logging is supposed to work.
If you cooked from a family recipe, enter the ingredients once, divide by servings, and reuse. Scale if the pot was larger. The recipe scaler is for that.
Leftovers from that pot should use the saved recipe, not a new photo, unless you added a new sauce at reheat. Then barcode the new sauce.
Allergies: the barcode ingredients list and the Cook EZ allergy chips are the safety tools. A calorie number will not warn you about sesame. Read the statement.
A simple order of operations
Packaged: barcode, glance at the panel, fix grams. Unpackaged kitchen staples: FDC, cooked row, weigh. Mixed mystery plate: photo, then slide oil and sauce. Saved Cook EZ dinner: servings eaten, then edit.
Sodium and added sugars still come from the FDA panel on packages. FDC generics have those fields too, with the usual database caveats. Photos guess energy better than they guess milligrams of sodium. Do not use a photo to manage a clinician's 1500 mg sodium cap.
The Dietary Guidelines pattern is still vegetables, protein foods, grains, fruit, dairy or fortified alternatives. The logging method does not change the pattern. It only changes how wrong the number is.
If two methods disagree by 20 kcal on a snack, pick one and cook dinner. If they disagree by 300 kcal on a burrito, look at oil and serving size. That gap is usually behavior, not a conspiracy between databases.
Scan the yogurt. Weigh the rice. Photograph the burrito, then add the dressing you can see. Use FoodData Central for the onion. That is the whole method. The three numbers will still disagree a little. Your job is to pick the one that matches the object in your hand, then eat.
Questions
Is Open Food Facts accurate enough?
Often yes for a first pass. Verify against the pack for foods you eat a lot, or when the package changed. The FDA panel is the law for that product.
Should I barcode rice?
A branded seasoned rice mix, yes. Plain dry rice is a generic. Log cooked grams from FoodData Central after you cook it.
When is a photo worth the credit?
Takeout, parties, and leftover plates you will not weigh. Then edit oil. A Tuesday skillet you cooked from a card is better as the card.
Why did the barcode not match the cup?
Wrong product, old OFF row, or a reformulation. Trust the cup. Fix the grams. Move on.
Sources
Open this in Cook Mode
Photograph the dish or type the title. Cook EZ writes the steps for your kitchen, then you can log the plate.