How we calculate nutrition
Most apps guess macros, or let a language model invent them. We don't. Every calorie, gram of protein, carb, fat, and fiber on HealthyWeek is built up from measured food-composition data, one ingredient at a time. Here's the whole pipeline - and where we're honest about the limits.
1. We start with measured food data
Our nutrient values come from public, lab-measured food databases - primarily the USDA FoodData Central, supplemented with Indian food-composition references for staples like dal, paneer, and regional grains where they're a better fit. Each food carries a per-100g profile for calories, protein, carbohydrate, fat, fiber, and sodium. Every value traces back to a real, identifiable source record - nothing is hand-typed or estimated by an AI. We also track whether a value was measured raw, cooked, or as-purchased, so measurements never get mixed across contexts.
2. We map each ingredient to a real food
A recipe says “1 onion” or “2 tbsp ghee.” We match every line to a specific entry in the food database. Matching is automated and then checked - when the system isn't confident, the ingredient goes into a human review queue rather than being silently approximated. Crucially, AI is only ever used to help pick which real food a line refers to. It is never used as a source of nutrition numbers themselves. A recipe can't be published while a core ingredient is still unmatched.
3. We convert every quantity to grams
Nutrition is mass-based, so every amount - tablespoons, cups, pieces, millilitres - is converted to grams using the right density or piece weight for that specific food. We account for the edible portion too: when you buy an onion you don't eat the skin, so only the part you actually eat is counted. Garnishes and “to taste” items are set aside rather than guessed. If we don't have a reliable conversion for an ingredient, we flag it instead of inventing a number.
4. We sum the dish, then divide per serving
With every ingredient in grams and mapped to measured data, we scale each one against its per-100g profile, add them all up for the full dish, and divide by the recipe's serving count. The number you see on a recipe is one realistic serving - not the whole pot. Results are deterministic: the same recipe always produces the same macros, so the numbers don't drift between visits.
5. We check our own math
Calories and macros have to agree with each other. We run a fiber-adjusted Atwater cross-check - the standard energy accounting where protein and carbs yield ~4 kcal/g, fat ~9 kcal/g, and fiber counts at a lower rate because the body doesn't fully absorb it. If the stated calories drift too far from what the macros imply, the recipe fails validation and gets fixed before it ever reaches you. This is what catches unit mix-ups and bad data automatically.
6. We tell you when it's an estimate
Honesty beats false precision. We track two things for every dish: how much of the ingredient mass is backed by measured data, and how trustworthy those matches are. When either falls short, the recipe is labelled estimated and we tell you exactly why - for example, “1 ingredient not in food database (92% of mass accounted for).” You always know whether a number is solid or a best-effort approximation.
What we track today
Every dish reports calories, protein, carbohydrate, fat, fiber, and sodium per serving. We don't yet break out micronutrients, sugar vs. complex carbs, or saturated vs. unsaturated fat - when we add them, they'll come from the same measured sources and the same checks. We'd rather ship fewer numbers we trust than more numbers we don't.
Something look off on a recipe? Send it our way at support@healthyweek.in and we'll take a look.