<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sami Renkyorganci </title>
    <description>The latest articles on DEV Community by Sami Renkyorganci  (@ffmicheck).</description>
    <link>https://dev.to/ffmicheck</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4024986%2F8976f65d-1524-44ea-b204-b867bf7d031f.png</url>
      <title>DEV Community: Sami Renkyorganci </title>
      <link>https://dev.to/ffmicheck</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ffmicheck"/>
    <language>en</language>
    <item>
      <title>Why FFMI 25 is not just a bro-science myth: the 1995 Kouri study explained</title>
      <dc:creator>Sami Renkyorganci </dc:creator>
      <pubDate>Sat, 19 Sep 2026 11:10:00 +0000</pubDate>
      <link>https://dev.to/ffmicheck/why-ffmi-25-is-not-just-a-bro-science-myth-the-1995-kouri-study-explained-42</link>
      <guid>https://dev.to/ffmicheck/why-ffmi-25-is-not-just-a-bro-science-myth-the-1995-kouri-study-explained-42</guid>
      <description>&lt;p&gt;Every few months a lifter argues on Reddit that "FFMI 25 is bro science" — a made-up number lifters throw around to accuse each other of steroid use. The counter-argument is usually a link to a Wikipedia summary and a vague "there's a study."&lt;/p&gt;

&lt;p&gt;The study exists, and it is worth reading beyond the summary. Kouri et al. published &lt;em&gt;"Fat-free mass index in users and nonusers of anabolic-androgenic steroids"&lt;/em&gt; in the &lt;em&gt;Clinical Journal of Sport Medicine&lt;/em&gt; in 1995. It is the paper the FFMI 25 ceiling comes from, and the methodology is more careful than the internet gives it credit for. Here is what they actually did, what the number means, and what it does not mean.&lt;/p&gt;

&lt;h2&gt;
  
  
  The setup
&lt;/h2&gt;

&lt;p&gt;The researchers wanted a defensible way to compare muscularity between athletes without letting fat mass or body size distort the comparison. Two problems they were solving:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;BMI cannot tell muscle from fat.&lt;/strong&gt; A 100 kg powerlifter and a 100 kg sedentary adult get the same BMI. Useless for physique science.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Raw bodyweight favors taller athletes.&lt;/strong&gt; A 90 kg lifter at 190 cm is less muscular than a 90 kg lifter at 170 cm. Weight alone does not scale.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Their solution was &lt;strong&gt;Fat-Free Mass Index (FFMI)&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;ffmi&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;weight_kg&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;height_m&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;body_fat_pct&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="n"&gt;lean_body_mass&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;weight_kg&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;body_fat_pct&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;raw_ffmi&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;lean_body_mass&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;height_m&lt;/span&gt; &lt;span class="o"&gt;**&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;normalized&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;raw_ffmi&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mf"&gt;6.1&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;1.8&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;height_m&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;raw_ffmi&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;normalized&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The &lt;code&gt;+ 6.1 * (1.8 - height_m)&lt;/code&gt; term corrects for the geometric bias in any "divided by height squared" metric — without it, shorter lifters look artificially more muscular than tall ones.&lt;/p&gt;

&lt;h2&gt;
  
  
  The sample
&lt;/h2&gt;

&lt;p&gt;157 male subjects, all recruited from gyms in the Boston area:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;83 nonusers&lt;/strong&gt; of anabolic-androgenic steroids (AAS), self-reported and cross-verified with training partners and gym staff&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;74 users&lt;/strong&gt; of AAS at the time of measurement or in the year prior&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The nonuser group was the critical dataset. If the researchers could measure the top of the distribution in verified drug-free lifters, they would have a defensible ceiling.&lt;/p&gt;

&lt;p&gt;Body composition was measured via underwater weighing (hydrostatic densitometry) — the accepted gold standard in 1995, more accurate than skinfold calipers and roughly comparable to modern DEXA.&lt;/p&gt;

&lt;h2&gt;
  
  
  The result
&lt;/h2&gt;

