How PoshanSense calculates.
From a food portion to your daily calorie budget: the equations, sources and assumptions behind the numbers.
Checked against app source v0.12.24 · 3 October 2026
Research informs the estimates; it does not validate every app rule. Below, published equations are distinguished from PoshanSense’s own defaults. These are general adult wellness estimates, not measured metabolism or individual medical prescriptions.
1. Calories in your journal
Each entry stores nutrition for one serving. PoshanSense multiplies each value by the logged quantity, then sums the entries for the selected day or meal. A food with 160 kcal per glass, logged as 1.5 glasses, contributes 240 kcal. Protein, carbohydrate and fat follow the same calculation.
Changing the serving description alone does not recalculate nutrition. Change quantity to scale a portion, or edit the per-serving nutrition when the recipe or serving itself changes. Grams and millilitres are not interchangeable.
- Database foods: installed USDA entries use a 100 g basis; choose the matching food and preparation. See USDA FoodData Central documentation.
- Starter, saved and community foods: these may be estimates or user-entered values. Community review does not establish laboratory accuracy. Check the source label and portion.
- AI estimates: Gemini uses the dish or photo and country context, with assumptions about preparation and portion. A typical adult serving may be assumed when unspecified. AI output is not a verified food label.
The app checks AI calorie consistency against 4 × protein + 4 × carbohydrate + 9 × fat, rejecting discrepancies greater than the larger of 40 kcal or 25% of that macro-derived energy. This is an app plausibility check, not nutritional validation; accepted calories are not replaced by the check’s result. Actual food energy can differ because of rounding and food-specific factors. USDA’s food and nutrition information explains the general 4/4/9 factors.
2. Resting energy: Mifflin–St Jeor
The app uses the commonly rounded Mifflin–St Jeor equation to estimate resting energy expenditure, displayed as a resting estimate or BMR. It is not your total daily energy expenditure.
Resting kcal/day = 10 × weight (kg) + 6.25 × height (cm) − 5 × age (years) + offset
- Male equation: offset +5.
- Female equation: offset −161.
- Neutral midpoint: offset −78, the arithmetic midpoint of those two offsets. This is an app adaptation, not a separately validated equation from the study.
For example, age 30, weight 70 kg and height 170 cm gives 1,617.5 kcal/day with the male equation; the app rounds this to 1,618. The original research developed a prediction for healthy people, not a guarantee for every individual. Mifflin et al., 1990, American Journal of Clinical Nutrition; DOI 10.1093/ajcn/51.2.241.
3. From resting energy to a daily target
Without a profile, the app starts at 2,000 kcal/day. This is a placeholder, not a personalised recommendation. Profile calculations accept ages 18–100, heights 120–250 cm and weights 30–350 kg; software input limits do not establish scientific validity throughout those ranges.
For a profile without a selected health condition or pregnancy, estimated maintenance uses the first available option:
- A Health Connect seven-day average of total calories burned, when at least 1,000 kcal/day is supplied.
- Otherwise, resting energy multiplied by a factor selected from average daily steps.
- If steps are unavailable, a temporary factor of 1.2.
The Android seven-day window includes today and the preceding six calendar days, with the aggregate divided by seven. Missing days or a partially completed day can lower the average.
| Average steps/day | Multiplier |
|---|---|
| Below 5,000 | 1.2 |
| 5,000–7,499 | 1.3 |
| 7,500–9,999 | 1.4 |
| 10,000–12,499 | 1.5 |
| 12,500 or more | 1.6 |
These exact multipliers and cutoffs are app heuristics, not part of the Mifflin study. They do not capture all exercise or physical work.
Target-weight adjustment and rounding
The app repeats the resting calculation at your target weight, multiplies it by the current maintenance-to-resting ratio limited to 1.1–1.8, then compares that target-weight maintenance with current maintenance. The suggested change is capped at a 500 kcal/day decrease or a 300 kcal/day increase.
Maintenance, target-weight maintenance and the final recommendation are rounded to the nearest 25 kcal and constrained to 1,000–6,000 kcal/day. These are implementation rules, not recommended intake boundaries or a guaranteed weight-change rate. A manual target stays active until you choose the recommendation again.
4. Activity and calories remaining
Activity credit = 60% of active calories, rounded
Daily budget = base target + activity credit
Remaining = daily budget − logged food calories
For a base target of 2,000 kcal, 300 active kcal and 1,600 logged kcal, the credit is 180, the budget is 2,180 and remaining is 580. The 60% credit is an app choice, not a result established by the studies below. Because maintenance can already include activity, adding this credit can count some activity twice. It should not be read as a measured energy deficit or an instruction to eat back exercise calories.
When a positive active-calorie reading is available, the app uses it. When it is unavailable or zero and steps are positive, a valid profile allows a walking estimate instead.
Walking fallback: the exact calculation
The app uses the full-height equation in Table 2 of Moore et al., Development of a Cadence-Based Metabolic Equation for Walking (2021). With cadence C in steps/min, age A, height H in cm and BMI B:
Gross oxygen uptake = −0.4367 + 0.00143C² − 0.001455AC − 0.000009012BC² + 0.0008086AH
Oxygen uptake is in ml/kg/min. The app assumes C = 100, estimates minutes as steps ÷ 100, subtracts 3.5 ml/kg/min for resting energy, clamps the difference at zero, and calculates active kcal = difference × weight ÷ 1,000 × 5 × minutes, rounded.
The study evaluated level treadmill walking; the app does not measure your actual cadence or terrain. Applying a fixed cadence to all daily steps is an extrapolation. The 2018 walking-cadence review supports 100 steps/min as a broad moderate-intensity heuristic, not proof that all steps are taken at that pace.
Total burn and active burn are different. The daily display uses total burn when supplied, otherwise active burn; active burn alone excludes resting expenditure. Missing or device-estimated readings can make comparisons misleading.
5. Macro references and sugar reminders
The daily macro display converts these energy shares into grams, rounding to whole grams:
| Nutrient | Energy share | At 2,000 kcal |
|---|---|---|
| Protein | 10–15%, divided by 4 | 50–75 g |
| Carbohydrate | 50–55%, divided by 4 | 250–275 g |
| Fat | 20–30%, divided by 9 | 44–67 g |
The app references the ICMR–NIN Dietary Guidelines for Indians, 2024. These bands are general balanced-diet references, not individual prescriptions or a complete meal plan. Their endpoints should not be combined as though they must sum to 100%. The daily display uses the adjusted calorie budget; macro rings use the lower end of each reference. Protein above the band is not marked as exceeding a safety ceiling.
A logged portion with at least 10 g of known added sugar receives a moderation reminder. This app threshold equals 20% of the US FDA’s 50 g Daily Value on a 2,000 kcal diet; it is not a personal limit or diabetes assessment. Unknown sugar remains unknown, and added sugar is included in total sugar and carbohydrate, not added to them again. FDA added-sugar explanation.
6. Health context, BMI and limits
Selecting any listed chronic condition or pregnancy pauses automatic calorie recommendations and disables activity credit. Without a confirmed clinician-agreed target, target-based daily meters are hidden. The app does not calculate condition-specific or pregnancy energy needs.
BMI = weight in kg ÷ height in metres squared. The current app’s weight-reference range uses BMI 18–23, multiplying each endpoint by height squared. This is the app’s implemented range, not a universal healthy-weight definition. WHO’s adult underweight boundary is 18.5, so the app’s lower bound differs. BMI is not a body-fat measurement or a diagnosis. See WHO BMI definitions and the 2004 WHO expert consultation on Asian populations.
Sleep is displayed from Health Connect; it does not enter these calorie equations. Weight logs and trends do not establish fat loss or validate energy estimates. Ingredient amounts, recipes, activity recordings and personal metabolism all introduce uncertainty.
This page documents v0.12.24, rather than promising that every rule is clinically validated. Calculation or source concerns? Contact us. Our editorial approach.