Health

Macro Calculator

Turn a daily calorie figure into grams of protein, carbohydrate and fat, with fibre guidance and a per-meal split.

By Nitin Raturi · Last reviewed

Your plan

How to use this Macro Calculator

Turn a daily calorie figure into grams of protein, carbohydrate and fat, in a few steps.

  1. Choose whether to type your maintenance calories or have them estimated from your age, sex, height, weight and activity.
  2. Pick a goal: maintain, lose or gain. For loss or gain, choose a small change. Large requests are capped.
  3. Choose a macro split, or enter your own three percentages that add up to 100.
  4. Set how many meals to divide the day into.
  5. Read the daily grams, the fibre range and the per-meal split. Notes explain any cap or minimum that was applied.
  6. Copy the page address to keep or share your settings. Nothing you enter leaves your browser.

Good to know

  • Tap the ⓘ next to any field for a short guide to it.
  • The result is an estimate for general information, not medical advice.

Pick a calorie figure, a goal and a split. The calculation stays in your browser.

Where the calories come from

Where the calories come from

Macros are shares of your daily calories, so the calculator needs a calorie figure first. You can type one in, or let it estimate your maintenance calories.

How to fill it in

  • Choose "Type calories" if you already know your figure, for example from a dietitian or a food diary.
  • Choose "Estimate for me" to enter age, sex, height, weight and activity instead.

Example

For a 30-year-old man, 170 cm and 70 kg, with moderate activity, the estimate is about 2,507 kcal a day.

Keep in mind: An estimate is an average for people like you. Your own needs can differ noticeably.

Maintenance calories

The calories you eat on a typical day to stay at the same weight. The goal below then raises or lowers this figure.

How to fill it in

  • Enter a number from 800 to 8,000 kcal a day.
  • Enter your maintenance figure, not a diet target. Pick a goal separately.

Example

Typing 2,000 with the balanced split gives 100 g protein, 250 g carbohydrate and 67 g fat.

Keep in mind: Daily targets below 1,200 kcal are never shown. The tool raises them to that minimum and says so.

Goal

Goal

Whether to keep your calories at maintenance or move them a little below or above it.

How to fill it in

  • Maintain: the target equals your maintenance calories.
  • Lose: the target is lower. The change is capped at 20% or 750 kcal a day, whichever is smaller.
  • Gain: the target is higher. The change is capped at 15% or 500 kcal a day, whichever is smaller.

Example

With 2,000 kcal and a 15% reduction, the target is 1,700 kcal.

Keep in mind: This tool does not offer rapid or very-low-calorie targets. Talk to a health professional about weight change that is large or fast.

Macro split

Macro split

The share of your calories that comes from protein, carbohydrate and fat. The three shares always add up to 100%.

How to fill it in

  • Balanced: 20% protein, 50% carbohydrate, 30% fat.
  • Higher protein: 30% / 45% / 25%.
  • Higher carbohydrate: 15% / 60% / 25%.
  • Custom: choose your own three percentages.

Example

On 2,000 kcal, switching to higher protein moves protein from 100 g to 150 g.

Keep in mind: The presets sit inside the usual adult ranges. They are starting points, not prescriptions.

Meals per day

How many eating occasions to divide the day into. Snacks can count as meals.

How to fill it in

  • Enter a whole number from 1 to 6.
  • The day is split into equal parts. Real meals are rarely equal, so treat the split as a guide.

Example

With 4 meals, 2,000 kcal is 500 kcal and 25 g of protein per meal.

Assumptions: protein and carbohydrate have 4 kcal per gram and fat has 9 kcal. Meals are equal parts of the day.

Your daily targets

Eat about 2,000 kcal a day, split into the amounts below.

Maintenance 2,000 kcal; no change applied.

Protein

100 g a day

Share of calories
20%
Calories
400 kcal
Per meal
33 g

Carbohydrate

250 g a day

Share of calories
50%
Calories
1,000 kcal
Per meal
83 g

Fat

67 g a day

Share of calories
30%
Calories
600 kcal
Per meal
22 g
Fibre guidance
25 to 28 g a day
Each of 3 meals
about 667 kcal

Illustration based on your assumptions, not medical advice. Fibre guidance spans 14 g per 1,000 kcal and the WHO adult figure of 25 g a day.

How this calculator works

Macros are just your calories, shared out. 2,131 kcal a day on a balanced split is about 107 g of protein, 266 g of carbohydrate and 71 g of fat.

  1. Step 1Estimate maintenance2,507 kcalresting energy times an activity factor
  2. Step 2Apply your goal2,131 kcalmaintenance less 15%, within safety caps
  3. Step 3Share out the calories107 gprotein grams on a 20 / 50 / 30 split

Protein and carbohydrate each supply 4 kilocalories per gram, and fat supplies 9. Dividing the calories each macro should provide by those numbers gives grams.