&lt;p&gt;The nonusers had a mean FFMI of &lt;strong&gt;21.8&lt;/strong&gt; with a standard deviation of ~1.8. The top of the distribution:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Highest FFMI in the nonuser group:&lt;/strong&gt; 25.0&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Second-highest:&lt;/strong&gt; 24.8&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Third-highest:&lt;/strong&gt; 24.6&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every AAS user above FFMI 25 was in the user group. Not a single verified natural lifter in the sample exceeded 25.&lt;/p&gt;

&lt;p&gt;Kouri et al. then compared this against historical data on pre-steroid-era bodybuilders (Steve Reeves, John Grimek, Reg Park) recalculated from photographs and reported stats. Grimek came out at approximately FFMI 25.4, at the edge but consistent with the modern natural distribution.&lt;/p&gt;

&lt;p&gt;The conclusion in the paper's own words: &lt;em&gt;"FFMI represents a useful measurement of muscularity, and it may be a useful adjunct in the evaluation of individuals suspected of steroid abuse."&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why the number has held up 30 years later
&lt;/h2&gt;

&lt;p&gt;The Kouri number could have been dismissed as an artifact of a small 1995 sample. It has not been, because subsequent research keeps landing in the same neighborhood.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Helms et al. 2014&lt;/strong&gt; (natural bodybuilding contest preparation review): natural competitors at stage weight cluster at FFMI 21-23, with elite competitors reaching 24-25.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Kuipers et al. 2016&lt;/strong&gt; (anabolic-agent detection review): confirmed FFMI 25 as a defensible upper bound for drug-free lifters in ~30 years of accumulated data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Modern DEXA-verified studies&lt;/strong&gt; in trained natural bodybuilders (e.g., Chappell 2018) find the same ceiling.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Individual outliers exist. A handful of natural lifters have posted verified FFMIs at 25.0-25.5 with photographic evidence, DEXA verification, and long training histories. But 26+ in a verified natural context remains statistically absent from the literature.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the number means
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;It means:&lt;/strong&gt; for the vast majority of natural male lifters, FFMI 25 is the observed upper bound of what is achievable across 10-20 years of consistent training. Reaching 23-24 is elite. Sitting at 21-22 after 5+ years of training is normal. FFMI 25 is not a target — it is a ceiling that fewer than 1 in 1000 natural lifters ever touch.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It does not mean:&lt;/strong&gt; anyone above FFMI 25 is definitely using steroids. The number is statistical, not diagnostic. A genetic outlier at 25.3 with legitimate long training history is possible. What Kouri showed is that it is &lt;em&gt;rare&lt;/em&gt;, not impossible.&lt;/p&gt;

&lt;h2&gt;
  
  
  Doing the math on yourself
&lt;/h2&gt;

&lt;p&gt;The full formula chain:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;compute_ffmi&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;weight_kg&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;height_cm&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;body_fat_pct&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="n"&gt;height_m&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;height_cm&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;
    &lt;span class="n"&gt;lean_body_mass&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;weight_kg&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;body_fat_pct&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;raw&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;lean_body_mass&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;height_m&lt;/span&gt; &lt;span class="o"&gt;**&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;normalized&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;raw&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mf"&gt;6.1&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;1.8&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;height_m&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="s"&gt;lean_body_mass_kg&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nf"&gt;round&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;lean_body_mass&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
        &lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="s"&gt;raw_ffmi&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nf"&gt;round&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;raw&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
        &lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="s"&gt;normalized_ffmi&lt;/span&gt;&lt;span class="sh"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nf"&gt;round&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;normalized&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;# Example: 80 kg, 180 cm, 15% body fat
&lt;/span&gt;&lt;span class="nf"&gt;compute_ffmi&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;80&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;180&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;# {'lean_body_mass_kg': 68.0, 'raw_ffmi': 20.99, 'normalized_ffmi': 20.99}
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The two numbers are identical at exactly 180 cm because the normalization term goes to zero there. At 170 cm the normalized FFMI runs higher than raw; at 190 cm it runs lower. This is the correction that lets you compare a 170 cm lifter to a 190 cm lifter fairly.&lt;/p&gt;

