Martin Berkhan's Leangains method has been in the fitness discussion since 2007. The core idea is deceptively simple: eat more when you train, eat less when you don't, and let the weekly average land near maintenance for recomposition. What most online calculators skip is how Berkhan actually sized the surplus and deficit — the method is not "guess and check", it is a defined protocol. This is what the Leangains macro calculator is actually computing, why the training/rest split matters, and how to run the numbers correctly for your own bodyweight.
The Core Leangains Formula
The Berkhan protocol splits your week into two nutrition modes based on training status:
- Training day: TDEE + 20% calories, high carbs, moderate protein, low fat
- Rest day: TDEE − 10% calories, low carbs, higher protein, higher fat
For a typical 4-training-days-per-week schedule with 3 rest days, the weekly calorie average lands within 3-5% of maintenance. That is what makes Leangains a recomposition protocol rather than a pure bulk or cut.
Step 1 — Find Your Real TDEE
Every Leangains number is anchored to a verified TDEE. Berkhan is explicit about this in his original 2008 blog post: guessed maintenance produces guessed results. Run your numbers through our TDEE calculator (Mifflin-St Jeor equation), then verify with 2 weeks of stable eating:
- Weigh daily, fasted, post-bathroom
- Take weekly 7-day averages
- Flat bodyweight = TDEE guess correct
- Moving ±0.3 kg per week = adjust ±150 kcal
If your predicted TDEE is 2,500 kcal and verified stable, that is the number every other Leangains calculation runs off.
Step 2 — Calculate Training Day Calories
Training days sit at TDEE + 20%. For our 2,500 kcal example:
Training day calories = 2,500 × 1.20 = 3,000 kcal
Berkhan's rationale: the 20% surplus is high enough to drive muscle-protein synthesis and refill glycogen post-workout, but low enough that most of the excess is partitioned into lean mass rather than fat storage — especially when the surplus lands immediately around training.
Step 3 — Calculate Rest Day Calories
Rest days drop to TDEE − 10%:
Rest day calories = 2,500 × 0.90 = 2,250 kcal
The deficit is intentionally shallow. Berkhan explicitly warned against aggressive rest-day cuts — deep deficits on rest days spike cortisol, tank recovery, and undo the training-day surplus. The 10% cut is designed to be barely noticeable in energy but meaningful in weekly calorie totals.
Step 4 — Weekly Average Check
For a 4/3 training/rest split (Mon-Wed-Fri-Sat train, Tue-Thu-Sun rest):
- 4 training days × 3,000 = 12,000 kcal
- 3 rest days × 2,250 = 6,750 kcal
- Weekly total: 18,750 kcal
- Daily average: 2,679 kcal (versus 2,500 maintenance)
That is a +7% weekly average — a mild lean bulk pace. Under this protocol, most trained naturals gain ~0.25% bodyweight per week, with the majority partitioned as lean mass because the surplus lands on high-demand training days.
Macro Splits — What Actually Changes Between Days
Training day macros
- Protein: 1.8–2.2 g/kg bodyweight
- Fat: ~0.5 g/kg (deliberately low)
- Carbs: everything left — usually 50-60% of total calories
The low-fat/high-carb split on training days is Berkhan-specific. The reasoning is that carbs drive training performance and replenish glycogen faster than fat can, and displacing dietary fat with carbs raises training-day insulin sensitivity in the muscle.
Rest day macros
- Protein: 2.0–2.4 g/kg (higher than training day)
- Fat: 1.0–1.3 g/kg (much higher)
- Carbs: whatever remains — often 20-30%
Rest days flip the ratio. Protein up to preserve lean mass through the mild deficit, fat up to fill the calorie gap and support hormones, carbs down because glycogen demand is minimal.
The Full Weekly Macro Picture — 80 kg Lifter Example
For an 80 kg trained lifter with TDEE 2,800 kcal:
Training day (4× per week)
- Calories: 3,360 (2,800 × 1.20)
- Protein: 80 × 2.0 = 160 g → 640 kcal (19%)
- Fat: 80 × 0.5 = 40 g → 360 kcal (11%)
- Carbs: 3,360 − 640 − 360 = 2,360 kcal → 590 g (70%)
Rest day (3× per week)
- Calories: 2,520 (2,800 × 0.90)
- Protein: 80 × 2.2 = 176 g → 704 kcal (28%)
- Fat: 80 × 1.2 = 96 g → 864 kcal (34%)
- Carbs: 2,520 − 704 − 864 = 952 kcal → 238 g (38%)
Notice the carb swing: 590 g on training days, 238 g on rest days. That is a 350 g daily variation. The training-day carb load is what makes this protocol feel very different from a standard flat-calorie bulk.
Meal Timing — The 16/8 Fasting Layer
Leangains is not just calorie cycling. The original protocol pairs the macro split with a 16-hour daily fast, eating in an 8-hour window. Training happens fasted (or with 10 g BCAA pre-workout), and the first big meal is the post-workout refeed. This layer is optional — the macro numbers work without fasting — but the two components together are what defined the "Leangains method" as Berkhan described it.
Who Leangains Works For
- Intermediate to advanced lifters who have already dialed in a stable maintenance diet
- Recomposition goals — simultaneous fat loss and muscle gain, near-maintenance
- Lifters comfortable with 4-5 training days per week — the protocol needs distinct training/rest days
- People who prefer daily calorie variation to a flat daily target
Who Leangains Doesn't Work For
- Complete beginners — the flat surplus approach in a standard muscle-gain macro plan produces faster novice gains without the complexity
- Aggressive fat loss goals — the −10% rest day cut is too shallow to drive quick recomposition; use a standard fat-loss macro split instead
- 3 days/week training or less — the training/rest ratio breaks down; you spend more days at deficit than at surplus
- Lifters with poor tracking habits — the protocol requires day-specific eating; daily flexibility is not the goal
Common Mistakes When Running Leangains Numbers
- Using an inflated TDEE. Every Leangains calorie number is a percentage of TDEE. Overestimate maintenance by 300 kcal and both training and rest day numbers are also 300+ kcal too high. Verify first.
- Cheating the split percentages. The 20% up / 10% down is not arbitrary. Making it 30%/15% pushes the weekly average too high and produces the same fat gain as a flat dirty bulk.
- Skipping the rest-day protein bump. Rest day protein has to go UP even though calories go DOWN. This is what preserves muscle through the deficit.
- Treating the fasted training window as optional pre-workout carb loading. If you fast, fast — do not "just have a banana." The protocol was designed around actual fasted training.
Leangains vs Standard Muscle-Gain Macros
Simple comparison for a 80 kg lifter:
- Standard bulk: 3,100 kcal every day, ~0.5% weekly bodyweight gain, ~60% lean mass ratio
- Leangains protocol: 3,360 training / 2,520 rest, ~0.25% weekly bodyweight gain, ~75-80% lean mass ratio
Leangains trades speed for partition — you gain more slowly but keep the gains cleaner. Over 12 weeks, a standard bulk might add 4 kg (2.4 kg lean, 1.6 kg fat), while Leangains adds 3 kg (2.25 kg lean, 0.75 kg fat). Same lean gain, less fat to cut later.
Practical Running of the Protocol
- Verify TDEE with 2 weeks of stable eating and daily weigh-ins
- Calculate training day calories: TDEE × 1.20
- Calculate rest day calories: TDEE × 0.90
- Set training day macros: 2.0 g/kg protein, 0.5 g/kg fat, carbs fill
- Set rest day macros: 2.2 g/kg protein, 1.2 g/kg fat, carbs fill
- Track daily bodyweight, review weekly averages, adjust every 2 weeks
- Plug the daily numbers into our Macro Matrix calculator for a per-day breakdown
Related Cluster Reading
- Macro calculator for muscle gain — the standard flat-surplus approach
- Macro calculator for fat loss — cutting protocol
- Mifflin-St Jeor TDEE accuracy — the formula behind every Leangains number
Bottom Line
The Leangains macro calculator is not a mystery equation — it is Berkhan's original TDEE × 1.20 on training days and TDEE × 0.90 on rest days, with day-specific macro splits (high carb training, higher fat rest). It works best for intermediate lifters chasing recomposition at 4-5 training days per week. Verify your TDEE first, run the split, adjust every 2 weeks, and expect slower but cleaner gains than a flat bulk. If those trade-offs sound wrong for your goal, use a standard macro protocol instead.