| Metric | Value | Copy |
|---|---|---|
| {{ row.label }} | {{ row.value }} |
| Macro | Percent | Grams | Calories | g/kg | Copy |
|---|---|---|---|---|---|
| {{ row.macro }} | {{ row.percentDisplay }}% | {{ row.gramsDisplay }} g | {{ formatNumber(row.caloriesValue) }} kcal | {{ row.densityDisplay }} |
| Meal | Calories | Protein | Carbs | Fat | Share | Focus | Copy |
|---|---|---|---|---|---|---|---|
| {{ meal.name }} | {{ meal.caloriesDisplay }} kcal | {{ meal.proteinDisplay }} g | {{ meal.carbDisplay }} g | {{ meal.fatDisplay }} g | {{ meal.shareDisplay }} | {{ meal.focus }} |
Daily macro planning starts with energy balance, not with a favorite ratio. A protein, carbohydrate, and fat target only makes sense after maintenance calories and goal pace are set. This calculator estimates maintenance from sex, age, weight, height, and activity, then turns that calorie budget into daily macro grams and a per-meal split.
Optional body-fat input changes more than one line item. It enables lean-mass formulas for resting energy and lets the protein floor use lean mass instead of total body weight. The result panel shows both the requested formula and the formula actually used, so you can see when a lean-mass method stayed active and when the page fell back to Mifflin-St Jeor instead.
Once the inputs validate, the page expands into Plan, Macros, Meal Split, Macro Breakdown, Meal Split Map, Macro Target Map, and JSON views. You can copy rows, export tables to CSV and DOCX, save charts as PNG, WebP, JPEG, or CSV, and download the full result as JSON. The calculations and exports stay inside the browser session for this tool.
This is a planning estimate, not medical nutrition therapy. People who are under 18, pregnant, managing a clinical condition, or recovering from disordered eating should use the result as background context and review it with a qualified clinician or dietitian.
Energy estimation starts with one of three resting-energy formulas. Mifflin-St Jeor uses body weight, height, age, and sex. Katch-McArdle and Cunningham use lean mass, so they only stay selected when body-fat percentage is available. If body fat is blank, the calculator switches back to Mifflin-St Jeor and tells you that the lean-mass formula could not be used.
Goal handling is explicit rather than implied. Maintenance leaves calories unchanged. Fat loss applies the full selected deficit. Recomposition applies only 60 percent of the selected deficit, so a 10 percent recomposition setting becomes a 6 percent plotted deficit. Muscle gain applies the full selected surplus.
| Setting | How the calculator treats it | Multiplier or rule |
|---|---|---|
| Sedentary | Desk work or very little movement | 1.2 |
| Lightly active | About 1 to 3 training sessions each week | 1.375 |
| Moderately active | About 3 to 5 sessions each week | 1.55 |
| Very active | About 6 to 7 sessions each week | 1.725 |
| Athlete | High-volume training or two-a-days | 1.9 |
| Fat loss | Subtract the full chosen percentage from maintenance | −p% |
| Recomposition | Subtract 60 percent of the chosen percentage | −0.6p% |
| Muscle gain | Add the full chosen percentage to maintenance | +p% |
Macro allocation starts with one of four presets or a custom ratio. A custom entry must contain three numeric parts whose total is within about 1 percentage point of 100. If you set a protein floor, the calculator fixes protein first, caps it at 50 percent of total calories, and then redistributes the remaining calories between carbohydrate and fat in the same proportion as the chosen base split.
Protein and carbohydrate use 4 kcal per gram. Fat uses 9 kcal per gram. After the daily totals are set, protein is divided evenly across the chosen number of meals, while carbohydrate and fat are redistributed according to the selected meal pattern.
| Template | Protein | Carbohydrate | Fat |
|---|---|---|---|
| Balanced | 30% | 40% | 30% |
| High protein | 35% | 35% | 30% |
| Lower carb | 35% | 25% | 40% |
| Endurance | 25% | 50% | 25% |
| Rule | Calculator behavior | Why it matters |
|---|---|---|
| Lean-mass formulas | Katch-McArdle and Cunningham need body-fat input | Without body fat, the page falls back to Mifflin-St Jeor and warns you. |
| Lean-mass protein floor | Falls back to total body weight when body fat is blank | The protein floor can end up lower than expected if you assumed lean mass was still in use. |
| Age guardrail | 15 to 90 years | Outside that range the calculation stops instead of estimating. |
| Weight guardrail | 40 to 250 kg after unit conversion | This keeps the tool inside its intended planning range. |
| Height guardrail | 130 to 220 cm after unit conversion | This blocks obviously out-of-scope body-size entries. |
| Body-fat guardrail | 3% to 70% when provided | Lean-mass calculations only run when the body-fat input stays plausible. |
| Meals per day | 2 to 6 meals | Meal rows are redistribution rules, not separate calorie formulas. |
The most reliable first pass is usually maintenance with an honest activity level. Pick the kind of week you actually repeat, not your best training week, because the activity multiplier changes every later number. If maintenance calories look implausible, fix activity before touching templates, meal patterns, or protein floors.
Choose the goal setting by how strongly you want calories to move. Fat loss and muscle gain use the full slider percentage. Recomposition is intentionally milder and only uses 60 percent of the selected deficit. That makes recomp closer to maintenance than a matching fat-loss entry, even when the slider looks the same.
Balanced when you want a neutral starting split and mostly need the energy math done for you.High protein when recovery or satiety matters more than pushing carbohydrate higher.Lower carb when you want a higher fat share without entering a custom ratio.Endurance when you want the highest built-in carbohydrate share.If you do not know body-fat percentage with much confidence, it is usually better to stay with Mifflin-St Jeor than to guess. A bad body-fat guess can distort lean mass, which then affects both the optional energy formula and any lean-mass protein floor. The page makes the fallback visible, so you do not have to infer it from the numbers alone.
The meal patterns are practical scheduling tools rather than metabolism claims. Even split keeps carbohydrate and fat flat across meals. Front-loaded day pushes more fuel earlier. Back-loaded day pushes more fuel later. Training-centered split concentrates more carbohydrate and some fat around the middle of the day while leaving protein nearly even.
The export surface is useful when you want to move from planning to action. The Plan, Macros, and Meal Split tabs support CSV and DOCX exports. The chart tabs let you save the Macro Breakdown, Meal Split Map, and Macro Target Map as images or CSV. The JSON tab keeps a full copy of inputs, derived fields, outputs, warnings, and errors.
30,40,30. A custom ratio needs three numeric parts that add up to about 100.The Plan tab tells the story of the calculation. Formula requested and Formula used show whether your chosen method stayed active. BMR is the resting estimate. Maintenance calories is the activity-adjusted estimate. Goal adjustment shows the exact calorie change applied each day, and Estimated weekly change converts that calorie gap into an approximate kg and lb trend using the tool's built-in 7700 kcal per kilogram assumption.
The Macros tab converts that energy budget into grams and density. Protein, carbohydrate, and fat all show daily grams, calories, and grams per kilogram of body weight. BMI is listed on the Plan tab as a reference field only; the calculator does not classify BMI for you or use it to change the macro rules.
| Map axis | Boundary | Label used by the chart |
|---|---|---|
| Goal calorie delta | <= −5% | Deficit |
| Goal calorie delta | > −5% and < 5% | Maintenance |
| Goal calorie delta | >= 5% | Surplus |
| Protein density | < 1.6 g/kg | Low protein |
| Protein density | >= 1.6 and < 2.2 g/kg | Adequate protein |
| Protein density | >= 2.2 g/kg | High protein |
| Condition | What triggers the warning | Why the page flags it |
|---|---|---|
| Aggressive deficit | Fat loss or recomp with estimated weekly change above 1% of body weight | The plan may be hard to recover from or adhere to. |
| Low diet protein | Fat loss or recomp with protein below 1.6 g/kg | The page suggests a higher-protein template or a manual floor. |
| Low fat floor | Fat below about 0.6 g/kg | The page suggests shifting some calories from carbohydrate to fat. |
| Low carbs for high activity | Very active or athlete setting with carbohydrate below 3 g/kg | The page warns that performance may feel flat. |
A protein floor does not guarantee an Adequate protein or High protein label on the map. The map uses protein per kilogram of total body weight. If you choose a lean-mass protein floor, or if calories are high enough that the protein percentage becomes small, the total-body-weight density can still land below 1.6 g/kg. That is expected behavior, not a chart mismatch.
The charts answer different questions. Macro Breakdown shows how the calorie budget was divided. Meal Split Map shows how the daily grams were distributed across meals. Macro Target Map shows where the current plan sits on goal delta and protein density. If your real-world outcome moves opposite to the goal, adjust maintenance assumptions first, then pace, and only then the macro mix.
A 34-year-old female at 68 kg and 168 cm with moderate activity, a maintenance goal, the balanced template, and 3 meals per day produces a BMR of 1399 kcal and maintenance calories of 2168 kcal. Because the goal is maintenance, the target calories stay at 2168.
The daily macros come out to about 162.6 g protein, 216.8 g carbohydrate, and 72.3 g fat. With an even split across 3 meals, that becomes roughly 54.2 g protein, 72.3 g carbohydrate, and 24.1 g fat per meal. Protein density is 2.39 g/kg, which shows that a 30 percent protein template can still land in the chart's high-protein band when body weight is modest and calories are moderate.
A 29-year-old male at 82 kg and 178 cm with 17 percent body fat, Cunningham selected, high activity, a 12 percent fat-loss setting, the high-protein template, a 1.8 g/kg lean-mass protein floor, 4 meals, and the training-centered split produces a BMR of 1997 kcal and maintenance calories of 3445 kcal. The full deficit reduces target calories to 3032.
That plan yields about 122.5 g protein, 342.2 g carbohydrate, and 130.4 g fat. Protein density is only 1.49 g/kg on total body weight, so the map still lands below the 1.6 g/kg line even though a lean-mass floor was used. The training-centered split keeps protein near 30.6 g in each meal while concentrating more carbohydrate and fat in the middle meals.
A 41-year-old male at 96 kg and 182 cm with light activity, Katch-McArdle selected, no body-fat entry, a 10 percent recomposition setting, the lower-carb template, a 1.0 g/lb body-weight protein floor, 5 meals, and a back-loaded day produces a visible fallback. The requested formula cannot run without body fat, so the calculator switches to Mifflin-St Jeor and warns you before continuing.
The resulting plan uses maintenance calories of 2610 kcal, applies a recomposition adjustment of about 157 kcal per day, and lands on 2453 target calories. Daily macros come out to about 211.6 g protein, 154.5 g carbohydrate, and 109.8 g fat. Because the day is back-loaded, carbohydrate and fat rise from the first meal to the last while protein stays close to 42.3 g in each meal.
Formula used sometimes differ from Formula requested?Katch-McArdle and Cunningham need lean mass. If body fat is blank, the calculator cannot estimate lean mass, so it switches back to Mifflin-St Jeor and shows a warning.
The protein floor can be based on lean mass, but the map uses grams per kilogram of total body weight. A lean-mass floor or a higher calorie target can therefore produce a lower total-body-weight density than you expected.
Only the distribution changes. Daily calories and daily macro totals stay the same. Protein is spread evenly, while carbohydrate and fat move earlier, later, or toward the middle of the day depending on the selected pattern.
The entry has to contain exactly three numeric parts, and the total needs to be close to 100. Values such as 35,35 or 35,35,20 will stop the calculation because the ratio is incomplete or too far from a full 100 percent split.
No. For this tool, the calculations, result tables, chart rendering, and export generation stay in the browser session.
Use extra caution if you are under 18, pregnant, managing a clinical condition, or recovering from disordered eating. Those situations need individualized assessment that this planning page does not attempt to provide.