&lt;p&gt;For interpretation, the standard benchmarks by training experience:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;FFMI (normalized)&lt;/th&gt;
&lt;th&gt;Level&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;17-18&lt;/td&gt;
&lt;td&gt;Untrained baseline&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;19-20&lt;/td&gt;
&lt;td&gt;Beginner, first 12 months&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;21-22&lt;/td&gt;
&lt;td&gt;Multi-year natural lifter&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;23-24&lt;/td&gt;
&lt;td&gt;Advanced natural&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;25&lt;/td&gt;
&lt;td&gt;Kouri ceiling (elite natural)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;26+&lt;/td&gt;
&lt;td&gt;Statistically inconsistent with drug-free training&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;For women, subtract roughly 3 points at each level — the natural ceiling for female lifters lands around FFMI 22.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the study is limited
&lt;/h2&gt;

&lt;p&gt;Being fair to the paper's actual scope:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sample size&lt;/strong&gt; (157) is small by modern standards. Larger cohorts would tighten the confidence interval on where the ceiling sits — but every replication has landed in the same 24-25 zone, so the direction is robust even if the exact number moves ±0.5.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Self-reported drug use&lt;/strong&gt; is a real weakness. Some "nonusers" may have used steroids and lied. This would push the true natural ceiling &lt;em&gt;lower&lt;/em&gt;, not higher — the observed 25.0 is an upper bound of self-reported nonusers, so it is if anything conservative.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Male-only sample.&lt;/strong&gt; The female FFMI ceiling of ~22 comes from smaller subsequent studies, not this one.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hydrostatic weighing has ±2% body-fat error&lt;/strong&gt;, which propagates to ±0.3-0.5 FFMI. Modern DEXA is tighter but not zero-error.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of these limitations invalidate the finding. They just mean the exact number should be treated as "roughly 25" rather than "exactly 25.0."&lt;/p&gt;

&lt;h2&gt;
  
  
  What to do with this
&lt;/h2&gt;

&lt;p&gt;Two takeaways:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;If your FFMI is 22 and you have been training for four years, you are doing fine.&lt;/strong&gt; The gym-Instagram culture makes 25 feel like a baseline. It is not. It is elite territory.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;If someone claims a verified natural FFMI of 27, they are almost certainly wrong&lt;/strong&gt; — either about the FFMI calculation (using raw instead of normalized) or about the natural part. Kouri did not prove it is impossible, but he did prove it is vanishingly rare.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Full breakdown with the Kouri methodology quotes and the follow-up literature is at &lt;a href="https://ffmicheck.com/blog/natural-genetic-muscle-limit-science/" rel="noopener noreferrer"&gt;ffmicheck.com/blog/natural-genetic-muscle-limit-science/&lt;/a&gt;. If you want to run your own number without pen and paper, the &lt;a href="https://ffmicheck.com/" rel="noopener noreferrer"&gt;FFMI calculator&lt;/a&gt; does the raw + normalized math in one step.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Related from earlier posts on this profile: &lt;a href="https://dev.to/ffmicheck"&gt;Why every TDEE calculator gives you a different number&lt;/a&gt; (the same "formulas that quietly disagree" damar, applied to metabolism instead of muscularity) and &lt;a href="https://dev.to/ffmicheck/the-two-1rm-formulas-that-give-different-answers-and-which-one-to-trust-8ib"&gt;The two 1RM formulas that give different answers&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>fitness</category>
      <category>statistics</category>
      <category>dataanalysis</category>
      <category>health</category>
    </item>
    <item>
      <title>TDEE calculator math: why every online calculator gives you a different number</title>
      <dc:creator>Sami Renkyorganci </dc:creator>
      <pubDate>Thu, 23 Jul 2026 12:56:00 +0000</pubDate>
      <link>https://dev.to/ffmicheck/tdee-calculator-math-why-every-online-calculator-gives-you-a-different-number-ol1</link>
      <guid>https://dev.to/ffmicheck/tdee-calculator-math-why-every-online-calculator-gives-you-a-different-number-ol1</guid>
      <description>&lt;p&gt;Punch the same weight, height, age, and sex into three different TDEE calculators online. You will get three different numbers, sometimes 300 kcal/day apart. That is enough error to turn a lean bulk into a fast one, or a cut into a plateau.&lt;/p&gt;

