TL;DR
Macro counting ("IIFYM" or "flexible dieting") is the simplest way to operationalise a calorie and protein target without prescribing exact foods. This article covers the arithmetic, the starting targets, and the weekly correction loop that keeps the plan honest.
The hierarchy
Set macros in this order:
- Calories — total budget from your TDEE (use the TDEE Calculator, plus or minus your goal adjustment).
- Protein — 1.6 g/kg body mass for lifters, up to 2.2 g/kg in a cut.
- Fat — minimum 0.8 g/kg body mass, up to ~35% of total calories.
- Carbs — whatever's left of the calorie budget.
This order is not arbitrary. Protein drives muscle outcomes. Fat below 0.8 g/kg has hormonal costs. Carbs are the energy buffer and sit last because they have the most flexibility without physiological penalty.
Worked example
80-kg intermediate lifter, TDEE 2,700 kcal, goal: slow bulk (+250 kcal/day):
Target calories: 2,950 kcal/day
Protein: 80 × 1.8 = 144 g → 144 × 4 kcal = 576 kcal
Fat: 80 × 1.0 = 80 g → 80 × 9 kcal = 720 kcal
Carbs: (2,950 − 576 − 720) / 4 = 414 g = 1,654 kcal
Ratios: 20% protein / 24% fat / 56% carbs For the same lifter in a cut (TDEE 2,700, target 2,200):
Protein: 80 × 2.2 = 176 g → 176 × 4 = 704 kcal
Fat: 80 × 0.9 = 72 g → 72 × 9 = 648 kcal
Carbs: (2,200 − 704 − 648) / 4 = 212 g = 848 kcal
Ratios: 32% protein / 29% fat / 39% carbs The Macro Calculator runs this for any bodyweight and goal.
How precise do you need to be?
Aim for:
- Protein: within ±5 g of target.
- Fat: within ±5–8 g of target.
- Carbs: within ±15–20 g. Carbs are the buffer; let them float.
- Calories: within ±100 kcal of target over a 3-day average.
Obsessing to the gram isn't necessary and makes the process brittle. Hitting your protein reliably and your calories approximately is the operational core.
The weekly correction loop
Real TDEE drifts. Training load changes. Body composition changes. Metabolic adaptation accumulates during cuts[4]. Your macro targets should drift too.
Weekly protocol:
- Average bodyweight across the week (daily weigh-ins, ignore single-day spikes).
- Compare this week's average to last week's.
- Expected direction: bulk +0.25–0.5 kg/week for intermediate lifters, cut −0.4–0.8 kg/week.
- If movement is within expected range, keep macros the same.
- If movement is too fast or too slow, adjust calories by 100–150 kcal/day (primarily carbs).
This is how a 2,700 kcal bulk at week 1 becomes a 2,900 kcal bulk at week 8 as muscle mass and NEAT creep up. Holding macros rigidly doesn't hold outcomes rigidly; it just means the outcomes drift invisibly.
Macros for different goals
Four goal profiles with defensible macro splits. Targets expressed for an 80 kg lifter:
Goal Calories Protein Fat Carbs
──────────────────────────────────────────────────────────────
Slow bulk (+250) TDEE+250 1.8 g/kg 1.0 g/kg ~50% kcal
Maintenance TDEE 1.6 g/kg 0.9 g/kg ~45% kcal
Slow cut (−300) TDEE−300 2.0 g/kg 0.8 g/kg ~35% kcal
Mini cut (−500) TDEE−500 2.3 g/kg 0.8 g/kg ~30% kcal The direction of travel: as the deficit deepens, protein goes up and carbs come down. Fat stays roughly constant at the 0.8–1.0 g/kg floor across all phases.
Food quality vs macro arithmetic
Strict IIFYM says “a pop tart and chicken breast are macro-equivalent.” Arithmetically true; physiologically messy. Highly processed, low-fibre foods:
- Are less satiating per calorie. You'll eat to target but stay hungrier.
- Have noisier digestibility. Gram-for-gram comparisons with whole foods aren't always clean.
- Lack micronutrients. Macro adherence doesn't guarantee adequate vitamins and minerals.
The 80/20 rule applies: roughly 80% of calories from whole foods (meat, fish, dairy, grains, fruit, vegetables, legumes), 20% from anything else. Strict tracking works best on this foundation.
Practical tracking workflow
- Set targets in your tracker (MacroFactor, Cronometer, whatever). Most apps accept a macro goal directly.
- Weigh all whole foods. Raw weights for meat, cooked weights for rice and oats — pick one and be consistent with the database's convention.
- Log as you eat, not at end-of-day. Retroactive logging is where calories go unaccounted for.
- Don't obsess about vegetables. Non-starchy vegetables can be eyeballed; their caloric density is low enough that typical portion errors don't move the needle.
- Pre-log your day the night before or in the morning. It's far easier to hit a target when you've committed to a plan than when you're improvising at each meal.
When precision matters more
- Contest-prep bodybuilding: Tighter than ±5 g everywhere. The margins are narrow.
- Weight-class-making for competition: Calorie accuracy becomes critical in the final 10 days.
- Post-plateau cutting: Real adherence (not "I think I hit ~2,000") separates productive cuts from frustrating ones.
When precision matters less
- Maintenance living: Hit protein, eat reasonable portions, move on. Precise macro tracking at maintenance is rarely a good use of mental bandwidth.
- Off-season, no physique goal: Track protein, everything else by feel, reassess quarterly.
Common errors
- Over-rounding. Logging “chicken, 150 g” when the actual cooked portion was 220 g produces a ~30 g calorie and protein shortfall per meal.
- Forgotten oil. Tablespoon of olive oil = 120 kcal. Three tablespoons a day, unlogged = 360 kcal — enough to derail a cut.
- Weekend drift. Weekend eating averages 500–700 kcal above weekday for most adults. A cut that's clean Monday–Friday and falls apart Saturday–Sunday stalls entirely.
- Liquid calories. Juice, alcohol, sugary drinks, “innocent” coffees with sweeteners. Track all of it or eliminate all of it.
Worked example: 72-kg recreational lifter in a slow cut
A 72-kg intermediate lifter with a measured TDEE of 2,500 kcal chooses a 350 kcal deficit for a 12-week slow cut. Build the full plan end-to-end:
Target calories: 2,500 − 350 = 2,150 kcal/day
Protein: 72 × 2.2 = 158 g → 158 × 4 = 632 kcal
Fat: 72 × 0.85 = 61 g → 61 × 9 = 549 kcal
Carbs: (2,150 − 632 − 549) / 4 = 242 g → 969 kcal
Share of calories: 29% P / 26% F / 45% C
Expected rate: 0.4–0.6 kg/wk (0.55–0.83%/wk of bodyweight) Week 4 check-in. Average bodyweight dropped from 72.1 kg to 71.0 kg (−0.27 kg/wk — slower than the 0.4 kg/wk floor). Two interpretations are consistent with the ISSN position stand[1]: the real TDEE was higher than the equation predicted, or adherence was ~150 kcal/day looser than logged. The correction rule says drop calories 150 kcal/day (primarily from carbs) and recheck in 2 weeks before dropping further. Holding macros rigid here, as the metabolic-adaptation literature shows[4], is why static plans silently fail — the target drifts and the unchanged plan no longer matches it.
Common failure modes
- Protein hit in gross but not per-meal. 150 g of daily protein in two meals underfeeds muscle-protein synthesis relative to four 30–40 g doses across the day. Distribute protein; don't just hit the daily total.
- Counting cooked vs raw inconsistently. 100 g of raw chicken breast yields roughly 75 g cooked; confusing the two produces a ~30% protein over- or under-count on that meal.
- Treating fat floor as a fat ceiling. 0.8 g/kg is the minimum. Endurance athletes and lifters with high-saturation diets often do better at 1.0–1.2 g/kg[2].
- Ignoring micronutrient gaps. Macro adherence does not guarantee micronutrient adequacy. A 2,200 kcal cut built from rice, chicken, and protein shakes will macro-match but under-deliver potassium, magnesium, and fibre.
- Counting carbs-not-fat-not-protein fibre as digestible. Subtract half of fibre from gross carb counts when using IIFYM-strict food labels; the discrepancy is ~100 kcal/day for high-fibre diets.
Connects to
- How to Eat Enough Protein — the protein half of the plan.
- TDEE Formulas Compared — the calorie baseline.
- How to Break a Weight-Loss Plateau — when the correction loop breaks.
Tools: Macro Calculator, TDEE Calculator.
References
- 1 International Society of Sports Nutrition position stand: protein and exercise — Journal of the International Society of Sports Nutrition (2017)
- 2 Fat intake and athletic performance — Current Opinion in Clinical Nutrition and Metabolic Care (2014)
- 3 Carbohydrate-restriction and altered endurance performance — Journal of the International Society of Sports Nutrition (2017)
- 4 Metabolic adaptation to caloric restriction and subsequent refeeding — American Journal of Clinical Nutrition (2015)