{{ headline }}
| Metric | Value | Copy |
|---|---|---|
| {{ row.metric }} | {{ row.value }} |
| Macro | Percent | Grams | Calories | Per meal | Copy |
|---|---|---|---|---|---|
| {{ row.macro }} | {{ row.percentDisplay }}% | {{ row.gramsDisplay }} g | {{ formatNumber(row.caloriesValue) }} kcal | {{ row.perMealDisplay }} | |
| Total | 100% | {{ macroTotals.gramsDisplay }} g | {{ formatNumber(totalCalories) }} kcal | {{ macroTotals.perMealCaloriesDisplay }} |
| Meal | Calories | Protein (g) | Tip | Copy |
|---|---|---|---|---|
| {{ meal.name }} | {{ meal.caloriesDisplay }} kcal | {{ meal.proteinDisplay }} g | {{ meal.tip }} |
Macronutrient targets turn a daily energy budget into grams of protein, carbohydrate, and fat. That matters because the same calorie total can support very different eating patterns, training recovery, and satiety depending on how those calories are distributed. This calculator estimates a daily target from body size, age, activity, and goal, then converts it into macro amounts you can portion across the day.
It is useful when you already know the direction of travel but do not want to hand-calculate basal needs, activity-adjusted calories, and macro grams. Someone planning weekday meal prep, tightening a cut, or testing whether a higher-protein split still fits a maintenance budget can compare scenarios quickly without rebuilding the math each time.
The results are best treated as a starting plan rather than a verdict on what you personally should eat. The calorie estimate comes from a population equation and broad activity multipliers, so it becomes more useful when you compare it with real weight trend, appetite, training quality, and recovery over time.
For adolescence, pregnancy, eating-disorder recovery, diabetes, kidney disease, or any medically prescribed diet, the numbers need professional context. This page is informational and does not replace advice from a registered dietitian, physician, or other qualified clinician.
The summary view is meant to answer one practical question first: how many calories and grams does this plan imply each day? It surfaces basal metabolic rate (BMR), total daily energy expenditure (TDEE), the goal adjustment, target calories, and protein density so you can tell whether the plan looks plausible before worrying about fine detail.
Activity level usually drives the biggest difference between two otherwise similar entries. If you overstate movement, the calorie target inflates before macro percentages are even applied. When the number looks surprisingly high or low, the cleanest first check is the activity assumption, not an immediate switch to a more extreme macro split.
The built-in templates are planning presets, not clinical standards. Balanced keeps protein, carbohydrate, and fat relatively even, high protein shifts more energy toward protein while still leaving room for carbohydrate, lower carb leans more on fat, and endurance keeps the highest carbohydrate share for users who prefer that fueling style.
The protein-per-weight field changes the tool in an important way. Once you enter grams per kilogram or per pound, protein is fixed first and the remaining calories are redistributed between carbohydrate and fat according to the chosen base split. That is useful when you care more about holding a protein floor than preserving a tidy round-number ratio.
The meal suggestions section is deliberately lightweight. It divides calories and protein evenly across the selected number of meals, then pairs those slots with short tips such as breakfast, lunch, dinner, or post-workout. The optional seed exists so those labels stay repeatable for the same inputs, which helps when you want stable exports for notes or meal-prep documents.
The energy estimate starts with the Mifflin-St Jeor resting equation. Weight is converted to kilograms, height to centimeters, age is used in years, and sex at birth changes the constant term. That produces BMR, which is then multiplied by an activity factor to estimate TDEE.
The goal setting layer works directly from TDEE. Maintenance leaves calories unchanged, fat loss subtracts the selected percentage, recomposition subtracts 60 percent of that percentage, and muscle gain adds the full percentage. The tool clamps the selected change rate to a 0 to 25 percent range before applying it.
Macro allocation is then handled in two passes. First the page chooses a ratio from a preset or from a valid custom triplet. If a protein-per-weight value is present, protein calories are fixed first, capped at 50 percent of total calories, and the remaining calories are divided between carbohydrate and fat in proportion to the chosen base ratio. Finally, macro grams are derived with the usual 4 kcal per gram for protein and carbohydrate and 9 kcal per gram for fat.
The formulas below capture the parts of the tool that actually change the output. They explain why the same calorie target can lead to different gram totals when you switch goal, preset, protein floor, or meal count.
Here, f is the activity factor and ΔC_goal is the calorie adjustment implied by maintain, cut, recomp, or bulk.
| Setting | Package meaning | Multiplier or rule |
|---|---|---|
| Sedentary | Desk work or very low movement | 1.2 |
| Light | Lightly active, about 1 to 3 sessions each week | 1.375 |
| Moderate | Moderately active, about 3 to 5 sessions each week | 1.55 |
| High | Very active, about 6 to 7 sessions each week | 1.725 |
| Athlete | Double sessions or unusually high training load | 1.9 |
| Fat loss | Subtract the full chosen percentage from TDEE | −p% |
| Recomposition | Subtract 60 percent of the chosen percentage | −0.6p% |
| Muscle gain | Add the full chosen percentage to TDEE | +p% |
After calories are fixed, the page converts percentages into grams. When a protein floor is entered, it overrides the template for protein only, then rescales carbohydrate and fat around whatever base split you selected.
The calorie-to-gram conversion is fixed by nutrient energy density. Protein and carbohydrate use 4 kcal per gram, while fat uses 9 kcal per gram.
| Template | Protein | Carbohydrate | Fat |
|---|---|---|---|
| Balanced | 30% | 40% | 30% |
| High protein | 35% | 35% | 30% |
| Lower carb | 35% | 25% | 40% |
| Endurance | 25% | 50% | 25% |
| Rule | Package behavior | Why it matters |
|---|---|---|
| Age guardrail | 15 to 90 years only | Outside that range the page returns an error instead of estimating. |
| Height guardrail | 130 to 220 cm after unit conversion | This prevents obviously out-of-scope energy estimates. |
| Custom ratio | Three numeric parts whose total is approximately 100 | Incomplete or badly summed entries stop the calculation. |
| Meals per day | Clamped to 0 to 6 in logic, with 2 to 6 exposed in the form | Per-meal targets are equal divisions, not separate meal-specific calculations. |
| Random seed | Used only for repeatable meal labels and tips | It does not alter calories, ratios, or grams. |
30,40,30. The custom entry must total about 100.BMR is the quiet baseline estimate, TDEE is the activity-adjusted estimate, and target calories are the number you would actually plan around. Those three fields should make narrative sense together. If BMR looks reasonable but target calories do not, the issue is usually activity level or goal percentage rather than the macro split itself.
The macro table answers a different question from the summary markers. Its job is to translate calories into grams and, when meal count is present, into equal per-meal portions. Protein density is the more comparable field across body sizes because it normalizes protein against body weight instead of leaving you with a raw gram total alone.
| Output field | Boundary | Label used by the page |
|---|---|---|
| Goal calorie delta (%) | <= -5 | Deficit |
| Goal calorie delta (%) | > -5 and < 5 | Maintenance |
| Goal calorie delta (%) | >= 5 | Surplus |
| Protein density (g/kg) | < 1.6 | Low protein |
| Protein density (g/kg) | >= 1.6 and < 2.2 | Adequate protein |
| Protein density (g/kg) | >= 2.2 | High protein |
A point landing in an adequate or high protein band does not prove the whole plan is right for you. Those labels are package thresholds, not guarantees about recovery, body composition, or diet quality. The corrective check is simple: compare the target against two to four weeks of body-weight trend, gym performance, and hunger. If your outcome is moving opposite to the goal, revisit the energy side first.
A 32-year-old female at 70 kg and 170 cm with light activity and a maintenance goal produces a BMR of 1442 kcal and a TDEE of 1983 kcal. With the balanced template, the page returns about 148.7 g protein, 198.3 g carbohydrate, and 66.1 g fat.
If meals per day is set to 3, the equal-division output becomes about 49.6 g protein, 66.1 g carbohydrate, and 22.0 g fat per meal. The target map reads maintenance on the horizontal axis and about 2.12 g/kg protein on the vertical axis, which lands in the adequate protein band.
A 29-year-old male at 85 kg and 180 cm with moderate activity, a 10 percent surplus, and a protein target of 1.8 g/kg yields a TDEE of 2844 kcal and a target of 3128 kcal. Because protein is fixed first, the page keeps protein at 153 g, then redistributes the remaining calories across carbohydrate and fat according to the selected base split.
That produces about 338.7 g carbohydrate and 129.0 g fat with four equal meals, or roughly 38.3 g protein per meal. The useful lesson is that a protein floor can lower protein percentage while still keeping total protein high, because the calorie target is larger.
If you enter a custom value such as 35,35 or 35,35,20, the page stops and reports that the ratio must contain three percentages summing to 100. The correction is to enter all three parts and make sure the total is close enough to 100 for normalization, for example 35,40,25.
Start by checking the activity level. Because TDEE equals BMR multiplied by the selected factor, an optimistic activity choice can move the entire plan up before macro percentages are applied.
In this package, recomposition is a milder cut. The page subtracts 60 percent of the chosen deficit instead of the whole percentage, which keeps calories closer to maintenance than the fat-loss setting.
No. They are equal calorie and protein divisions with short reminder tips. Food choice, micronutrients, allergies, and schedule constraints are outside the model.
No server-side helper is present for this tool. The calculations, charts, and CSV, JSON, DOCX, PNG, JPEG, and WebP exports are generated in the browser session.
Children, pregnant users, people with active medical conditions, and anyone on a prescribed diet should use the result only as background context. Those cases need individualized assessment that this page does not attempt.