&lt;p&gt;The reason is not that any of the calculators are broken. It is that they use different formulas, developed decades apart, calibrated against different populations. If you want your macros to actually work, you need to know which formula you are being handed and whether it is the right one for your body.&lt;/p&gt;

&lt;h2&gt;
  
  
  The three formulas that power 99% of TDEE calculators
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Harris-Benedict (1919, revised 1984)
&lt;/h3&gt;

&lt;p&gt;The original resting metabolic rate equation. Still used by many "budget" calculator sites because it is simple and the coefficients are memorable.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;bmr_harris_benedict_men&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;kg&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cm&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="mf"&gt;88.362&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;13.397&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;kg&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;4.799&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;cm&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;5.677&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;bmr_harris_benedict_women&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;kg&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cm&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="mf"&gt;447.593&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;9.247&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;kg&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;3.098&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;cm&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;4.330&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Accuracy today:&lt;/strong&gt; Roughly ±10% error in modern populations. The 1919 sample was based on early 20th-century subjects with different average body composition and activity patterns. The 1984 revision helped but did not close the gap.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Mifflin-St Jeor (1990)
&lt;/h3&gt;

&lt;p&gt;The modern standard. Developed on 498 subjects across a wider age and body composition range. Cited by the American Dietetic Association as the most accurate predictive equation for healthy non-obese and obese populations.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;bmr_mifflin_st_jeor_men&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;kg&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cm&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="nf"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;kg&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;6.25&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;cm&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;bmr_mifflin_st_jeor_women&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;kg&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cm&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="nf"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;kg&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;6.25&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;cm&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;161&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Accuracy:&lt;/strong&gt; ±5% error in validated populations. This is the equation you should default to unless you have a specific reason to override it.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Katch-McArdle (1996)
&lt;/h3&gt;

&lt;p&gt;The lean-mass-based formula. Instead of using total bodyweight, it uses lean body mass (LBM) as the primary input. This makes it more accurate for lean, muscular subjects that the other formulas systematically underestimate.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;bmr_katch_mcardle&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;lbm_kg&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="mi"&gt;370&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;21.6&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;lbm_kg&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# Where lbm_kg = weight * (1 - body_fat_percent / 100)
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Accuracy:&lt;/strong&gt; ±3-5% error when body fat percentage is accurately measured. The catch is right there in the input — if your body fat measurement is off by 3%, your Katch-McArdle output is off proportionally.&lt;/p&gt;

&lt;h2&gt;
  
  
  Side-by-side: same subject, three formulas
&lt;/h2&gt;

&lt;p&gt;Let's compare. Subject: 80 kg male, 178 cm, 28 years old, 15% body fat.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Formula&lt;/th&gt;
&lt;th&gt;BMR (kcal/day)&lt;/th&gt;
&lt;th&gt;TDEE at 1.55 multiplier&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Harris-Benedict (1919)&lt;/td&gt;
&lt;td&gt;1,796&lt;/td&gt;
&lt;td&gt;2,784&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Harris-Benedict (1984)&lt;/td&gt;
&lt;td&gt;1,824&lt;/td&gt;
&lt;td&gt;2,827&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mifflin-St Jeor (1990)&lt;/td&gt;
&lt;td&gt;1,758&lt;/td&gt;
&lt;td&gt;2,725&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Katch-McArdle (LBM = 68 kg)&lt;/td&gt;
&lt;td&gt;1,839&lt;/td&gt;
&lt;td&gt;2,850&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The spread: &lt;strong&gt;125 kcal/day&lt;/strong&gt; between the lowest (Mifflin) and highest (Katch-McArdle) TDEE estimates. For an intermediate lifter running a 200-300 kcal surplus, that is the difference between recomp and lean bulk.&lt;/p&gt;