What the result leaves out

  • Individual needsEnergy needs vary between people of the same age, size and activity.
  • Health conditionsMedical conditions, pregnancy, medicines and growth change nutrition needs. This page cannot account for them.
  • Food qualityGrams say nothing about what the food is. Whole foods, fibre and variety matter too.

Worked example

A 30-year-old man, 170 cm, 70 kg, moderately active, reducing by 15%
Resting energy (Mifflin-St Jeor, men)
BMR = 10 × kg + 6.25 × cm − 5 × age + 5
Maintenance
maintenance = BMR × activity factor
Grams
grams = target × share ÷ kcal per gram
  • kgbody weight 70
  • cmheight 170
  • factormoderate activity 1.55
  1. Resting energy700 + 1,062.5 − 150 + 51,618 kcal
  2. Maintenance caloriesresting energy × 1.552,507 kcal
  3. Daily targetmaintenance − 15%2,131 kcal
  4. Proteintarget × 20% ÷ 4107 g
  5. Carbohydratetarget × 50% ÷ 4266 g
  6. Fattarget × 30% ÷ 971 g

Figures are rounded for display. The calculation keeps full precision, so the three macros add back up to the target.

Reading your result

  • Balanced107 gprotein a day, with 266 g of carbohydrate.
  • Higher protein160 gprotein a day, with 240 g of carbohydrate.
Both use the same calories. Only the sharing-out changes.
  • Protein426 kcal
  • Carbohydrate1,066 kcal
  • Fat639 kcal
Calories from each macro in the worked example. Fat is the smallest in grams but not in calories.

Safety limits keep targets moderate. A reduction is capped at 20% of maintenance or 750 kcal, and an increase at 15% or 500 kcal, whichever is smaller. Targets are never shown below 1,200 kcal.

  • Capped changeAsking for 30% off 4,000 kcal gives 3,250 kcal, because the cut is held to 750 kcal.
  • Minimum intakeA target below 1,200 kcal is raised to it, with a warning.
  • Fibre range25 g to 28 g on 2,000 kcal.

Before and after the macros

Macros split a calorie target. The target itself, and how much protein you need, can be worked out on their own.

The BMR and TDEE calculator explains the calorie estimate in more detail, with a range. For protein alone, the protein intake calculator uses India’s ICMR-NIN 2020 guidance, including pregnancy and breastfeeding.

To track body composition as well as weight, try the body fat calculator.

Common mistakes

  • Mistake: Treating the grams as a prescription.

    Instead: Use them as a starting point and adjust with a registered dietitian or doctor if you have a health condition.

  • Mistake: Typing a diet target into the maintenance field.

    Instead: Enter maintenance calories, then choose a goal so the caps and minimum apply.

  • Mistake: Chasing a very low-carbohydrate or very low-fat split.

    Instead: Stay near the usual adult ranges unless a health professional advises otherwise.

This calculator is general information. It is not medical advice, and it does not diagnose or treat anything. Talk to a qualified healthcare professional about your situation.

Checking the method

A separate script recomputes every test case in exact fractions, two ways, and checks that protein, carbs and fat add back up to the target.

Read how we test our calculators, or browse more health calculators.

Frequently asked questions

How are the grams worked out?

Each macro gets a share of your daily calories. That share is divided by its energy per gram: 4 kcal for protein, 4 kcal for carbohydrate and 9 kcal for fat.

How are my calories estimated?

If you choose the estimate, the tool uses the Mifflin-St Jeor equation for resting energy and multiplies it by an activity factor. It is an average, so real needs can differ.

Why is my weight-loss or weight-gain request reduced?

To keep targets moderate, a reduction is limited to 20% of maintenance or 750 kcal a day, and an increase to 15% or 500 kcal, whichever is smaller. A note shows when a limit applied.

Why does it warn about a minimum intake?

The tool never shows a daily target below 1,200 kcal, or 1,500 kcal when the male equation is used. Eating less than you need should only be done with medical or dietitian supervision.

Which macro split should I choose?

The presets sit within the adult ranges published by the US National Academies: 10 to 35% protein, 45 to 65% carbohydrate and 20 to 35% fat. Which suits you depends on your health and food preferences, so ask a professional if unsure.

Why does a custom split have limits?

Shares must add up to 100%, and each is held to a moderate range so the tool does not produce extreme diets. Values outside the usual adult ranges are flagged.

Where does the fibre range come from?

Its two ends are 14 g per 1,000 kcal from the US Dietary Reference Intakes and the WHO figure of at least 25 g a day for adults.

Is this medical advice?

No. It is general information. Talk to a qualified healthcare professional about your situation.

Sources and methodology

The formulas are standard time-value-of-money results. We check every figure against golden values worked out independently, by closed form and by month-by-month simulation; see the methodology.

Written and maintained by Nitin Raturi, a software engineer (about the author). Last reviewed 22 Oct 2026; next review due by . Found an error? Tell us.

Changelog

  • : Initial release. The default 2,000 kcal balanced plan gives 100 g protein, 250 g carbohydrate and 67 g fat.