What this tool does
You upload a plate photo, type what was on the plate, or both. The model splits that into items, matches them to a USDA-derived table when it can, and adds calories, protein, carbs, fat, and fiber. Unmatched foods stay marked as estimates. It does not watch you eat and it does not replace a weighed recipe.
How it works
A photo is a noisy ingredient list; a sentence is a noisy one too. Vision names what it can see. Language fills oil, drinks, and brands the camera misses. Arithmetic is not the messy step: matched rows use ordinary serving math. Unseen fat is still the usual miss — write it if you know it.
How to use it
- Add the meal. Upload a plate photo, type the foods and amounts, or both. Mention oil, drinks, and brands in the notes.
- Analyze. The model splits the plate into items and matches USDA-derived rows when the names are ordinary.
- Edit the ledger. Fix portions, add hidden fats, and remove extras before you treat the total as a log.
How to interpret the result
Treat the total as a draft. If the rice looked shiny, add oil. If the chicken was a restaurant breast, it may include injected brine and a butter finish the description missed. Compare the protein grams to your daily target, not to a stranger’s bowl.
Example
“200 g cooked chicken breast, 180 g cooked white rice, 1 cup broccoli, 2 tsp olive oil” should land near 530–580 kcal with about 50 g protein, 55 g carbohydrate, and 12–14 g fat on typical USDA rows. Leave out the oil and the same plate prints ~80 kcal light — that is the usual homemade miss.
Common mistakes
- Writing “healthy bowl” with no weights or fats.
- Forgetting drinks, bread on the side, and the cook’s oil.
- Trusting a 612 kcal total as if it were a bomb calorimeter.
- Logging a family-size tray as one serving.
When this estimate may be off
- The meal is a restaurant special with no public recipe.
- Brand sauces and bakery items that the table cannot match.
- You described a feeling (“light lunch”) instead of foods.
- Hidden fats (mayo under the bun, butter on the steak) stay unsaid.