&lt;h2&gt;
  
  
  The activity multiplier problem
&lt;/h2&gt;

&lt;p&gt;The BMR formula is only half the equation. To get TDEE, every calculator multiplies BMR by an activity factor:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;TDEE = BMR × activity_multiplier
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Standard multipliers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;1.2&lt;/strong&gt; — sedentary (desk job, no exercise)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;1.375&lt;/strong&gt; — light (1-3 workouts/week)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;1.55&lt;/strong&gt; — moderate (3-5 workouts/week)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;1.725&lt;/strong&gt; — heavy (6-7 workouts/week)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;1.9&lt;/strong&gt; — athlete (2x daily training)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here is the ugly truth: &lt;strong&gt;most people overestimate their activity level by exactly one bracket.&lt;/strong&gt; Someone with a desk job who lifts 4x/week is "light" (1.375), not "moderate" (1.55). Someone who trains 5x/week and walks 8k steps daily is "moderate," not "heavy."&lt;/p&gt;

&lt;p&gt;Overestimating activity by one bracket adds ~250 kcal/day to your TDEE estimate. That is the entire lean bulk surplus, invisible.&lt;/p&gt;

&lt;h2&gt;
  
  
  Which formula should you actually use?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Default: Mifflin-St Jeor.&lt;/strong&gt; Best validated on modern populations. Works for 90% of users. Adopt this as your baseline.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use Katch-McArdle if:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You have a recent, accurate body fat measurement (DEXA, BOD POD, or well-calibrated smart scale)&lt;/li&gt;
&lt;li&gt;You are lean (under 15% body fat men / 22% women)&lt;/li&gt;
&lt;li&gt;Muscular (normalized &lt;a href="https://ffmicheck.com/blog/what-is-ffmi-complete-explanation/" rel="noopener noreferrer"&gt;FFMI&lt;/a&gt; above 22)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The Mifflin-St Jeor formula systematically underestimates BMR for muscular subjects because it treats bodyweight as a monolith. A 90 kg lifter at 10% body fat has more BMR-active tissue than a 90 kg person at 25% body fat — Katch-McArdle captures this, Mifflin-St Jeor does not.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Skip Harris-Benedict entirely.&lt;/strong&gt; Modern research consistently shows it overestimates BMR in current populations. Legacy only.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 2-week verification protocol
&lt;/h2&gt;

&lt;p&gt;Formulas are educated guesses. Your actual TDEE is verified only by eating a specific calorie level and watching what your bodyweight does.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Week 1-2: Eat calculated TDEE. Weigh yourself daily, morning fasted.
Week 2 end: Average bodyweight per week.

If avg_weight_change &amp;lt; 0.3 kg/week → TDEE guess correct.
If avg_weight_change &amp;gt; +0.3 kg/week → subtract 150-200 kcal from TDEE, retest.
If avg_weight_change &amp;lt; -0.3 kg/week → add 150-200 kcal to TDEE, retest.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Two weeks of calibration beats any calculator on the internet. The formulas get you within ±200 kcal of correct — the calibration test gets you within ±50 kcal.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why calculators disagree with each other
&lt;/h2&gt;

&lt;p&gt;Now you can trace the disagreement:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Calculator brand&lt;/th&gt;
&lt;th&gt;Likely BMR formula&lt;/th&gt;
&lt;th&gt;Likely activity math&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Cronometer, Precision Nutrition&lt;/td&gt;
&lt;td&gt;Katch-McArdle (needs body fat input)&lt;/td&gt;
&lt;td&gt;1.2-1.9 standard&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;MyFitnessPal (default)&lt;/td&gt;
&lt;td&gt;Mifflin-St Jeor&lt;/td&gt;
&lt;td&gt;1.2-1.725&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Older bodybuilding sites&lt;/td&gt;
&lt;td&gt;Harris-Benedict&lt;/td&gt;
&lt;td&gt;Various&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Fitness industry pros&lt;/td&gt;
&lt;td&gt;Mifflin-St Jeor or Katch-McArdle&lt;/td&gt;
&lt;td&gt;Custom adjusted&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Two calculators using the same formula but different activity multipliers can still give 15-20% different TDEE numbers for the same input. Two calculators using different formulas &lt;em&gt;and&lt;/em&gt; different multipliers can differ by 25-30%.&lt;/p&gt;

