Macro Calculator
Calculate your daily macronutrient targets based on your body stats, activity level, and fitness goal.
Results
Visualization
How It Works
The macro calculator runs Mifflin-St Jeor for BMR, multiplies by an activity factor (1.2 sedentary to 1.9 hard daily training), then splits the calorie target into protein, carbs, and fat. The Atwater factors used (4/4/9 kcal per gram) are class averages — actual metabolizable energy from mixed-fiber foods is closer to 3.5 kcal/g for refined carbs and 2.6 kcal/g for almonds (Novotny et al., AJCN 2012). The biggest source of error here is the activity multiplier, not the BMR equation itself: self-reported activity inflates TDEE by 200-400 kcal in roughly half of users (Lichtman et al., NEJM 1992). Pick the multiplier one tier below what feels right and recalibrate from 2-3 weeks of weight trend data.
The Formula
Variables
- BMR — Basal Metabolic Rate — kcal at complete rest, ~60-70% of TDEE for sedentary adults
- TDEE — Total Daily Energy Expenditure — BMR + TEF (~10%) + NEAT + exercise
- weight_kg — Body weight in kilograms
- height_cm — Height in centimeters
- activity_multiplier — 1.2 desk job, 1.375 light 1-3x/wk, 1.55 moderate 3-5x/wk, 1.725 hard 6-7x/wk, 1.9 hard daily + physical job
- calories_per_gram — Atwater factors: protein 4, carbs 4, fat 9, alcohol 7, fiber ~2
Worked Example
75 kg male, 178 cm, 32 yrs, lifts 4x/wk, cutting at -500 kcal/day. BMR = 10(75) + 6.25(178) - 5(32) + 5 = 1,708 kcal. TDEE = 1,708 * 1.55 = 2,647 kcal. Target = 2,147 kcal. Protein at 2.0 g/kg = 150 g (600 kcal). Fat at 0.8 g/kg = 60 g (540 kcal). Carbs = (2,147 - 600 - 540) / 4 = 252 g. Final split: 150P / 252C / 60F.
Practical Tips
- Use a 7-day rolling weight average from morning weigh-ins, post-bathroom, pre-food. Daily readings swing 1-2 kg from sodium, glycogen, and stool weight — the average smooths it out.
- Set protein in g/kg of body weight, not as a percentage of calories. At 1,800 kcal vs 2,800 kcal, a fixed 30% protein gives you 135 g vs 210 g — only one of those preserves muscle in a deficit.
- Mifflin-St Jeor was validated against indirect calorimetry in a sample skewing average BMI. For lean trained individuals it under-predicts BMR by 5-8%; for high-BF individuals it over-predicts by a similar margin (Frankenfield et al., J Am Diet Assoc 2005).
- TEF differs by macro: protein burns 20-30% of its own calories in digestion, carbs 5-10%, fat 0-3%. A 200 g protein day costs roughly 160 extra kcal vs an isocaloric low-protein day.
- If weight is flat for 14 days at the same intake, you found maintenance — not a stalled deficit. Drop intake by 150 kcal or add 1,500 daily steps, then wait another 10-14 days before judging.
- Activity multipliers cap at 1.9 because beyond that, exercise calories are large enough to track separately (TDEE method breaks down). For tour-stage cyclists or 4hr/day endurance athletes, log workouts as discrete kcal additions instead.
- Round protein up, carbs to nearest 5 g, fat to nearest 5 g — exact gram precision is theater given measurement error in food scales (~3%) and label tolerance (FDA allows ±20%).
Frequently Asked Questions
Why does Mifflin-St Jeor beat Harris-Benedict?
Harris-Benedict was developed in 1919 from 239 subjects and over-predicts modern BMR by 5-15% because contemporary populations have lower lean mass at a given weight. Mifflin-St Jeor (1990, n=498) was validated against indirect calorimetry and lands within ±10% for ~80% of healthy adults. For obese subjects (BMI >30), Mifflin still over-predicts; the Mifflin-adjusted-for-FFM version using the Katch-McArdle formula (370 + 21.6 * lean_kg) is more accurate when you know body fat.
Should I use total weight or lean body mass for protein?
Lean body mass if you're carrying significant body fat (>25% men, >32% women) — extra adipose tissue doesn't need protein. A 100 kg man at 30% BF should target 2.0 g/kg of his 70 kg lean mass = 140 g, not 200 g. For lean individuals (<20% BF men, <28% women), total weight works fine since LBM and total weight are close.
How accurate is the 4/4/9 kcal-per-gram rule?
Atwater factors are population averages with substantial food-specific variance. Almonds yield 4.6 kcal/g not 6.0 (Novotny 2012). Resistant starch in cooled potatoes/oats yields ~2 kcal/g not 4. Mixed-diet error compounds to ~5-8% over a week. Tracking apps already absorb this in their database, so don't double-correct.
What macro split is best for body recomposition?
Higher protein than typical, slight or no calorie deficit, and resistance training. Longland et al. (2016) demonstrated 2.4 g/kg protein with 40% deficit + heavy lifting added 1.2 kg lean mass and lost 4.8 kg fat in trained subjects over 4 weeks; the 1.2 g/kg group lost 0.1 kg lean and 3.5 kg fat. Recomp works best with 30-40% protein, 30% fat, balance carbs.
Why does my deficit stop working after 8-12 weeks?
Adaptive thermogenesis: your TDEE drops 5-15% beyond what weight loss alone predicts, due to reduced NEAT (you fidget less, walk less), lower TEF (smaller meals), and modest BMR suppression (Müller & Bosy-Westphal, Eur J Clin Nutr 2013). Recalculate TDEE at your current weight every 4-6 kg lost, and consider a 1-2 week diet break at maintenance every 8-12 weeks of cutting to partially reset NEAT and leptin.
Can I just eat the same macros every day forever?
Yes for general body composition goals — daily uniformity is fine and easier to adhere to. Carb cycling, protein periodization, and refeeds add small benefits (~1-3% of total result) at the cost of significant complexity. Adherence beats optimization: a flat 30/40/30 split you hit 90% of days outperforms a perfect periodized plan you hit 60% of days.
Do I need to eat protein every 3 hours for muscle synthesis?
No. Schoenfeld et al. (J Int Soc Sports Nutr 2018) showed total daily protein matters most; meal frequency between 3-6 meals produced equivalent gains. The MPS-saturating dose is ~0.4 g/kg per meal (~30 g for an 80 kg lifter). 3-5 protein-anchored meals daily is the practical sweet spot.
What's the smallest change that's worth making?
150 kcal/day. That's the typical week-to-week noise floor in tracking accuracy. Smaller adjustments get lost in label tolerance and weighing variance. If results stall, change one variable (calories OR steps) by 150-200 kcal, hold for 14 days, reassess.
Sources
- Mifflin MD et al., Am J Clin Nutr 1990;51:241-247 — A new predictive equation for resting energy expenditure
- Helms ER et al., J Int Soc Sports Nutr 2014;11:20 — Evidence-based recommendations for natural bodybuilding contest preparation
- Longland TM et al., Am J Clin Nutr 2016;103(3):738-746 — Higher compared with lower dietary protein during energy deficit
- Dietary Reference Intakes for Macronutrients — National Academies