How CalFitness Calculates Nutrition

Sources & methods · Last updated July 17, 2026

CalFitness does not provide medical advice. Every number in the app is a general estimate produced by the published formulas below, not a clinical measurement or a personalised recommendation. Estimates can be wrong for any individual. Consult a qualified health professional before making significant changes to your diet, exercise or medication — especially if you are pregnant, under 18, or managing a medical condition such as diabetes or an eating disorder.

What this page covers

Resting metabolic rate (RMR)

CalFitness estimates the energy you burn at rest using the Mifflin-St Jeor equation, from your sex, weight, height and age:

RMR = (10 × weight in kg) + (6.25 × height in cm) − (5 × age in years) + s
where s = +5 for male, −161 for female, −78 when sex is unspecified or non-binary

Where measured RMR is unavailable, Endotext cites Mifflin-St Jeor as the most accurate practical estimate for many adults, while noting that error for any individual remains possible.

Source: Endotext — Obesity: Evaluation and Treatment, NCBI Bookshelf

The −78 value used when sex is unspecified is a midpoint between the published male and female constants. It is a CalFitness convention, not part of the original equation.

Activity factor and maintenance calories

Your RMR is multiplied by a physical activity factor to estimate the calories needed to maintain your current weight. Endotext recommends multiplying RMR by an appropriate activity factor for maintenance.

Maintenance calories = RMR × activity factor
Activity levelMaleFemaleUnspecified
Sedentary1.001.001.000
Low active1.111.121.115
Active1.251.271.260
Very active1.481.451.465

Source: Endotext — Obesity: Evaluation and Treatment, NCBI Bookshelf

Your daily calorie target

The daily target adjusts maintenance calories according to your selected goal:

GoalAdjustmentBasis
Lose weight−500 kcal/dayEndotext describes a calculated energy deficit for weight loss; 500 kcal/day is a common starting deficit.
Maintain0 kcalMaintenance calories as estimated above.
Gain muscle+10% of maintenanceA deliberately conservative CalFitness heuristic, not a figure taken from a specific guideline. It should be adjusted using your real weight trend.

If you set a custom percentage adjustment in the app, it replaces the defaults above and is clamped to ±30% of maintenance. Every target is then floored at 1,200 kcal/day and rounded to the nearest whole calorie.

Daily target = round( max( 1200, maintenance + adjustment ) )

Source: Endotext — Obesity: Evaluation and Treatment, NCBI Bookshelf

The 1,200 kcal floor is a safety guard in the software, not a recommendation that 1,200 kcal is appropriate for you. Very-low-calorie intakes should only be undertaken with medical supervision.

Protein, carbohydrate and fat targets

Protein is scaled to your body, not to your calories

Protein is worked out first, from your body mass, and the other two macros divide what is left. It is set as a floor: if you choose a macro split that asks for more protein, you get more; a split that asks for less does not lower it.

Protein (g) = body weight (kg) × multiplier
…or, when a body-fat measurement is available:
Protein (g) = lean body mass (kg) × multiplier

The multiplier rises with the depth of your calorie deficit, and — where lean body mass is known — with how lean you already are:

SituationPer kg body weightPer kg lean mass
Maintaining or gaining1.6 g2.0 g
Mild deficit1.8 g2.4 g
Deficit of 25% or more2.4 g3.0 g
Same, and already lean—3.3 g (max 4.0)

Why it works this way. Protein used to be a fixed percentage of your calorie target. That made the protein target fall whenever the calorie target fell — so choosing a faster rate of loss reduced your protein, and it kept reducing over the course of a diet as you lost weight. The evidence points the other way: protein requirements rise as a calorie deficit deepens and as body fat drops, because there is less stored energy available to spare muscle tissue. Anchoring protein to body mass fixes that direction.

Sources: International Society of Sports Nutrition position stand: protein and exercise (Jäger et al., 2017) — 1.4–2.0 g/kg/day for active people, with higher intakes indicated in a hypocaloric state to preserve lean mass. Helms et al. (2014), International Journal of Sport Nutrition and Exercise Metabolism 24(2), 127–138 — 2.3–3.1 g/kg of fat-free mass for energy-restricted, resistance-trained people.

Carbohydrate and fat