&lt;h2&gt;
  
  
  The single input that changes everything
&lt;/h2&gt;

&lt;p&gt;If you had to pick one input to be accurate about, it would be &lt;strong&gt;activity level, not body fat.&lt;/strong&gt; Body fat error affects Katch-McArdle only. Activity level error affects every formula equally.&lt;/p&gt;

&lt;p&gt;Solution: measure your steps for a week (phone or watch), record your exact training sessions, and cross-check against these anchors:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Under 5k steps/day + no gym:&lt;/strong&gt; 1.2 (sedentary)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;5-8k steps/day + 3 gym sessions:&lt;/strong&gt; 1.375 (light)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;8-10k steps/day + 4-5 gym sessions:&lt;/strong&gt; 1.55 (moderate)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;10k+ steps + 6 gym sessions + physical job:&lt;/strong&gt; 1.725 (heavy)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most desk workers with a solid lifting routine sit at 1.375-1.45. Not 1.55. This one adjustment resolves half the "why does my TDEE not match reality" cases.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bottom line
&lt;/h2&gt;

&lt;p&gt;Every TDEE calculator you use online is one of these three formulas with some activity multiplier bolted on. Mifflin-St Jeor is the modern default. Katch-McArdle is more accurate if you have a reliable body fat number and are lean/muscular. Harris-Benedict is legacy — do not trust it for anything important.&lt;/p&gt;

&lt;p&gt;But the formula matters less than you think. The activity multiplier matters more. And what matters most is the 2-week verification test — actually eat at your calculated TDEE, watch what your bodyweight does, and adjust from there. Every calculator on the internet is a starting hypothesis, not an answer.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Want to try a Mifflin-St Jeor-based TDEE calculator with honest activity guidance?&lt;/strong&gt; I built &lt;a href="https://ffmicheck.com/" rel="noopener noreferrer"&gt;ffmicheck.com&lt;/a&gt; — free, no signup, mobile-first. Also has FFMI, body fat, macros, and 1RM tools if you want them.&lt;/p&gt;

&lt;p&gt;Related read: &lt;a href="https://dev.to/ffmicheck/the-two-1rm-formulas-that-give-different-answers-and-which-one-to-trust-8ib"&gt;The two 1RM formulas that give different answers (and which one to trust)&lt;/a&gt; — same "why do calculators disagree" question, applied to strength math.&lt;/p&gt;

</description>
      <category>fitness</category>
      <category>math</category>
      <category>algorithms</category>
      <category>health</category>
    </item>
    <item>
      <title>The two 1RM formulas that give different answers (and which one to trust)</title>
      <dc:creator>Sami Renkyorganci </dc:creator>
      <pubDate>Sat, 11 Jul 2026 09:45:44 +0000</pubDate>
      <link>https://dev.to/ffmicheck/the-two-1rm-formulas-that-give-different-answers-and-which-one-to-trust-8ib</link>
      <guid>https://dev.to/ffmicheck/the-two-1rm-formulas-that-give-different-answers-and-which-one-to-trust-8ib</guid>
      <description>&lt;p&gt;If you've ever pulled a "one-rep max" estimate from a spreadsheet or calculator app, there's a good chance one of two formulas was running under the hood: &lt;strong&gt;Epley (1985)&lt;/strong&gt; or&lt;br&gt;&lt;br&gt;
  &lt;strong&gt;Brzycki (1993)&lt;/strong&gt;. They look similar on paper but give different answers under fatigue. Which matters when you're programming percentages.                                            &lt;/p&gt;

