Why Don't My Macros Add Up to my Total Calories?

Short answer: there's not a 1-to-1 relationship between macros and calories

Generally speaking, protein, carbohydrate, and fat contain roughly 4, 4, and 9 kilocalories per gram, respectively. However, if you calculate your total daily Calories by multiplying your macro totals and summing them, you’ll likely find some degree of disagreement – the Calories calculated based on macronutrient intakes don’t perfectly match the Calories provided from food labels and database entries.

So, what gives?

This discrepancy is intentional, and is not an error or a bug within the app.

The general caloric values associated with each macronutrient (called the "Atwater General Factors") were established from a long line of research that you can read about in-depth here. However, the takeaway is pretty straightforward: various factors can influence the amount of energy you derive from different sources of protein, fat, and carbohydrates, but most sources of protein provide you with about 4kcal/g, most sources of carbohydrate provide you with about 4kcal/g, and most sources of fat provide you with about 9kcal/g. However, the energy derived from protein can vary between 1.82-4.36kcal/g, the energy derived from carbohydrate can vary between 1.33-4.16kcal/g, and the energy derived from fat can vary between 8.37-9.02kcal/g for different food sources of each nutrient – see Table 13 on page 25 here. These values (called "Atwater Specific Factors") are inherently more accurate for specific food sources of each macronutrient than the Atwater General Factors, because the general factors are only intended to be "close enough" approximations of the specific factors.

Ultimately, you shouldn't expect all sources of each macronutrient to provide you with the same amount of energy. The energy you derive from the macronutrients in a particular food will be influenced by digestibility, and the specific biochemical characteristics of the nutrients. For instance, gram for gram, sugar provides you with slightly more energy than starch, since a bit of net energy input is required to break the bonds between sugar molecules in a starch. Gram for gram, the energy content of protein will depend on the mass of the individual amino acids (heavier amino acids yield slightly less energy per gram, all else being equal, because less of the mass is convertible to energetic substrates), and where the amino acids can enter the Krebs Cycle. Finally, fatty acids with a longer carbon backbone and a higher degree of saturation yield slightly more energy per gram than shorter fatty acids with a higher degree of unsaturation.

Furthermore, fiber, sugar alcohols, and ethanol all contain energy, but aren't accounted for by the Atwater General Factors. Insoluble fiber is technically a carbohydrate, but it's essentially indigestible, yielding (basically) 0kcal/g. Soluble fiber can't be broken down by your own digestive enzymes, but it can be fermented by bacteria in your large intestine, yielding short-chain fatty acids that your body can absorb – various types of soluble fiber thus yield anywhere from 0.5-3kcal/g. Similarly, sugar alcohols (also technically carbohydrates) yield anywhere from 0kcal/g (for erythritol) to 3kcal/g (for hydrogenated starch hydrolysates). Finally, ethanol is digestible, yielding about 7kcal/g, but that energy would be unaccounted for if you just focused on macronutrients.

In short, the Atwater General Factors (4kcal/g for protein and carbohydrate, and 9kcal/g for fat) are known be to rough approximations and were only ever intended to be rough approximations. The actual energy content of a food can differ substantially from the values you'd predict by calculating the energy content based on the macronutrient composition of a food, multiplied by the Atwater General Factors.

MacroFactor's Calorie counts reflect the reported energy content of the foods and beverages you consume, rather than the Calorie count you'd calculate based on the macronutrient composition of a food. In general, this will result in more accurate calorie counts. Food manufacturers are provided with several options for calculating the energy content of the foods they sell. One allowable method is the 4-4-9 method (applying the Atwater General Factors to the macronutrient composition of the food), but all other allowable methods are simply going to provide more accurate calorie counts, by accounting for factors discussed above – the Atwater Specific Factors of the ingredients, the differing caloric contents of different fibers and sugar alcohols, etc. So, it might feel incongruent to see that your calorie intake and macronutrient intake don't "add up," but that incongruence is typically reflective of more accurate calorie counts, not less accurate calorie counts.

It’s worth noting that Calorie labels are given a margin for error in terms of their reporting to allow for rounding (most people would rather see that something contains 100 Calories per serving, instead of 97.2 or 101.4 Calories), and this is often pointed out by people suggesting that you should be calculating Calorie intake based on macros instead of labeled Calories. However, this logic doesn't hold up, because labeled macronutrient values of foods are also afforded the same tolerance. In other words, calculating the Calorie content from the macronutrient content would just propagate the errors associated with macronutrient rounding on nutrition labels. So, you wouldn't ultimately wind up with more accurate Calorie counts using this method – you'd just be substituting one source of rounding error (the error associated with rounding Calorie counts) for another source of rounding error (the error associated with rounding macronutrient counts).

Don’t get us wrong; it totally makes sense to set some rough macro guidelines based on your total Calorie allotment, which is why we do it in MacroFactor. Nutrition coaches and apps have become fond of providing macro targets because it’s a simple and concise way to convey nutritional objectives, and total daily intake of metabolizable energy will be fairly consistent as long as you’re getting close to your macro targets and your intakes of things like ethanol, sugar alcohols, and fiber are consistent. But, you shouldn't ultimately expect your macronutrient intake and Calorie intake to perfectly "match up."

So, Should You Aim for Your Macro Targets or Your Calorie Target?

The MacroFactor team generally prefers to aim for our daily Calorie and protein targets, while roughly achieving our desired ratio of carbs to fats. This approach is easy, practical, and most closely aligned with the core functionality of MacroFactor. However, if you prefer to aim for specific macro targets rather than Calories, that’s totally fine as well. If you go that route, you’ll just want to be very consistent with your daily sugar alcohol and fiber intake, and you might want to manually log alcohol as a Calorie-matched serving of pure carbohydrate (for example, instead of logging a 100-kilocalorie alcoholic beverage, you’d log 25 grams of pure carbohydrate, which would yield about 100 kilocalories).

We could give users the option to use macro-calculated Calories instead of labeled Calories, but that would merely serve to create an illusion of greater accuracy, instead of actually improving accuracy – as discussed above, doing so would tend to make Calorie counts less accurate. Plus, striving for impractical levels of tracking perfection is antithetical to our mission with MacroFactor. When possible, we wish to dissuade users from stressing over granular details and trading quality of life and peace of mind in exchange for a (perceived) trivial increase in accuracy. We want MacroFactor to be an app that supports and assists users on a rewarding journey that leads them toward achieving goals, rather than an app that pressures and restricts users on a stressful journey that leads them toward agonizing over immaterial details.

So, whether you prefer focusing on your Calorie target or your specific macro targets, we encourage users to pick a strategy that helps them achieve their goals with the least amount of stress. Also, whichever route you choose, you’ll want to make sure you’re getting fairly close to your protein target on a consistent basis, and consistently staying above your lower limit for fat intake. Most importantly, try to remember that no matter which method you use for quantifying Calories, some degree of inaccuracy is unavoidable. Stressing over perfection is discouraged, because there is truly no route that is free of estimation or rounding errors.

Did this answer your question?