Effective date: September 10, 2026 Last updated: September 10, 2026 Published at: https://uptakex.app/health-disclaimer
UptakeX shows you numbers about your own body: an estimated body fat percentage, an estimated metabolic rate, a daily calorie target, a suggested rate of weight change, and a set of macronutrient and micronutrient targets. Every one of those numbers is an estimate produced by a published formula applied to measurements you entered yourself. None is a measurement of you.
This document names each formula, cites where it was published, states the accuracy its authors reported, and states where it is documented to be unreliable. It also states plainly which of UptakeX's constants are the developer's own choices rather than anything a health authority published.
Read it before you trust a number.
UptakeX is a general wellness and fitness tracking tool. It is not a medical device. It does not diagnose, treat, cure or prevent any condition. Nothing it displays is a substitute for advice from a physician, a registered dietitian or another qualified health professional.
Talk to a clinician before starting any calorie deficit or exercise program, and especially if any of the following applies to you. See section 16 for the full list.
Do not use UptakeX's calorie target to manage a medical condition. Do not change a prescribed diet, medication or treatment because of a number in this app. If you feel unwell, stop and seek medical help. In an emergency, call 911.
UptakeX estimates body fat from three tape measurements and your height, using
the equation the US Department of Defense adopted from the US Navy. In the app's
code (packages/core/src/targetMath.ts), for men:
body fat % = 86.010 x log10(abdomen - neck) - 70.041 x log10(height) + 36.76
All measurements in inches. The app refuses to produce a number when the neck or abdomen measurement is missing, or when the abdomen measurement is not larger than the neck measurement.
The equation in the form UptakeX uses it, in inches and predicting percent fat directly, was published in:
Hodgdon JA, Friedl K. Development of the DoD Body Composition Estimation Equations. San Diego, CA: Naval Health Research Center; 1999. Technical Document No. 99-2B. DTIC AD-A370158. https://apps.dtic.mil/sti/tr/pdf/ADA370158.pdf
That report states the male equation exactly as UptakeX implements it, with R = 0.903 and a standard error of estimate of 3.52 percentage points of body fat, fitted on n = 594.
The underlying method was developed fifteen years earlier, in metric units and predicting body density rather than percent fat:
Hodgdon JA, Beckett MB. Prediction of Percent Body Fat for U.S. Navy Men from Body Circumferences and Height. San Diego, CA: Naval Health Research Center; 1984. Report No. 84-11. DTIC AD-A143890. https://apps.dtic.mil/sti/tr/pdf/ADA143890.pdf
Hodgdon JA, Beckett MB. Prediction of Percent Body Fat for U.S. Navy Women from Body Circumferences and Height. San Diego, CA: Naval Health Research Center; 1984. Report No. 84-29. DTIC AD-A146456. https://apps.dtic.mil/sti/tr/pdf/ADA146456.pdf
The men's report was developed on 602 male US Navy personnel aged 18-56 (mean age 31.9 years), against hydrostatic (underwater) weighing as the criterion, converting body density to percent fat with the Siri equation. It reports multiple R = 0.90 and a standard error of estimate of 0.00791 g/cc, which the report itself describes as equivalent to a standard error of 3.52 percent fat units. Cross-validated on 100 independent Navy men from a different laboratory, it gave r = 0.90 and a standard error of measurement of 2.70 percentage points.
The women's report was developed on 214 female US Navy personnel aged 18-44 (mean age 26.5 years), same criterion method, reporting multiple R = 0.85 and a standard error of estimate equivalent to 3.72 percent fat units. The 1999 re-fit of the women's equation reports R = 0.856 and SEE = 3.61 percent fat.
Siri WE. Body composition from fluid spaces and density: analysis of methods. In: Brozek J, Henschel A, eds. Techniques for Measuring Body Composition. Washington, DC: National Academy of Sciences, National Research Council; 1961:223-244.
A correction worth stating, because almost every app and calculator gets it wrong: the 1984 reports do not contain the constants 86.010, 70.041 and 36.76. Those were first published in the 1999 report, as a re-fit on a slightly smaller subsample of the original data. Sources that cite Hodgdon and Beckett 1984 for those constants are citing the wrong document.
The measurement sites are part of the equation. Measuring in the wrong place produces a wrong answer that looks just as confident.
As defined in the development reports:
Measure to the nearest tenth of an inch, twice, and take a third measurement if the first two differ. Do not pull the tape tight enough to depress the skin.
The women's published equation uses a different abdominal site plus a hip measurement. As defined in the 1984 reports:
The hip definition above is quoted from the MEN'S report, 84-11, not from the women's. Report 84-29 requires a hip circumference in its own equation and never defines the site: its measurement list has eleven entries (Neck, Shoulders, Chest I, Abdomen I, Abdomen II, Thigh, Calf, Arm extended, Arm relaxed, Forearm, Wrist), matching its own stated count, and hip is not among them. That was checked against a rendered page image rather than extracted text, so it is a genuine gap in the source rather than a transcription failure.
The 1999 report, which is where the constants UptakeX uses come from, defines no anatomical sites at all. The sites therefore come from the 1984 reports in both cases.
The standard error of 3.5 percentage points is the error the equation showed on the 1980s Navy sample it was fitted to, against 1980s hydrostatic weighing. Modern comparisons against DXA are substantially worse, and the errors are systematic rather than random.
In 609 US Marines measured against DXA:
Potter AW, Tharion WJ, Holden LD, Pazmino A, Looney DP, Friedl KE. Circumference-based predictions of body fat revisited: preliminary results from a US Marine Corps body composition survey. Front Physiol. 2022;13:868627. doi:10.3389/fphys.2022.868627
| Group | Mean bias vs DXA | Concordance correlation | Variance explained |
|---|---|---|---|
| Men 30 and under | -2.6 +/- 3.7 percentage points | 0.57 | 0.32 |
| Men over 30 | -2.5 +/- 3.7 | 0.51 | 0.26 |
| Women 30 and under | +2.3 +/- 4.3 | 0.74 | 0.54 |
| Women over 30 | +1.3 +/- 4.8 | 0.72 | 0.52 |
The authors' own conclusion is that the method "may be useful for standards categorization but is not valid as a quantitative research tool."
The same asymmetry appears inside the source report itself, which matters because it is not a later study disagreeing with the authors but the authors' own validation. In Hodgdon and Friedl 1999, the equations overestimated body fat by 2.00 percentage points for women against a four-compartment criterion and 3.22 against a two-compartment one, versus 0.833 and 1.25 for men. The same report puts the Navy-versus-Marine-Corps prediction gap at "1.09% fat for men and 3.04% fat for women." So the direction Potter and colleagues found in 2022, women overestimated, was already visible in 1999.
Against that, the 1999 moderator analysis found sex not significant and concluded that "the models fit equally well for both genders." Both are reported here because they answer different questions: whether the equation is equally well specified for each sex, and whether its predictions are equally unbiased. The evidence says yes to the first and no to the second.
Where it is documented to fail:
Individual use. In 1,904 active-duty US Army soldiers, the 95% confidence interval on the error against DXA was -9.69 to +6.25 percentage points for women and -11.50 to +1.89 for men. Those intervals are roughly 13-16 percentage points wide.
McClung HL, Bartlett PM, Spiering BA, et al. Science behind policy: implementing a modern circumference-based body fat equation with a physical fitness threshold is associated with lower musculoskeletal injury risk. Int J Obes (Lond). 2025;49(4):723-730. doi:10.1038/s41366-024-01701-5
Tracking change over time. In 1,407 Army recruits over 8 weeks of basic training, DXA showed women lost 4.0 +/- 2.4 percentage points of body fat while the circumference method showed 0.0 +/- 3.3 (p = 0.86). Only 56% of women were even correctly classified as gaining or losing.
Foulis SA, Friedl KE, Spiering BA, et al. Body composition changes during 8 weeks of military training are not accurately captured by circumference-based assessments. Front Physiol. 2023;14:1183836. doi:10.3389/fphys.2023.1183836
This is the single most important limitation for a tracking app. UptakeX does not chart your body fat percentage over time, and you should not treat a change in this number between two measurements as real.
The very lean. The method systematically overestimates body fat in lean people. Potter et al. found "the largest overestimations occurred for the leanest women."
Higher body fat. The method systematically underestimates body fat at the high end, because fat distributed away from the abdomen is invisible to it.
Sex asymmetry. The equations underestimate men considerably more than women (mean bias -4.79 vs -1.69 percentage points in Taylor et al. 2024).
Ethnicity. The equations were fitted against a two-compartment hydrostatic criterion, and the 1999 report states plainly that "deviations from the assumption of equal fat-free mass density differ systematically across ethnic groups," so "predictions based on equations developed using a two-compartment analysis will have systematic over or under estimation of body fat content associated with ethnicity." In the 1999 Navy sample the measured race effect was statistically significant but accounted for less than 0.5% of variance, which the authors judged not meaningful.
Population specificity. Both 1984 reports state that "anthropometric predictive equations such as this one tend to be population specific." The development populations were active-duty US Navy personnel in the 1980s, men aged 18-56 and women aged 18-44. Nothing supports use in children, adolescents, adults over about 60, or during pregnancy.
Muscularity. It is widely claimed that the method misreads very muscular people. We could not find a peer-reviewed study isolating muscularity as a moderator, and the 1999 moderator analysis found neck circumference not significant. We therefore do not assert a muscularity bias as established, and we note the claim is unverified in either direction.
The app implements both published equations. It did not always. Until task
L-2, bodyFatPercent returned no value when the profile's sex was not male,
because the female equation requires a hip circumference and the database had no
column for one, so a female profile got no body fat estimate, no lean body mass,
no metabolic rate, no maintenance-calorie estimate and no target breakdown at
all. That was a functional gap rather than a modeling choice, and it is recorded
here rather than quietly removed.
profile.hip_in now exists, the female equation is implemented with the
constants verified in 3.2, and the settings form asks for the hip measurement on
the profiles whose equation uses it.
Anything that is not male takes the female equation, rather than returning nothing. That is a deliberate choice with a real caveat: the equation was fitted on female US Navy personnel, so for a profile that is neither it carries more uncertainty than the published error bars in 3.2 describe. UptakeX takes the view that a disclosed approximation is better than the empty screen, which was not a modeling position so much as the absence of one.
The measurement site is named ambiguously in the data model. The database
column is called waist_in, but the male equation requires the abdominal
circumference at the navel, which for men is a different and usually larger site
than the natural waist. The app's onboarding instructions do correctly say "waist
at navel level," so the instruction matches the published site even though the
field name does not.
The field is now labeled by site, and the site depends on the equation. The
settings form shows "Abdomen (At Navel)" on a male profile and "Waist (Narrowest
Point)" otherwise, each with the measuring instruction beside it, because the two
published equations genuinely measure in different places and one column stores
whichever the profile's equation asks for. The column name waist_in is still
imprecise, but nothing a user sees says "waist" to someone whose equation wants
the abdomen.
As of the CY2026 physical fitness cycle, the US Navy no longer uses this method. Its current Body Composition Assessment uses a waist-to-height ratio screen followed by a body fat table based on waist, height and weight, with no neck and no hip measurement.
U.S. Navy. Physical Readiness Program Guide-4: Body Composition Assessment. December 2025. Issued under OPNAVINST 6110.1L (29 December 2025). https://www.mynavyhr.navy.mil/Portals/55/Support/Culture%20Resilience/Physical/Guide-4%20Body%20Composition%20Assessment.pdf
The US Army replaced its equivalent legacy equation in 2023. The current Department of Defense instruction prescribes no specific equation at all and recommends that circumference-based assessment "account for height," suggesting waist-to-height ratio.
Department of Defense. DoD Instruction 1308.03: DoD Physical Fitness/Body Composition Program. Effective 10 March 2022; Change 1, 25 June 2025. https://www.esd.whs.mil/portals/54/documents/dd/issuances/dodi/130803p.pdf
We disclose this because it is material. The equation UptakeX uses is a real, published, validated equation with a documented error, and it remains one of the better tape-measure methods available. It is also the method its originating service has retired. If you want an accurate body composition measurement, get a DXA scan. [OWNER: consider whether to keep calling this "Navy method" in the UI. It is historically accurate and widely recognized, but it now implies a current endorsement that no longer exists.]
weight_kg = weight_lb / 2.2046
lean body mass_kg = weight_kg x (1 - body fat % / 100)
This is arithmetic, not a model. It has no source and needs none.
Lean body mass here is entirely derived from the body fat estimate in section 3. It inherits every error in that estimate, amplified by your body weight. At 180 lb, an error of 3.5 percentage points in body fat is an error of about 6.3 lb in lean mass, and that error then propagates into your metabolic rate, your maintenance calories, your calorie target and your protein target.
Everything downstream of section 3 is built on a number with a documented standard error of at least 3.5 percentage points, and in modern DXA comparisons a 95% interval more than 13 percentage points wide.
How much that is worth in calories, as arithmetic. Published measurements put the marginal cost of fat-free mass at roughly 22 to 28 kcal per day per kilogram. One study of 114 adults with DXA-measured composition reported, verbatim: "For every kg increase in FFM, RMR increased by 28 kcal/day (p less than 0.0001)."
Reneau J, Obi B, Moosreiner A, Kidambi S. Do we need race-specific resting metabolic rate prediction equations? Nutr Diabetes. 2019;9(1):21. doi:10.1038/s41387-019-0087-8. PMID 31358726
So for an 80 kg person, a 5 percentage point error in the body fat estimate is a 4 kg error in lean mass, which is roughly 90 to 110 kcal/day of error in the metabolic rate estimate before any activity multiplier multiplies it. This calculation is our own arithmetic on published coefficients, not a published finding. We looked for a study that propagates body-composition error into metabolic-rate error and did not find one.
BMR (kcal/day) = 370 + 21.6 x lean body mass in kg
This equation is commonly labeled "Katch-McArdle" after the exercise physiology textbook that popularized it. Its actual published source is Cunningham, and the constants UptakeX uses are exactly the ones Cunningham proposed in 1991:
Cunningham JJ. Body composition as a determinant of energy expenditure: a synthetic review and a proposed general prediction equation. Am J Clin Nutr. 1991;54(6):963-969. doi:10.1093/ajcn/54.6.963. PMID 1957828
Verified from the published abstract: "A generalized prediction equation is proposed as REE = 370 + 21.6 x FFM. This equation explains 65-90% of the variation in REE." It is a synthetic review of the literature relating resting energy expenditure to fat-free mass, not a single new dataset.
The earlier and more frequently cited paper is:
Cunningham JJ. A reanalysis of the factors influencing basal metabolic rate in normal adults. Am J Clin Nutr. 1980;33(11):2372-2374. doi:10.1093/ajcn/33.11.2372. PMID 7435418
Verified from the primary source PDF, that paper reports:
BMR (cal/day) = 501.6 + 21.6 (LBM), which the
paper rounds for practical use to 500 + 22 (LBM).So the intercept differs between the two papers: 501.6 in 1980, 370 in 1991. UptakeX uses the 1991 form. On a 60 kg lean mass that is a difference of about 130 kcal/day between the two published versions of "the same" equation, which is itself a useful illustration of how much precision to attribute to any of them.
In 90 recreational athletes aged 18-35, measured by indirect calorimetry, the Cunningham equation predicted resting energy expenditure within 10% of measured for 84.9% of men and 78.4% of women, and had the lowest bias of the equations tested. Harris-Benedict and Mifflin-St Jeor were each under 50% accurate in the same sample.
Ten Haaf T, Weijs PJM. Resting energy expenditure prediction in recreational athletes of 18-35 years: confirmation of Cunningham equation and an improved weight-based alternative. PLoS One. 2014;9(10):e108460. doi:10.1371/journal.pone.0108460. PMID 25275434
For comparison, the most widely validated equation that does not need a body composition estimate:
Mifflin MD, St Jeor ST, Hill LA, Scott BJ, Daugherty SA, Koh YO. A new predictive equation for resting energy expenditure in healthy individuals. Am J Clin Nutr. 1990;51(2):241-247. doi:10.1093/ajcn/51.2.241. PMID 2305711
That paper was derived from 498 healthy adults aged 19-78, including 234 obese individuals, with resting energy expenditure measured by indirect calorimetry, and reports R-squared = 0.71.
One finding in that paper deserves emphasis, because it cuts against the whole premise of a lean-mass-based equation. Verbatim: "Fat-free mass (FFM) was the best single predictor of REE (R-squared = 0.64): REE = 19.7 x FFM + 413. Weight also was closely correlated with REE (R-squared = 0.56): REE = 15.1 x weight + 371." In the largest indirect-calorimetry cohort available, fat-free mass (0.64) barely beat plain body weight (0.56), and both lost to the weight, height, age and sex equation (0.71). A lean-mass-based equation is not automatically better than one that needs no body composition estimate at all, and UptakeX's lean mass comes from a tape measure rather than from a scan.
This document should not present only the flattering result. A 2023 systematic review with meta-analysis pooled 29 studies, 1,430 athletes and 100 equations, and reported the percentage of individuals predicted within 10% of measured resting metabolic rate:
| Equation | Studies | n | Within 10% |
|---|---|---|---|
| ten Haaf (2014) | 3 | 177 | 80.2% |
| De Lorenzo (1999) | 3 | 190 | 63.7% |
| Cunningham (1980), lean mass | 7 | 233 | 54.1% |
| Harris-Benedict | 8 | 490 | 53.7% |
| Mifflin-St Jeor (weight, height, age) | 6 | 414 | 52.2% |
| Mifflin-St Jeor, fat-free mass form | 3 | 303 | 44.9% |
O'Neill JER, Corish CA, Horner K. Accuracy of resting metabolic rate prediction equations in athletes: a systematic review with meta-analysis. Sports Med. 2023;53(12):2373-2398. doi:10.1007/s40279-023-01896-z. PMID 37632665
Verbatim from that review: "heterogeneity was considerable with many comparisons in each equation under- and overpredicting RMR," and "Focusing on mean bias alone could mask important inter-individual differences." In their most highly trained tier of athletes, precision was 19.7%.
And in a population where it fails outright, 620 women with fat-free mass measured by bioelectrical impedance:
Molina-Luque R, Molina-Recio G, de-Pedro-Jiménez D, Álvarez-Fernández C, Romero-Saldaña M, Rich-Ruiz M. Accuracy of the resting energy expenditure estimation equations for healthy women. Nutrients. 2021;13(2):345. doi:10.3390/nu13020345. PMID 33498930
The 370 + 21.6 form (labeled Katch-McArdle there) had a bias of +162.6 kcal/day and predicted only 39.5% of women within 10% of measured. The 1980 form (500 + 22) was worse: +310.7 kcal/day, 14.5% within 10%. Accuracy improved as BMI rose rather than falling, from 25.6% within 10% in normal-weight women to 53.4% in obese women, because an equation that sees only lean mass is blind to the energy contribution of fat mass. That is exactly the caveat Cunningham himself raised in 1991: "An independent contribution by FM to the prediction of either REE or TDEE is not supported for the general population ... In the subset of obese women, FM may be a significant predictor."
The most important number in that study: the correlation between fat-free mass and resting energy expenditure was r = 0.632 overall but only r = 0.389 in normal-weight women. Within a narrow BMI band, lean mass explains roughly 15% of the variation in resting metabolic rate. (Caveat: measured expenditure in that cohort was low relative to typical values, so all twelve equations tested overestimated. Trust the rankings and the within-group correlations more than the absolute biases.)
Two further limitations, both from primary sources:
Even accurately measured lean mass leaves a quarter of the variation unexplained. In 150 adults: "63% was explained by FFM, 6% by FM, and 2% by age ... Twenty-six percent of the variance remained unexplained." Circulating thyroxine explained 25% of the residual variance in men.
Johnstone AM, Murison SD, Duncan JS, Rance KA, Speakman JR. Factors influencing variation in basal metabolic rate include fat-free mass, fat mass, age, and circulating thyroxine but not sex, circulating leptin, or triiodothyronine. Am J Clin Nutr. 2005;82(5):941-948. doi:10.1093/ajcn/82.5.941. PMID 16280423
The 21.6 coefficient is not actually a constant, so the equation under-tracks real change. In 20 resistance-trained men over 6 weeks, the ratio of resting metabolic rate to fat-free mass rose 5.6 +/- 5.2%, and "All prediction equations underestimated mean RMR changes ... 75 to 155 kcal per day ... no equation demonstrated equivalence with IC." This matters specifically for an app that tracks change over months.
Rodriguez C, Tinsley GM, et al. Effects of resistance training on resting metabolic rate and its estimation by prediction equations. J Strength Cond Res. 2022;36(11):3093-3104. doi:10.1519/JSC.0000000000004077. PMID 34172636
Populations where lean-mass-based equations are documented to be unreliable:
Athletes, in inconsistent directions. Physique athletes have been found to need a coefficient nearer 25.9 than 21.6.
Obesity, where accuracy falls for every equation.
Older adults. In the Molina-Luque cohort aged 60 and over, the 370 + 21.6 form predicted only 27.6% within 10%, and the lean-mass correlation fell below the fat mass correlation.
Adolescents, where pubertal stage is a significant independent predictor, so any equation without it is structurally wrong.
Non-white populations, quantifiably. A review of 15 studies found resting metabolic rate lower in African American than in white adults by 81 to 274 kcal/day, differences that "could not be explained by differences in age, fat-free mass (FFM) or methodological concerns."
Gannon B, DiPietro L, Poehlman ET. Do African Americans have lower energy expenditure than Caucasians? Int J Obes Relat Metab Disord. 2000;24(1):4-13. PMID 10702744
Pregnancy. We found no validation study of lean-mass-based resting metabolic rate equations in pregnancy. Do not use these numbers while pregnant.
UptakeX's code and this document say "lean body mass." Cunningham's equation is defined on fat-free mass, and current expert guidance discourages the older term. Verbatim: "the use of the molecular-level term 'lean body mass' is discouraged because it inaccurately refers to fat-free mass (FFM), lean mass, or lean soft tissue (LST) ... The term 'lean mass' is equivalent to FFM, but not to LST, as FFM includes bone mineral content."
Prado CM, Gonzalez MC, Norman K, et al. Methodological standards for body composition: an expert-endorsed guide for research and clinical applications: levels, models, and terminology. Am J Clin Nutr. 2025;122(2):384-391. doi:10.1016/j.ajcnut.2025.05.022. PMID 40754386
Practical consequence for you: if you compare UptakeX's figure against a DXA report, DXA "lean mass" (lean soft tissue) excludes bone mineral and will read several kilograms lower than the fat-free mass this equation expects. They are not the same quantity, so a mismatch does not necessarily mean either is wrong.
TDEE = BMR x activity multiplier, and after that first estimate the stored
maintenance-calorie figure (goals.tdee_estimate) becomes the source of truth
and is corrected from your own data (section 8).
There is exactly one multiplier ladder in the app, in
estimateActivityMultiplier, and it is keyed off the gym days per week on your
profile:
| Gym days per week | Multiplier |
|---|---|
| 0-1 | 1.35 |
| 2-3 | 1.45 |
| 4-5 | 1.55 |
| 6 or more | 1.70 |
It seeds the first estimate only. Once goals.tdee_estimate is stored, that
figure is what the app uses, and section 8 corrects it from your own weight
trend.
When you edit a body statistic, UptakeX preserves your effective multiplier by scaling the stored maintenance figure by the ratio of the new BMR to the old one, rather than recomputing a multiplier from scratch.
The specific ladder 1.2 / 1.375 / 1.55 / 1.725 / 1.9 has no primary source. This is a verified negative finding, not an incomplete search.
1.375 and 1.725 occur
zero times, as do "sedentary," "lightly active," "moderately active," "very
active" and "activity factor." The search is trustworthy because the monograph's
real constants are present verbatim in the same text.So these five values are a widely used industry convention with no identifiable
origin. A code comment in targetMath.ts calls them "standard Harris-Benedict
activity tiers," and that comment is provably incorrect.
The code comment is corrected. estimateActivityMultiplier now states that
these values have no published source, names Harris-Benedict 1919 and the
FAO/WHO/UNU reports as verified negatives, and points here.
The five-value ladder is not in the app. Checked directly rather than
assumed. The values 1.35 / 1.45 / 1.55 / 1.7 in estimateActivityMultiplier are
the only activity multipliers in the codebase. The 1.2 / 1.375 / 1.55 / 1.725 /
1.9 ladder is written up here because UptakeX's four values are the same
unsourced convention in a shorter form, and a reader deserves to know that the
convention itself has no origin.
The authoritative equivalent is the Physical Activity Level, defined as the ratio of total energy expenditure to basal metabolic rate. Two national and international bodies define categories for it, and they do not agree with each other or with UptakeX's ladder.
Institute of Medicine, 2002/2005:
| Category | PAL range |
|---|---|
| Sedentary | 1.0 to under 1.4 |
| Low active | 1.4 to under 1.6 |
| Active | 1.6 to under 1.9 |
| Very active | 1.9 to under 2.5 |
Institute of Medicine, Panel on Macronutrients, Food and Nutrition Board. Dietary Reference Intakes for Energy, Carbohydrate, Fiber, Fat, Fatty Acids, Cholesterol, Protein, and Amino Acids. Washington, DC: National Academies Press; 2005. doi:10.17226/10490. Chapter 5, pp. 157-158 and Table 5-12.
Those cut-points were superseded in 2023. The National Academies issued a new Dietary Reference Intake for Energy, renamed "sedentary" to "inactive," and re-derived the cut-points from doubly-labeled-water quartiles: for adults 19 and over, inactive 1.00 to under 1.53, low active 1.53 to under 1.68, active 1.68 to under 1.85, very active 1.85 to under 2.50.
National Academies of Sciences, Engineering, and Medicine. Dietary Reference Intakes for Energy. Washington, DC: National Academies Press; 2023. doi:10.17226/26818. https://www.ncbi.nlm.nih.gov/books/NBK591034/
FAO/WHO/UNU, 2004, which uses three categories rather than four or five:
| Category | PAL |
|---|---|
| Sedentary or light activity lifestyle | 1.40 to 1.69 |
| Active or moderately active lifestyle | 1.70 to 1.99 |
| Vigorous or vigorously active lifestyle | 2.00 to 2.40 |
FAO/WHO/UNU. Human Energy Requirements: Report of a Joint FAO/WHO/UNU Expert Consultation, Rome, 17-24 October 2001. FAO Food and Nutrition Technical Report Series No. 1. Rome: FAO; 2004. Table 5.3. http://www.fao.org/4/y5686e/y5686e07.htm
A conflict worth disclosing rather than hiding. UptakeX's ladder falls inside the IOM 2002/2005 span, which is the honest defense of it. But against FAO's categories, UptakeX's "sedentary" 1.2 sits below FAO's entire habitual range (FAO reserves values near 1.2 for the survival of totally inactive dependent people), and UptakeX's "moderately active" 1.55 is what FAO explicitly labels sedentary or light activity. Two people using the same words mean different numbers.
The 2023 National Academies report says the category cannot be assigned reliably. Verbatim: "At present, it appears that a valid, reliable tool does not exist to enable accurate classification of an individual's PAL category."
The same report is equally direct about the resulting error. Verbatim: "requirements for energy vary among individuals with the same age, height, weight, and PAL category," and "the calculated EER for an individual has a large confidence interval, so comparing an individual's energy intake to their calculated EER does not indicate whether they are meeting, exceeding, or falling below their actual energy requirement." Its own validation against 8,600 doubly-labeled-water observations reports a mean absolute percentage error of 9% and a standard error of the predicted value of 342 kcal/day for men and 241 kcal/day for women, giving worked 95% intervals such as 1,803 to 2,747 kcal/day for one set of characteristics.
The most direct published test of exactly what UptakeX does, multiplying a resting metabolic rate by an activity factor, was run in 1,657 adults aged 65-90 against doubly-labeled water:
Porter J, Ward LC, Nguo K, et al. Development and validation of age-specific predictive equations for total energy expenditure and physical activity levels for older adults. Am J Clin Nutr. 2024;119(5):1111-1121. doi:10.1016/j.ajcnut.2024.02.005
Verbatim: "this provided for poor estimation of TEE with LOA for individual prediction approximating +/- 30%." Their limits of agreement for resting metabolic rate multiplied by a mean activity factor were +/- 29.7% in men and +/- 32.8% in women. Narrowing that to about +/- 11% required assigning each person to their activity category using their measured activity level, which in real use you cannot do: you guess.
For scale, doubly-labeled water's own precision is around 3 to 6%, so the prediction error is three to five times larger than the reference method's own error. This is real biology and real category-assignment error, not measurement noise.
Both Dietary Reference Intake reports prescribe the same remedy. The IOM: "Relative body weight (i.e. loss, stable, gain) is the preferred indicator of energy adequacy." The 2023 report: "monitoring body weight and adjusting intake as needed."
That is precisely why UptakeX treats the multiplier as a starting guess and then corrects the maintenance figure from your own weight trend. See section 8.
From applyGoalAdjustment in packages/core/src/targetMath.ts:
cut: calories = TDEE - min(rate x 500, TDEE x 0.25)
bulk: calories = TDEE + rate x 350
maintain: calories = TDEE
where rate is your chosen target rate in pounds per week. So:
500 kcal per day for one pound per week is the 3,500 kcal per pound convention, first stated in:
Wishnofsky M. Caloric equivalents of gained or lost weight. Am J Clin Nutr. 1958;6(5):542-546. doi:10.1093/ajcn/6.5.542
It is also the figure US clinical guidance uses. The NIH National Heart, Lung, and Blood Institute clinical guidelines state, verbatim and at their highest evidence grade: "A diet that is individually planned to help create a deficit of 500 to 1,000 kcal/day should be an intregal part of any program aimed at achieving a weight loss of 1 to 2 lb/week" (the typo is in the original).
National Heart, Lung, and Blood Institute. Clinical Guidelines on the Identification, Evaluation, and Treatment of Overweight and Obesity in Adults: The Evidence Report. Bethesda, MD: National Institutes of Health; September 1998. NIH Publication No. 98-4083. https://www.ncbi.nlm.nih.gov/books/NBK2003/
We must also disclose that this convention is known to be wrong as a predictor. It assumes a fixed energy cost per pound and ignores the fact that your metabolism falls as you lose weight:
Hall KD, Sacks G, Chandramohan D, Chow CC, Wang YC, Gortmaker SL, Swinburn BA. Quantification of the effect of energy imbalance on bodyweight. Lancet. 2011;378(9793):826-837. doi:10.1016/S0140-6736(11)60812-X. PMID 21872751
Verbatim: "Widespread official recommendations from the National Health Service in the UK, the National Institutes of Health and the American Dietetic Association in the USA erroneously state that reduction of energy intake by about 2 MJ per day will result in slow and steady weight loss of about 0.5 kg per week. This ubiquitous weight-loss rule (also known as the 3500 kcal per pound rule) was derived by estimation of the energy content of weight lost but it ignores dynamic physiological adaptations to altered body weight."
How wrong, in numbers. For a 100 kg sedentary man cutting 480 kcal/day, the static rule predicts 22 kg lost in the first year, which Hall et al. describe as "about 100% greater weight loss than our model prediction." Against measured data from the CALERIE trial:
Thomas DM, Gonzalez MC, Pereira AZ, Redman LM, Heymsfield SB. Time to correctly predict the amount of weight loss with dieting. J Acad Nutr Diet. 2014;114(6):857-861. doi:10.1016/j.jand.2014.02.003. PMID 24699137
The static rule overpredicted weight loss with a bias of 4.8 kg at 12 weeks and 11 kg at 24 weeks. The measured energy cost of weight change rose from 4,858 +/- 388 kcal/kg at week 4 to 6,569 +/- 272 kcal/kg by week 24, against the rule's fixed 7,700 kcal/kg.
What this means for you. UptakeX uses 500 kcal per pound per week to set a starting target, because that is what clinical guidance does. It does not rely on it to predict your results, because it is a poor predictor. Instead the app measures what actually happens to your weight and corrects the maintenance figure from that (section 8). Expect your real rate of loss to be slower than the target rate implies, and to slow further over months. That is physiology, not a failure of adherence.
Stated plainly: the 25% cap is the developer's own conservative design choice. No health authority publishes a maximum percentage deficit, and we are not claiming one does.
We searched for one specifically. Every authority we checked expresses deficit guidance in absolute calories per day and rate guidance in pounds or kilograms per week, not as a percentage of maintenance. That includes the NHLBI 1998 guidelines, the NHLBI 2000 practical guide, the NHLBI 2013 systematic evidence review, the 2013 AHA/ACC/TOS obesity guideline, the Academy of Nutrition and Dietetics 2014 and 2023 guidelines, the ACSM 2009 position stand and the ISSN 2017 position stand. A 2025 scoping review of 73 expert-group documents from 14 organizations reached the same conclusion, reporting deficit guidance as "250-1000 kcal/day" and rate guidance as "0.5-1.0 kg/week."
Delany LV, Costello N, Jones B, Backhouse SH. Dietary recommendations for body mass and composition manipulation in male and female athletes: a scoping review of consensus statements, position stands and practice guidelines from international expert groups. Sports Med. 2025;55:2445-2487. doi:10.1007/s40279-025-02285-4. PMID 40841871
What the cap can honestly be measured against. Four published anchors bound it, and all four place 25% on the conservative side:
The one percentage figure that does appear in a major clinical guideline is 30%, and it appears as a permitted prescription rather than a limit. The 2013 AHA/ACC/TOS obesity guideline, Evidence Statement 1, at Strength of Evidence High, lists "prescription of an energy deficit of 500 kcal/d or 750 kcal/d or 30 percent energy deficit." UptakeX's cap is therefore more conservative than the largest percentage deficit endorsed at high strength of evidence by that guideline.
Jensen MD, Ryan DH, Apovian CM, et al. 2013 AHA/ACC/TOS guideline for the management of overweight and obesity in adults. Circulation. 2014;129(25 Suppl 2):S102-S138. doi:10.1161/01.cir.0000437739.71477.ee. PMID 24222017
A randomized trial straddling the cap. In 24 elite athletes, a slow weight-loss arm reduced energy intake by 19 +/- 2% and a fast arm by 30 +/- 4%. Lean body mass increased 2.1 +/- 0.4% in the slow arm and was unchanged (-0.2 +/- 0.7%) in the fast arm, a significant difference between groups. UptakeX's 25% cap sits between the two arms.
Garthe I, Raastad T, Refsnes PE, Koivisto A, Sundgot-Borgen J. Effect of two different weight-loss rates on body composition and strength and power-related performance in elite athletes. Int J Sport Nutr Exerc Metab. 2011;21(2):97-104. doi:10.1123/ijsnem.21.2.97. PMID 21558571
A 25% deficit has been prescribed as a supervised research intervention. The CALERIE 2 trial randomized 218 non-obese adults to a 2-year intervention "designed to achieve 25% CR," and reported it "without adverse effects on quality of life." Two caveats matter: it was medically supervised throughout, and participants only actually achieved 11.7 +/- 0.7% restriction, so a 25% prescription in practice produced roughly half that deficit.
Ravussin E, Redman LM, Rochon J, et al. A 2-year randomized controlled trial of human caloric restriction: feasibility and effects on predictors of health span and longevity. J Gerontol A Biol Sci Med Sci. 2015;70(9):1097-1104. doi:10.1093/gerona/glv057. PMID 26187233
Larger deficits produce more metabolic slowdown. The magnitude of adaptive thermogenesis correlates with the size of the energy deficit (r = 0.55, p = 0.004). This is the mechanistic reason to cap a deficit at all, though it does not identify the right number.
Knuth ND, Johannsen DL, Tamboli RA, et al. Metabolic adaptation following massive weight loss is related to the degree of energy imbalance and changes in circulating leptin. Obesity (Silver Spring). 2014;22(12):2563-2569. doi:10.1002/oby.20900. PMID 25236175
A percentage cap is not a calorie floor. A cap scales with the person, so at 25% below maintenance someone with a low maintenance figure can still be handed a target that authorities consider too low to be nutritionally adequate. UptakeX had no floor at first, which was a real gap; it now has one, and both the gap and the fix are recorded here rather than glossed.
Two published thresholds apply:
About 1,200 kcal/day is where nutrient adequacy becomes a documented concern. The Academy of Nutrition and Dietetics 2014 guideline, at its Strong/Imperative rating, states: "Limited research reports reductions in nutrient adequacy with weight loss through an energy restriction of at least 500kcal per day or daily consumption below 1,200kcal per day." The same guideline and the 2013 AHA/ACC/TOS guideline both prescribe 1,200-1,500 kcal/day for women and 1,500-1,800 kcal/day for men.
Academy of Nutrition and Dietetics. Adult Weight Management Evidence-Based Nutrition Practice Guideline. Evidence Analysis Library; 2014. https://www.andeal.org/vault/pqnew130.pdf
Below 800 kcal/day is a very-low-calorie diet and requires medical supervision. The 2013 AHA/ACC/TOS guideline, Recommendation 4e, at Grade A (Strong): "Use a very-low-calorie diet (defined as less than 800 kcal/d) only in limited circumstances and only when provided by trained practitioners in a medical care setting where medical monitoring and high-intensity lifestyle intervention can be provided. Medical supervision is required because of the rapid rate of weight loss and potential for health complications." The NHLBI guidance agrees: such diets are "not recommended for weight loss therapy because the deficits are too great, and nutritional inadequacies will occur," and "should not be used routinely, especially not by providers untrained in their use."
Implemented. UptakeX enforces an absolute calorie floor alongside the
percentage cap: 1,500 kcal/day where the profile's sex is male, and 1,200
kcal/day otherwise, taking the bottom of each range the 2013 AHA/ACC/TOS and
AND 2014 guidelines prescribe. calorieFloor() and applyGoalAdjustment() in
packages/core/src/targetMath.ts are where this lives, and it is the single
place every calorie target in the app passes through, on the phone and on the
web.
Three details of how it behaves, because a floor that is silent is only half a safeguard:
For an unrecognised or unspecified sex value the floor is 1,200, because that
is the threshold the AND guideline names for nutrient adequacy in general and so
is the number that can be defended without knowing which range applies.
The CDC states: "People who lose weight at a gradual, steady pace, about 1 to 2 pounds a week, are more likely to keep the weight off than people who lose weight quicker."
Centers for Disease Control and Prevention. Steps for Losing Weight. Page last reviewed January 17, 2025. https://www.cdc.gov/healthy-weight-growth/losing-weight/index.html
The NHLBI guidelines set the same figure as a goal, at Evidence Category B: "Weight loss should be about 1 to 2 lb/week for a period of 6 months."
For people who train and want to keep muscle, the sports-nutrition literature expresses the limit as a rate relative to body weight rather than a calorie figure. The ISSN position stand states: "The higher the baseline FM level, the more aggressively the caloric deficit may be imposed. As subjects get leaner, slower rates of weight loss can better preserve LM, as in Garthe et al.'s example of a weekly reduction of 0.7% of body weight outperforming 1.4%. Helms et al. similarly suggested a weekly rate of 0.5-1.0% of body weight."
Aragon AA, Schoenfeld BJ, Wildman R, et al. International Society of Sports Nutrition position stand: diets and body composition. J Int Soc Sports Nutr. 2017;14:16. doi:10.1186/s12970-017-0174-y. PMID 28630601
Note the design difference this implies. Both the ISSN stand and the athlete consensus literature scale the aggressiveness of a deficit to how lean you already are. UptakeX's flat 25% cap does not: it applies the same ceiling to someone at 35% body fat and someone at 8%. The flat cap is simpler and more conservative for the person with more fat to lose, and less protective for the very lean person, who is precisely the person the literature says should cut most slowly. [OWNER: consider scaling the cap by estimated body fat, or at least warning users below roughly 12% body fat (men) that the literature recommends a slower approach than the cap permits.]
From packages/core/src/adaptiveCalc.ts:
pounds per day = (newer average - older average) / 7implied maintenance = average calories logged - (pounds per day x 3500)The feature does not turn on at all until you have at least 14 distinct days with both a weigh-in and a logged food day. When it does produce a suggestion, it is stored as a suggestion: the app notifies you ("New Calorie Target Suggested. Your weight trend moved. Review the adjustment.") and you accept or dismiss it. It is never applied automatically.
This is the intake-balance principle, and it has direct published validation:
Sanghvi A, Redman LM, Martin CK, Ravussin E, Hall KD. Validation of an inexpensive and accurate mathematical method to measure long-term changes in free-living energy intake. Am J Clin Nutr. 2015;102(2):353-358. doi:10.3945/ajcn.115.111070. PMID 26040640
That study compared energy-intake change calculated from repeated body weight measurements alone against the doubly-labeled-water plus DXA reference, in 140 people over 2 years. Verbatim: "The mean values calculated by the model were within 40 kcal/d of the DLW/DXA method throughout the 2-y study. For individual subjects, the overall root mean square deviation between the model and DLW/DXA method was 215 kcal/d, and most of the model-calculated values were within 132 kcal/d of the DLW/DXA method."
The honest number to quote here is 215 kcal/day, not 40. The 40 kcal/day figure is the group-mean bias. For one individual, the typical error is about 215 kcal/day. UptakeX's 100 kcal suppression threshold is well inside that error, so some suggestions the app makes will be noise. [OWNER: consider raising the suggestion threshold. Suggesting a change smaller than the method's own individual-level error rate produces churn the user cannot distinguish from signal.]
It uses the 3,500 kcal per pound constant, whose problems are set out in 7.2. Used this way, retrospectively over a short window, the constant is far less damaging than it is as a forward predictor, but it is still an approximation.
Individual-level error of about 215 kcal/day (Sanghvi et al. 2015).
It depends on the accuracy of your food logging. If you under-report what you eat, the app will conclude your maintenance calories are lower than they are and cut your target further. Systematic under-reporting of intake is one of the best-documented findings in nutrition research. This is the most important practical limitation of the feature.
A 14-day window is short. Water weight, sodium, glycogen, menstrual-cycle fluid shifts and inconsistent weigh-in timing can move a 7-day average by enough to swing the implied maintenance figure by hundreds of calories.
It cannot distinguish fat from lean mass or water. It measures weight.
Metabolic adaptation is real and the app is partly chasing it. Expenditure falls during a deficit by more than the loss of mass predicts. Reported magnitudes range from about 70-110 kcal/day after 3 weeks at a 50% deficit in non-obese men, to -499 +/- 207 kcal/day six years after extreme weight loss.
Müller MJ, Enderle J, Pourhassan M, et al. Metabolic adaptation to caloric restriction and subsequent refeeding: the Minnesota Starvation Experiment revisited. Am J Clin Nutr. 2015;102(4):807-819. doi:10.3945/ajcn.115.109173. PMID 26399868
Fothergill E, Guo J, Howard L, et al. Persistent metabolic adaptation 6 years after "The Biggest Loser" competition. Obesity (Silver Spring). 2016;24(8):1612-1619. doi:10.1002/oby.21538. PMID 27136388
Leibel RL, Rosenbaum M, Hirsch J. Changes in energy expenditure resulting from altered body weight. N Engl J Med. 1995;332(10):621-628. doi:10.1056/NEJM199503093321001. PMID 7632212
For balance, note that the Fothergill figures drew a published methodological challenge and a reply from the authors (Kuchnia et al., Obesity 2016;24(10):2025; Hall et al., Obesity 2016;24(10):2026).
Because expenditure falls during a deficit, a recalibration loop that keeps lowering your target as your weight falls can chase your metabolism downward. UptakeX's 25% cap and its requirement that you approve every change are the two guards against that. If your suggested target keeps falling, that is a reason to talk to a dietitian, not a reason to keep accepting the suggestion.
packages/core/src/trend.ts). Early in your history it averages
whatever exists rather than waiting for a full window.latest trend value + (rate x weeks). A straight line.A trailing average and a least-squares slope are standard descriptive statistics and need no citation. The projection does need a caveat, and it is the same one as section 7.2: linear extrapolation of a weight trend will overstate future loss, because the rate slows as you lose weight and as your expenditure adapts. A projection in UptakeX is "here is the current line continued," not a forecast. Treat anything beyond a few weeks as illustrative.
The app deliberately returns no value rather than a fabricated one when there is not enough data. If a number is missing, that is the app declining to guess.
UptakeX adds a small calorie bonus for being more active today than your own recent normal. It never subtracts one for a quiet day, and it is capped at 250 kcal.
Preferred path, when a wearable has measured active energy
(packages/core/src/neatEnergy.ts): the bonus is today's active energy minus a
trailing 14-day average of active energy from the same measuring device,
clamped to 0-250 kcal. It requires at least 3 days of baseline from that same
source, because a wrist tracker and a phone report systematically different
numbers and a blended baseline would hand out calories for the day you started
wearing the band.
Fallback path, from step count (packages/core/src/neat.ts):
earned = clamp(0, 250, max(0, today's steps - 14-day baseline) x 0.00021 x weight_lb)
where 0.00021 = 0.0003 x 0.7. The bonus is added to your calorie target and to
your carbohydrate target (as bonus divided by 4); protein and fat are unchanged
because they are derived from body weight, not from energy.
The constant 0.0003 kcal per step per pound of body weight has no source we could verify. The code comment calls it "a commonly cited net cost of walking one step per lb of bodyweight," and the 0.7 factor is described in the same comment as a discount for the incidental walking already inside a normal baseline day. Neither figure is attributed, and we did not find a primary source for either.
[OWNER: this constant needs either a real citation or an explicit statement in the app that it is an estimate. The published route would be to derive the cost of walking from a metabolic equivalent (MET) value, for example via the Compendium of Physical Activities (Ainsworth et al.), and to disclose that instead. Until then this document states, correctly, that the figure is unsourced.]
From agent/onboarding-prompt.md and preserved as ratios by recomputeTargets:
protein_g = (1.1 if cutting else 1.0) x lean body mass in lb [stated range 1.0-1.2]
fat_g = 0.9 x body weight in kg [stated range 0.8-1.0]
carbs_g = (calorie target - protein_g x 4 - fat_g x 9) / 4
Carbohydrate is always the energy residual, which is why the earned-calorie bonus in section 10 lands entirely in carbohydrate.
The relevant literature:
Jäger R, Kerksick CM, Campbell BI, et al. International Society of Sports Nutrition position stand: protein and exercise. J Int Soc Sports Nutr. 2017;14:20. doi:10.1186/s12970-017-0177-8. PMID 28642676
Verbatim from that stand: "For building muscle mass and for maintaining muscle mass through a positive muscle protein balance, an overall daily protein intake in the range of 1.4-2.0 g protein/kg body weight/day is sufficient for most exercising individuals," and "Higher protein intakes (2.3-3.1 g/kg/d) may be needed to maximize the retention of lean body mass in resistance-trained subjects during hypocaloric periods." On the general recommendation it notes: "The current RDA for protein is 0.8 g/kg/day with multiple lines of evidence indicating this value is not an appropriate amount for a training athlete to meet their daily needs."
The conversion, done explicitly, because the denominators differ. UptakeX's 1.0-1.2 g per pound of lean mass is 2.20-2.65 g per kg of lean mass, with the cutting default of 1.1 g/lb being 2.43 g/kg of lean mass. Published recommendations are usually per kg of total body weight, so the comparison depends on how lean you are:
| Your body fat | UptakeX's cutting default, expressed per kg of total body weight |
|---|---|
| 10% | 2.18 g/kg |
| 15% | 2.06 g/kg |
| 20% | 1.94 g/kg |
| 25% | 1.82 g/kg |
| 30% | 1.70 g/kg |
So UptakeX's protein target sits inside the ISSN's general 1.4-2.0 g/kg range for users above roughly 20% body fat, and modestly above its top end for very lean users. Against the ISSN's own hypocaloric range of 2.3-3.1 g/kg, it is below at every body fat level. It is not an aggressive target.
The lean-mass denominator UptakeX uses is the one this review uses directly:
Helms ER, Zinn C, Rowlands DS, Brown SR. A systematic review of dietary protein during caloric restriction in resistance trained lean athletes: a case for higher intakes. Int J Sport Nutr Exerc Metab. 2014;24(2):127-138. PMID 24092765
Verification note: the Helms conclusion is commonly reported as 2.3-3.1 g per kg of fat-free mass. We verified the citation but could not retrieve the abstract or full text directly (publisher returned 403). We therefore do not quote its numbers as verified. If Helms's range is 2.3-3.1 g/kg of lean mass, then UptakeX's 2.20-2.65 g/kg of lean mass sits at or below its lower end. [OWNER: obtain this paper and confirm before relying on that framing.]
Limitations of any protein target. These ranges come from studies of resistance-trained adults, most of them young and male. Higher protein intakes are not appropriate for people with reduced kidney function or certain liver conditions, and anyone with a kidney condition should ask a clinician before raising protein intake. The RDA of 0.8 g/kg is a floor for the general population, not a target for someone lifting weights in a deficit.
UptakeX sets fat at about 0.9 g per kg of total body weight, within a stated range of 0.8-1.0.
Stated plainly: no authority publishes a minimum dietary fat intake in grams per kilogram of body weight, so this constant cannot be attributed to a published source. It is the developer's own implementation choice. Both bodies that govern the question express fat as a percentage of total energy, and both explicitly decline to define a floor in absolute or bodyweight-scaled terms.
The Institute of Medicine sets an Acceptable Macronutrient Distribution Range, not a requirement. Verbatim: "Neither an Adequate Intake (AI) nor Recommended Dietary Allowance (RDA) is set for total fat because there are insufficient data to determine a defined level of fat intake at which risk of inadequacy or prevention of chronic disease occurs. An Acceptable Macronutrient Distribution Range (AMDR), however, has been estimated for total fat, it is 20 to 35 percent of energy," and elsewhere: "The AMDR for total fat is set at 20 to 35 percent of energy."
Institute of Medicine. Dietary Reference Intakes for Energy, Carbohydrate, Fiber, Fat, Fatty Acids, Cholesterol, Protein, and Amino Acids. Washington, DC: National Academies Press; 2005. doi:10.17226/10490
The sports-nutrition position stand agrees on the units and adds a lower bound, in percent of energy rather than g/kg. Verbatim: "For most athletes, fat intakes associated with eating styles that accommodate dietary goals typically range from 20% to 35% of total energy intake. Consuming less than or equal to 20% of energy intake from fat does not benefit performance and extreme restriction of fat intake may limit the food range needed to meet overall health and performance goals," and "Athletes should be discouraged from chronic implementation of fat intakes below 20% of energy intake since the reduction in dietary variety often associated with such restrictions is likely to reduce the intake of a variety of nutrients such as fat-soluble vitamins and essential fatty acids."
Thomas DT, Erdman KA, Burke LM. Position of the Academy of Nutrition and Dietetics, Dietitians of Canada, and the American College of Sports Medicine: nutrition and athletic performance. J Acad Nutr Diet. 2016;116(3):501-528. doi:10.1016/j.jand.2015.12.006. PMID 26920240. Published concurrently as Med Sci Sports Exerc. 2016;48(3):543-568. doi:10.1249/mss.0000000000000852. PMID 26891166
A search of both documents found no figure expressing fat intake in grams per kilogram, while both use g/kg freely for protein and carbohydrate. The absence is a deliberate choice by the authoring bodies, not a gap in the search.
Honest framing: UptakeX's 0.9 g/kg is a convenience that keeps fat from collapsing to nothing as the carbohydrate residual absorbs a low calorie target. The published guidance is 20-35% of energy. [OWNER: consider adding a check that the resulting fat target is not below 20% of the calorie target, which would put a user outside the AMDR. On a 1,600 kcal target, 0.9 g/kg for a 60 kg person is 54 g, which is 30% of energy and fine; for a 50 kg person on a 1,800 kcal target it is 45 g, which is 22.5% and still fine; but the two constants are independent and nothing enforces the relationship.]
Carbohydrate is the residual after protein and fat are subtracted from the calorie target. There is no formula and no source, because it is subtraction. The consequence worth knowing: on a low calorie target with a high protein and fat target, the residual can become small. UptakeX clamps it at zero rather than producing a negative number.
fiber_target_g = round((calorie target / 1000) x 14)
sat_fat_target_g = round((calorie target x 0.10) / 9)
sodium_target_mg = 2300 (flat, never recomputed)
sugar_target_g = 90 (flat, never recomputed)
This ratio is the Institute of Medicine Adequate Intake basis for dietary fiber.
Institute of Medicine. Dietary Reference Intakes for Energy, Carbohydrate, Fiber, Fat, Fatty Acids, Cholesterol, Protein, and Amino Acids. Washington, DC: National Academies Press; 2005. https://nap.nationalacademies.org/catalog/10490
Verification status: the ratio is strongly corroborated but not read from the IOM report itself. Independent corroboration: the FDA's Daily Value for dietary fiber is 28 g, and 28 g divided by a 2,000 kcal reference diet is exactly 14 g per 1,000 kcal.
U.S. Food and Drug Administration. Daily Value on the Nutrition and Supplement Facts Labels. Updated 5 March 2024. https://www.fda.gov/food/nutrition-facts-label/daily-value-nutrition-and-supplement-facts-labels
UptakeX's constant matches the authority.
The Dietary Guidelines for Americans 2020-2025 limit saturated fat to "less than 10% of calories per day starting at age 2."
U.S. Department of Agriculture and U.S. Department of Health and Human Services. Dietary Guidelines for Americans, 2020-2025. 9th ed. December 2020. https://www.dietaryguidelines.gov
Verification status: this wording was confirmed from a secondary source reproducing Guideline 4, not from the Dietary Guidelines document itself, which we could not retrieve. [OWNER: retrieve the source document and confirm the wording before publishing.]
A divergence that must be disclosed. The American Heart Association is considerably stricter. Verbatim from heart.org: "The American Heart Association recommends aiming for a dietary pattern that achieves less than 6% of total calories from saturated fat. For example, if you need about 2,000 calories a day, no more than 120 of them should come from saturated fat. That's about 13 grams or less of saturated fat per day."
American Heart Association. Saturated Fat. https://www.heart.org/en/healthy-living/healthy-eating/eat-smart/fats/saturated-fats
On a 2,000 kcal target, UptakeX's ceiling is about 22 g against the AHA's 13 g. UptakeX's saturated fat ceiling is roughly 70% more permissive than the American Heart Association's recommendation. It matches the federal Dietary Guidelines and is more permissive than the AHA. If you have cardiovascular risk factors, use the AHA figure, not the app's.
UptakeX's constant matches every relevant US authority.
National Academies of Sciences, Engineering, and Medicine. Dietary Reference Intakes for Sodium and Potassium. Washington, DC: National Academies Press; 2019. https://nap.nationalacademies.org/catalog/25353
Verbatim from the Academies: "For individuals ages 14 and older, the CDRR recommendation is to reduce sodium intakes if above 2,300 mg per day," where CDRR is the Chronic Disease Risk Reduction intake. The Dietary Guidelines 2020-2025 state "less than 2,300 milligrams per day," and the FDA Daily Value is 2,300 mg.
One nuance the app gets wrong in framing. 2,300 mg is a ceiling to stay under, not a target to hit, and the Adequate Intake for adults is 1,500 mg. A progress meter that fills toward 2,300 mg subtly reframes a limit as a goal. [OWNER: present sodium as a limit, not a target, in the UI.]
Stated bluntly, because this is the app's largest divergence from published guidance:
UptakeX's 90 g sugar target does not correspond to any published recommendation, and it is not close to one.
| Source | Figure |
|---|---|
| Dietary Guidelines for Americans 2020-2025 | Added sugars less than 10% of calories, which is under 50 g on 2,000 kcal |
| FDA Daily Value, added sugars | 50 g |
| American Heart Association | No more than 6% of calories: 100 kcal/day for women (about 6 teaspoons), 150 kcal/day for men (about 9 teaspoons) |
| UptakeX | 90 g |
American Heart Association. Added Sugars. https://www.heart.org/en/healthy-living/healthy-eating/eat-smart/sugar/added-sugars
Note that the AHA publishes its limit in calories and teaspoons; the familiar 25 g and 36 g figures are gram conversions of 6 and 9 teaspoons, not the AHA's own wording.
The total-versus-added distinction matters and cuts both ways. Every authority above regulates added sugars only, because naturally occurring sugars in fruit and plain dairy are not the target. UptakeX's food data records total sugar. So if the app's 90 g is a total-sugar figure, it is not directly comparable to any of these numbers, and the honest statement is that no authority publishes a total-sugar limit at all. If a user reads it as an added-sugar allowance, it is roughly double the most permissive authoritative figure.
Resolved. Option (a) was taken. The owner chose to relabel rather than to track added sugar separately, so the 90 g number is unchanged and is now presented as what it always was: a watch line the developer set over total sugar, not a limit any authority publishes.
What changed, and where:
NUTRIENTS_META in
packages/core/src/format.ts is the single source of truth for the four
nutrition-detail labels, so the phone, the web day view, the item detail panel
and the web settings screen all read it from one place. The compact chip on
the phone still prints "Sugar" because the column is four across and cannot
hold two words; its accessibility label is the full "Total Sugar."web/components/NutritionCard.tsx and as a footnote under the targets grid in
web/components/settings/NutrientTargets.tsx, which are the two places the
target number itself appears. It is unconditional, not tied to what the user
logged, because it explains the target rather than the day.sugar_target_g numeric not null default 90 in
supabase/nutrition-detail.sql, and packages/core/src/targetMath.ts still
leaves it flat rather than recomputing it. Option (b) would have required a
separate added-sugar column and a source of added-sugar data, which the food
data does not carry.The statement that stands. No health authority publishes a total-sugar limit. The three figures in the table above are all added-sugar figures, so none of them is the right yardstick for a number computed over total sugar, and 90 g is therefore the developer's own line rather than anyone's recommendation. That is now said on screen instead of only in this document.
target_oz = round(body weight in lb x 2/3 + min(24, (steps / 10000) x 12))
with a fallback of 150 lb when no weight is on file. The streak counter treats 90% of target as a hit.
Stated plainly: the two-thirds-of-bodyweight-in-ounces rule has no authoritative or published source, and no authority publishes a per-step fluid figure either. Both halves of UptakeX's hydration target are the developer's own heuristic. This is a finding, not a failed search.
The code says so itself. The comment in packages/core/src/waterMath.ts states the
formula "lands near Water Llama's recommendation (about 120 oz at 180 lb) by
design." That is calibration against another consumer app, not against a health
authority.
What the authority actually publishes. The Institute of Medicine sets an Adequate Intake for total water, including the water in food and all beverages, based on median observed intake rather than on a measured requirement:
Institute of Medicine. Dietary Reference Intakes for Water, Potassium, Sodium, Chloride, and Sulfate. Washington, DC: National Academies Press; 2005. Chapter 4, "Water." doi:10.17226/10925
Verbatim: "the AI for total water (from a combination of drinking water, beverages, and food) is set based on the median total water intake from U.S. survey data. The AI for total water intake for young men and women (ages 19 to 30 years) is 3.7 L and 2.7 L per day, respectively. Fluids (drinking water and beverages) provided 3.0 L (101 fluid oz, about 13 cups) and 2.2 L (74 fluid oz, about 9 cups) per day." Water from food supplies about 19% of the total.
And, critically, verbatim: "Hence there is no single daily total water requirement for a given person, and need varies markedly depending primarily on physical activity and climate, but also based on diet. It would be misinterpreting the basis for setting the AI to state that there is a 'requirement' for water at the level of the AI."
So UptakeX's number and the IOM's number are not the same quantity. The IOM figure is total water including food, as a population median. A bodyweight-scaled ounces-of-fluid target is something else, even when the numbers land nearby.
On the underlying folk rule. The closest published examination of any such rule is a review that went looking for the origin of the analogous "eight 8-ounce glasses" advice and found none. Verbatim: "Despite the seemingly ubiquitous admonition to 'drink at least eight 8-oz glasses of water a day' ... rigorous proof for this counsel appears to be lacking. This review sought to find the origin of this advice ... No scientific studies were found in support of 8 x 8."
Valtin H. "Drink at least eight glasses of water a day." Really? Is there scientific evidence for "8 x 8"? Am J Physiol Regul Integr Comp Physiol. 2002;283(5):R993-R1004. doi:10.1152/ajpregu.00365.2002. PMID 12376390
On the activity bump. The relevant authority recommends the opposite approach to a fixed per-step figure: individualized replacement measured from your own sweat rate. Verbatim from the ACSM position stand's abstract: "The goal of drinking during exercise is to prevent excessive (greater than 2% body weight loss from water deficit) dehydration and excessive changes in electrolyte balance to avert compromised performance. Because there is considerable variability in sweating rates and sweat electrolyte content between individuals, customized fluid replacement programs are recommended. Individual sweat rates can be estimated by measuring body weight before and after exercise."
American College of Sports Medicine; Sawka MN, Burke LM, Eichner ER, Maughan RJ, Montain SJ, Stachenfeld NS. American College of Sports Medicine position stand. Exercise and fluid replacement. Med Sci Sports Exerc. 2007;39(2):377-390. doi:10.1249/mss.0b013e31802ca597. PMID 17277604
Searches of the IOM water chapter and of the 2016 Academy, Dietitians of Canada and ACSM joint position stand found zero occurrences of "per step," "pedometer" or "step count." For scale, the IOM observed that the most active adults in NHANES III had median total water intakes about 0.5 L/day higher than the least active.
[OWNER: present this target as a nudge, not a prescription, and add the rapid- intake caution above to the hydration UI. Given that neither constant has a source, consider softening the label from "Target" to something like "Suggested," and consider not showing a streak for it at all. A streak mechanic on an unsourced fluid target creates exactly the incentive that item 3 warns about.]
UptakeX gets nutrition numbers from four places, in this order of preference, and labels each entry with a confidence level and, where applicable, a calorie uncertainty range:
labelNutrients
field, which is a transcription of the printed nutrition panel. Tagged high
confidence.What you should take from that. A barcode-scanned packaged food is about as accurate as the label, which US regulations permit to vary from the actual content. A restaurant meal or a home-cooked dish is a genuine estimate and can be off by a large margin, most often because of portion size rather than the recipe. The app shows a confidence indicator and a calorie range for exactly this reason. Every entry is editable, and correcting an entry you know is wrong makes every downstream number better, including your adaptive recalibration.
Two features are produced by large language models:
AI output can be wrong, including in ways that look confident and precise. It is general information, not advice from a qualified professional. It is not medical, nutritional or clinical advice, and it is not a diagnosis. Do not act on it in place of talking to a clinician. Check the numbers. Correct them when they are wrong.
The Ask tab now carries a medical guardrail, in
packages/core/src/askContext.ts. It is introduced as overriding the style
rules, because "blunt analyst, no hedging" otherwise reads as licence to answer a
medical question confidently. In summary, the prompt instructs the assistant to:
Do not use UptakeX's calorie target, deficit or body composition estimates, and talk to a physician or registered dietitian instead, if you:
UptakeX applies the female circumference equation to every profile that is not male, including profiles that are neither. That equation was fitted on female US Navy personnel, so the further a body is from that population the less the published error bars describe it. See 3.5.
Listing these is part of the disclosure. A methodology document that hides its own gaps is not a methodology document.
These are findings. We searched the authoritative documents and the numbers are not in them.
| Constant | Status |
|---|---|
| Activity multiplier ladder 1.2 / 1.375 / 1.55 / 1.725 / 1.9 | No primary source exists. Verified absent from Harris-Benedict 1919 and from the FAO/WHO/UNU 1985 and 2004 reports. The common Harris-Benedict attribution is provably false. Disclosed in 6.2. |
| Step-cost constant 0.0003 kcal per step per pound, and the 0.7 discount | No source found. Disclosed as unsourced in 10.2. |
| Water target: two-thirds of bodyweight in ounces | No authoritative source exists. Disclosed in 13.2. |
| Water target: +12 oz per 10,000 steps | No authority publishes a per-step fluid figure. Verified absent from the IOM water chapter and the 2016 joint position stand. Disclosed in 13.2. |
| Dietary fat floor of 0.8-1.0 g per kg | No authority publishes a fat minimum in g/kg. Both the IOM 2005 report and the 2016 joint position stand express fat only as a percentage of energy, and both use g/kg freely for protein and carbohydrate, so the absence is deliberate. Disclosed in 11.3. |
| The 25% deficit cap as an authority-endorsed maximum | No authority publishes a percentage deficit cap. Presented as the developer's own choice in 7.3, bounded by four published anchors. |
| Sugar target of 90 g | No authoritative basis, and no authority publishes a total-sugar limit to have one against. Disclosed with the comparison table in 12.5. Addressed in the UI: the field is labeled "Total Sugar" and every surface printing the number prints beside it that the 90 g is the developer's own watch line. |
| A calorie floor in the app | Implemented. 1,500 kcal/day for male profiles, 1,200 otherwise, in calorieFloor() and applyGoalAdjustment(). Section 7.4. |
| Item | Status |
|---|---|
| Cunningham 1991 standard error, pooled sample size, and how the intercept 370 was derived | Could not verify. The paper is closed access. Only its published "explains 65-90% of the variation in REE" is citable, and that is what 5.2 uses. |
| Whether the "Katch-McArdle" textbook cites Cunningham, and on which page | Could not verify. All editions of the textbook are lending-restricted. Note also a chronology problem: the usually cited 3rd edition is dated January 1991 and Cunningham 1991 appeared in the December 1991 issue, so the tidy "Cunningham published, the textbook popularized" story is not established by the dates. What is solid is that the 21.6 slope is Cunningham's from 1980, eleven years before either. |
| Helms et al. 2014 protein range | Citation verified; numbers not retrieved (publisher 403). Flagged in 11.2. |
| Dietary Guidelines 2020-2025 exact wording on saturated fat, sodium and added sugars | Verified from a secondary source reproducing Guideline 4, not the document itself. Flagged in 12.3. |
| IOM 2005 fiber Adequate Intake, from the report itself | Not read directly; corroborated exactly by the FDA Daily Value of 28 g on a 2,000 kcal diet. Flagged in 12.2. |
| ACSM 2007 fluid-replacement position stand, in-body figures | Could not verify beyond the published abstract, which is what 13.2 quotes. |
| A published propagation of body-composition error into metabolic-rate error | Appears not to exist. The marginal coefficient is verified; the arithmetic in 4.2 is labeled as our own. |
| A systematic review of deficit size versus body composition outcomes | None found. An open gap in the literature, not a search failure. |
| Whether the circumference method is specifically biased in very muscular people | No study found isolating muscularity. Explicitly not asserted, 3.4 item 8. |
| Validation of lean-mass-based metabolic rate equations in pregnancy | None found. Disclosed in 5.4. |
| Sample size of the women's body-fat development cohort | Primary sources disagree: the 1984 report states 214 in four places; the 1999 report states 206. Both figures given in 3.2. |
This section is the copy to ship in the app, not part of the public methodology document. It follows the repo's copy rules: Title Case headings, sentence case body, no em dashes.
Status: 18.1, 18.3 and 18.4 are shipped. 18.2 is not, and cannot be as
written. It is copy for an onboarding screen, and this app has no onboarding
screen: onboarding is an agent prompt (agent/onboarding-prompt.md) run in a
Claude Code session outside the product, which is itself a launch blocker
tracked as Phase 3 of the implementation plan. When that flow is built in the
app, 18.2 is the copy for it.
The one part of 18.1 not shipped is its final sentence and button, both of which point at a hosted URL that does not exist yet. They were left out rather than shipped pointing at a placeholder, because a methodology link that 404s in front of a reviewer is a worse outcome than no link. The code carries a marker saying what to restore.
Row label: Health Disclaimer
Sheet heading: UptakeX Is Not Medical Advice
Sheet body:
UptakeX estimates your body fat, metabolic rate and calorie targets from measurements you enter, using published formulas. They are estimates, not measurements, and they can be off by a wide margin for any one person.
Nothing in this app is medical or nutritional advice, and UptakeX is not a medical device. Talk to a doctor or a registered dietitian before starting a calorie deficit or a new exercise program, and especially if you are under 18, pregnant or breastfeeding, have or have had an eating disorder, or have any medical condition.
Every formula UptakeX uses, its published source, its accuracy and its limits are written out in full at uptakex.app/health-disclaimer.
Button: Read The Full Methodology
Heading: About These Numbers
Body:
The targets on the next screen come from published formulas applied to the measurements you just entered. The body fat estimate has a published standard error of about 3.5 percentage points, and the metabolic rate estimate is expected to be within about 10% for most people. Your real numbers may differ.
UptakeX caps any calorie deficit at 25% of your maintenance estimate, and it corrects its estimate over time from your own weight trend. It is a starting point that gets better with data, not a measurement.
This is not medical advice. Talk to a doctor or a dietitian before starting a calorie deficit.
Checkbox, required before continuing:
I understand these are estimates and not medical advice.
Link: Read How Every Number Is Calculated
Estimate, not a measurement. Body fat is from the tape-measure method (standard error about 3.5 points), and maintenance calories are corrected over time from your weight trend. Not medical advice.
Ask can be wrong. It is general information, not medical advice.
uptakex.app, September 10, 2026, September 10, 2026Add an absolute calorie floor (1,200 kcal/day for women, 1,500 for men)
in Done. The floor is
enforced on every goal type, reported separately from the 25% cap, and named
in the app where the target is explained. Section 7.4.applyGoalAdjustment, alongside the 25% cap.
Add a medical-safety guardrail to the Ask system prompt. Done. Section 15.
Fix the sugar target: relabel as total sugar with an explanation, or
track added sugar and set 50 g. Done, by relabeling. The field is
"Total Sugar," and every surface that prints the 90 g number prints beside it
that no health authority publishes a total-sugar limit and that 90 g is the
developer's own watch line. The number, the column and the math are unchanged.
Section 12.5.
Relabel the abdomen measurement field as "Abdomen (At Navel)," not
"Waist." Done, and it turned out to be conditional rather than a rename:
the label and its measuring instruction switch on which equation the profile
uses, since the two measure at different sites. Section 3.5.
Implement the female body-fat equation with a hip measurement, or tell
non-male users in the app why the body composition features are unavailable.
Done. profile.hip_in exists, both published equations are implemented,
the constants are verified against the 1999 report's own printed tables, and
the settings form asks for the right measurement at the right site for each.
Section 3.5.
Section 3.5.
Reconcile the two activity-multiplier ladders and fix the incorrect
"Harris-Benedict" code comment. Done. There is one ladder, and the code
comment now states that its values have no published source. Section 6.2.
Present sodium as a limit, not a target. Section 12.4.
Surface this disclaimer in the app in the three places in section 18
Done, for three of the four. Section 18 has four subsections, not three,
and this item disagreed with itself about the count. 18.1 is a Health
Disclaimer row in Settings opening a sheet, 18.3 is appended to the Daily
Target explanation on both of its branches, and 18.4 sits under the Ask tab's
answers. 18.2 has no surface: see the note at the head of section 18.
Two pieces remain and both need the domain: the sentence in 18.1 that links to the hosted methodology, plus its "Read The Full Methodology" button, which were deliberately not shipped rather than shipped as a dead link (the marker in the code says exactly what to restore); and linking this document from the paywall alongside the Terms and Privacy Policy.
lbmLb and lbmKg to fat-free mass, and change any user-facing "lean
body mass" copy to "lean mass" or "fat-free mass." The term UptakeX uses is
discouraged by current expert guidance, and it is not what a DXA report means
by "lean mass." Section 5.5.The 1.4.1 argument this document supports is not "our numbers are accurate." It is: every calculation is a named, published formula; its accuracy and its limits are disclosed in specific numbers; the app caps its own aggressiveness; it never applies a change to your targets without your approval; it declines to show a number rather than guessing when the data is insufficient; and it labels the confidence of every nutrition estimate it makes. Where a constant has no published source, this document says so rather than inventing an authority.
Point App Review at this URL, and make sure the items above are done before you do. The principle is that this document must not describe a safeguard the app does not have: a reviewer who reads a section here and then fails to find the behaviour in the app has been handed the rejection in writing. Item 1, the calorie floor, is closed on exactly those terms.