Macro Calculator

Split your daily calories into protein, carbs and fat for the diet style you choose.

Protein (g)
Carbs (g)
Fat (g)

How to calculate your macros

Macronutrients are protein, carbohydrates and fat, the three sources of calories in food. This calculator splits a daily calorie target into grams of each, based on the percentage split you choose. It is the starting point for most eating plans, whether for weight loss, muscle gain or maintenance.

The formula

Protein and carbs have about 4 calories per gram, fat has about 9. So grams = (calories x percent) / calories per gram. A common balanced split is 40% carbs, 30% protein, 30% fat.

Worked example

On 2,000 calories with a 40/30/30 split: that is 200 g of carbs, 150 g of protein and about 67 g of fat.

Frequently asked questions

What is a good macro split?

It depends on your goal. 40/30/30 (carbs/protein/fat) is a common balanced start; higher protein suits muscle gain or fat loss. Adjust to how you feel and perform.

How many calories per gram?

Protein and carbohydrates each have about 4 calories per gram, and fat has about 9. That is why fat targets look small in grams.

How many calories should I use?

Use your maintenance calories from the daily calorie calculator, then adjust up or down for your goal.

How much protein do I need?

A common target is around 1.6 to 2.2 g per kg of body weight when training, which most of these splits deliver.

Is keto right for me?

Keto works for some people but is restrictive. This tool only does the maths; talk to a professional for dietary advice.

Was this calculator helpful?

Related calculators

More Health calculators

Embed this calculator on your website (free)

Paste this into your page. It stays up to date and links back to us.

<iframe src="https://calculatorden.com/embed/macro-calculator/" width="100%" height="540" loading="lazy" style="border:1px solid #e5e7eb;border-radius:12px;max-width:480px" title="Macro Calculator - Calculator Den"></iframe>

More tools to embed on our embed a calculator page.