&lt;p&gt;## The formulas                                                                                                                                                                        &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Epley:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  1RM = weight × (1 + reps / 30)                                                                                                                                                         
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Brzycki:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  1RM = weight × 36 / (37 − reps)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;## Worked example                      &lt;/p&gt;

&lt;p&gt;Bench 100 kg for 5 reps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Epley:&lt;/strong&gt; &lt;code&gt;100 × (1 + 5/30) = 116.7 kg&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Brzycki:&lt;/strong&gt; &lt;code&gt;100 × 36 / 32 = 112.5 kg&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Same set, 4 kg gap in the estimate. That gap matters when you're prescribing "5x5 at 85%" — the two formulas produce different working loads.&lt;/p&gt;

&lt;p&gt;## When to use each                                                                                                                                                                    &lt;/p&gt;

&lt;p&gt;Research comparison (LeSuer et al. 1997, Wood et al. 2002):                                                                                                                            &lt;/p&gt;

&lt;p&gt;| Rep range | Better formula | Why |&lt;br&gt;&lt;br&gt;
  |-----------|---------------|-----|&lt;br&gt;
  | 1–3 reps | Epley or either | Both fit tightly at low reps |&lt;br&gt;
  | 4–8 reps | Similar accuracy | Convergence zone |&lt;br&gt;
  | 9–10 reps | Brzycki | Epley starts overpredicting |&lt;br&gt;
  | 12+ reps | Neither | Both break down |                                                                                                                                               &lt;/p&gt;

&lt;p&gt;## Practical rule                                                                                                                                                                      &lt;/p&gt;

&lt;p&gt;Average the two. For programming safety:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;  &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;estimate1RM&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;reps&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;epley&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;weight&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;reps&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;30&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;brzycki&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;weight&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;36&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;37&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;reps&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="na"&gt;epley&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;epley&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;toFixed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;                                                                                                                                                           
      &lt;span class="na"&gt;brzycki&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;brzycki&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;toFixed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;       
      &lt;span class="na"&gt;avg&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nx"&gt;epley&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;brzycki&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;toFixed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;                                                                                                                                           
      &lt;span class="na"&gt;conservative&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;min&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;epley&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;brzycki&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;toFixed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;                                                                                                                               
    &lt;span class="p"&gt;};&lt;/span&gt;                                                                                                                                                                                   
  &lt;span class="p"&gt;}&lt;/span&gt;                      

  &lt;span class="nf"&gt;estimate1RM&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;                                                                                                                                                                   
  &lt;span class="c1"&gt;// { epley: '116.7', brzycki: '112.5', avg: '114.6', conservative: '112.5' }&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Use &lt;code&gt;conservative&lt;/code&gt; for heavy percentages you're about to attempt, &lt;code&gt;avg&lt;/code&gt; for programming references.&lt;/p&gt;

&lt;p&gt;## Why this matters&lt;/p&gt;

&lt;p&gt;Neither formula was validated above 10 reps. The relationship between rep count and load isn't linear at the extremes — at 15+ reps, endurance and glycogen dominate rather than neural&lt;br&gt;
   drive, and no formula accounts for that.&lt;/p&gt;

&lt;p&gt;Full breakdown with rep-load percentage table and lift-specific accuracy data at &lt;a href="https://ffmicheck.com/blog/epley-vs-brzycki-1rm-formula/" rel="noopener noreferrer"&gt;ffmicheck.com&lt;/a&gt;.                            &lt;/p&gt;




&lt;p&gt;Built as part of &lt;a href="https://ffmicheck.com" rel="noopener noreferrer"&gt;FFMI Check&lt;/a&gt; — a free fitness calculator hub citing peer-reviewed formulas (Kouri 1995, Mifflin-St Jeor, Epley, Brzycki) instead of proprietary&lt;br&gt;
   math. &lt;/p&gt;

</description>
      <category>javascript</category>
      <category>learninpublic</category>
      <category>fitness</category>
      <category>math</category>
    </item>
  </channel>
</rss>