Whatever protein leaves is divided between carbohydrate and fat in the ratio your split specifies, converted to grams at 4 kcal/g for carbohydrate and 9 kcal/g for fat. At least 20 g of fat per day is always reserved: a very low fat intake during rapid weight loss is associated with gallstone formation, because bile that is never called for sits and thickens.

The default split depends on your goal:

GoalProteinCarbohydrateFat
Lose weight40%30%30%
Maintain30%40%30%
Gain muscle30%45%25%

The protein column of these defaults is a starting suggestion for the editable split; the body-mass floor above is what actually sets your protein target unless you raise it yourself.

The Dietary Guidelines for Americans describe Acceptable Macronutrient Distribution Ranges (AMDR) of protein 10–35%, carbohydrate 45–65% and fat 20–35% of calories.

Where CalFitness departs from the Dietary Guidelines: the weight-loss and muscle-gain presets set protein higher, and carbohydrate lower, than the AMDR ranges. This is a common sports-nutrition practice, not a Dietary Guidelines recommendation. Every split is fully editable in the app, and you can set one that sits inside the AMDR ranges if you prefer.

Source: Dietary Guidelines for Americans — ODPHP, U.S. Department of Health and Human Services

Fiber target

The daily fiber target follows the Dietary Guidelines recommendation of 14 g of dietary fiber per 1,000 kcal consumed, then held within the 25–35 g per day range commonly recommended for adults.

Fiber (g) = (target kcal ÷ 1000) × 14, held between 25 g and 35 g

The floor matters on a low calorie target. The per-1,000-kcal rule alone would ask for 20 g at a 1,400 kcal target and less again as the target falls — but eating less food is the situation in which fiber is hardest to reach and most useful, both for regularity and for feeling full.

Source: Dietary Guidelines for Americans — ODPHP

BMI and the suggested starting goal

During onboarding, CalFitness computes body mass index and uses the CDC category to suggest a starting goal. The suggestion is only a default — you can pick any goal.

BMI = weight in kg ÷ (height in m)²
CDC adult categoryBMIGoal CalFitness suggests
UnderweightBelow 18.5Gain
Healthy weight18.5 to below 25Maintain
Overweight25 to below 30Lose
Obesity30 or greaterLose

The CDC describes BMI as a screening measure, not a diagnosis, that should be considered alongside other health factors. Body composition, health history, waist measurement and clinician guidance can all change what goal is appropriate for you.

Source: Adult BMI Categories — Centers for Disease Control and Prevention

Where food calorie and macro data comes from

Nutrition values for foods in CalFitness come from the published databases below. When more than one database describes the same food, CalFitness prefers the higher-quality source in the order shown.

SourceWhat it coversPublisher & licence
IFCT 2017
Preferred first
Indian Food Composition Tables — laboratory-analysed composition for Indian ingredients, per 100 g edible portion. ICMR — National Institute of Nutrition, India
USDA FoodData Central Generic and standard-reference foods analysed or compiled by the USDA. U.S. Department of Agriculture — public domain
INDB Indian Nutrient Databank — 1,014 commonly-consumed Indian cooked dishes, per 100 g edible portion. Indian Nutrient Databank (Jaacks et al.)
Recipes
Calculated, not measured
Indian dishes whose nutrition is computed by resolving each ingredient line to an IFCT/USDA/INDB food and summing the resolved ingredients. Recipe text from Archana's Kitchen Indian Food Dataset. Nutrition derived by CalFitness from the sources above
Open Food Facts Crowd-sourced packaged and branded products, largely transcribed from package labels. Open Food Facts — data licensed under ODbL v1.0
USDA Branded Foods Manufacturer-supplied label data for branded products. U.S. Department of Agriculture — label data supplied by manufacturers
Foods you create Foods, recipes and combos you enter yourself, visible only to you unless you publish them. Entered by you

Attribution

Food data from Open Food Facts is made available under the Open Database License (ODbL) v1.0. Individual contents of the database are available under the Database Contents License. USDA FoodData Central data is in the public domain.

How confident is a given food?

Each food carries a confidence level reflecting how it was obtained. Laboratory-analysed composition tables (IFCT, USDA) rank highest; label transcriptions and crowd-sourced entries rank lower; calculated recipes are only published when resolved ingredients account for a sufficient share of the dish's mass, so a dish whose main ingredient could not be identified is never published.

Known limits and how to correct them