Calorie Density: What the Number Per Gram Tells You
Calorie density is kcal per gram, not per serving. Learn how Atwater factors, label rounding, and water content change the figure, and what that means for fullness.
Calorie density is the energy in a food divided by its weight, usually expressed as kilocalories per gram (kcal/g). It is a derived figure, not a measured one. The numerator comes from a laboratory or a database; the denominator comes from a scale. Both carry error, and the ratio inherits it. This page sets out where the numbers come from, how to recover a figure a label has rounded away, and what the controlled trials on calorie density and satiety actually found.
Where the calories come from
Most food energy figures trace back to Atwater factors, published by Wilbur Atwater in the late 19th and early 20th centuries. The general factors are 4 kcal/g for protein, 9 kcal/g for fat, 4 kcal/g for carbohydrate, and 7 kcal/g for alcohol. These are averages across many foods. The specific factors for a given food can differ: the Atwater specific factor for almonds is around 5.5 kcal/g for fat, not 9, because the cell wall limits absorption. A label using general factors will overstate the energy from nuts, seeds, and some whole grains.
A label also carries a tolerance. In the United States, the Food and Drug Administration allows a food to be off by up to 20% from the declared value for most nutrients, including calories. In the European Union, the tolerance for energy is typically ±20% for foods other than supplements. So a 200 kcal serving may be 160 or 240 kcal and still comply.
Rounding is a separate issue. A product with fewer than 5 kcal per serving may be declared as zero. A product with fewer than 0.5 g of fat per serving may be declared as zero fat. This is why a spray oil can print “0 calories” while the oil itself is about 9 kcal/g. The arithmetic to recover the real figure is simple: multiply the per-gram value by the actual grams used.
The table: what changes the figure
| Condition | Effect on kcal/g | Example |
|---|---|---|
| Water content | Dilutes energy; more water means fewer kcal/g | Lettuce ~0.15 kcal/g; olive oil ~8.8 kcal/g |
| Atwater factor used | General vs. specific changes the numerator | Almonds: 6.0 kcal/g by general factors, ~5.5 by specific |
| Label rounding | Values under 5 kcal/serving may print as 0 | Spray oil: 0.25 g oil = ~2 kcal, printed as 0 |
| Cooking method | Removes or adds water and fat | Raw chicken breast ~1.2 kcal/g; roasted with oil ~1.8 kcal/g |
| Serving size declared | Changes the per-serving figure, not per gram | Cereal: 30 g vs. 55 g serving |
| Database version | Updated values change the denominator | USDA FoodData Central releases differ year to year |
Satiety: the evidence and its limits
The satiety index, published by Holt and colleagues in 1995, ranked 38 foods by how full they made people feel over two hours relative to white bread. Boiled potatoes scored highest, around 323% of white bread; croissants scored lowest, around 47%. The study had 11 to 13 participants per food. That is a small sample. The rankings are useful as a demonstration that equal-calorie foods do not produce equal fullness, but the exact percentages should not be treated as stable constants.
A more recent line of work is the controlled feeding trial by Hall and colleagues, published in Cell Metabolism in 2019. Sixteen participants lived in a metabolic ward for four weeks and received either an ultra-processed or an unprocessed diet, matched for calories, sugar, fat, fiber, and macronutrients. On the ultra-processed diet, participants ate about 500 kcal per day more and gained about 0.9 kg over two weeks; on the unprocessed diet, they lost about 0.9 kg. The trial was small and short, and the diets differed in more than processing level. It does not show that ultra-processed food is uniquely harmful. It shows that when the diet is matched on paper, people eat more of the ultra-processed version.
Calorie density is one mechanism among several. Water and fiber add weight and volume without adding much energy, so they lower kcal/g. A food with a low kcal/g can be eaten in larger volume for the same energy, which may increase fullness through gastric distension and slower gastric emptying. Protein has a separate effect on satiety, but the size of that effect varies by individual and by the rest of the diet.
Worked calculation: recovering the real figure
A label declares 0 kcal for a one-second spray of oil. The spray delivers about 0.25 g of oil. Oil is about 9 kcal/g. The real figure is 2.25 kcal per spray. If a person uses 10 sprays, that is 22.5 kcal, not zero.
Step 1: Identify the declared value and the actual amount used.
Declared: 0 kcal per spray
Actual oil per spray: 0.25 g
Step 2: Find the energy density of the food.
Oil: 9 kcal/g (Atwater general factor for fat)
Step 3: Multiply.
0.25 g × 9 kcal/g = 2.25 kcal per spray
Step 4: Scale to the amount used.
10 sprays × 2.25 kcal = 22.5 kcal
Step 5: Compare to the label.
Label says 0 kcal. Real figure is 22.5 kcal for 10 sprays.
A second calculation: a cereal label declares 120 kcal per 30 g serving. The package is 340 g. The declared calorie density is 120 ÷ 30 = 4.0 kcal/g. If the actual serving eaten is 55 g, the energy is 55 × 4.0 = 220 kcal. The label is not wrong; the serving size is a convention, not a recommendation.
What people get wrong
The common mistake is to read a calorie density figure as a property of the food alone. It is not. It depends on the water content at the time of weighing, the Atwater factor chosen, the rounding rules applied, and the database version. A boiled potato and a fried potato are the same food by name and different foods by kcal/g.
A second mistake is to treat low calorie density as a guarantee of fullness. Volume helps, but protein, fiber type, and individual variation matter. A large salad with no protein may be less satisfying than a smaller portion of yogurt and fruit. The satiety index is a population average from a small sample; it does not predict any one person’s response.
A third mistake is to distrust all labels. The better response is to weigh. A kitchen scale costs little and removes the rounding error from the denominator. If a label says 0 kcal for a spray, weigh the oil once and do the multiplication. If a label says 120 kcal per 30 g, weigh the actual portion. The arithmetic is not difficult; it is just not done by the label for you.
What to do differently
Use calorie density as a screening tool, not a verdict. Foods below about 1.5 kcal/g tend to be water-rich and can be eaten in larger volume. Foods above about 4 kcal/g tend to be dry and energy-dense. The threshold is a rule of thumb, not a published cutoff.
Weigh the foods that are easy to misjudge: oils, nut butters, cheese, cereal, and anything eaten straight from a package. For everything else, the label’s tolerance and the database’s version are small enough that the effort may not change the total.
If a deficit feels intolerable, the first thing to check is not willpower but the kcal/g of the foods making up most of the plate. A diet built on low-calorie-density foods can be eaten in larger volume for the same energy. That is the practical use of the figure.
This page is for information only and is not medical advice. If you are working out an intake plan for a clinical condition, or if you have or suspect an eating disorder, speak to a qualified clinician. In the United States, the National Eating Disorders Association helpline is 1-800-931-2237. In the United Kingdom, Beat’s helpline is 0808 801 0677. In Australia, the Butterfly Foundation helpline is 1800 33 4673.
Common questions
What is calorie density?
Calorie density is the energy in a food divided by its weight, usually in kcal per gram. It is calculated from a calorie figure, which comes from Atwater factors or a database, and a weight, which comes from a scale. Water content is the largest single influence: lettuce is about 0.15 kcal/g, olive oil about 8.8 kcal/g.
Why does a label say 0 calories when there are calories?
In the United States, a food with fewer than 5 kcal per serving may be declared as zero. A spray oil delivering 0.25 g of oil per spray contains about 2.25 kcal, but the label can print 0. The arithmetic to recover the figure is to multiply the grams of oil by 9 kcal/g.
Do low calorie density foods make you fuller?
They can, because water and fiber add volume without adding much energy. The satiety index, published in 1995, found boiled potatoes ranked highest among 38 foods, but the study had only 11 to 13 participants per food. The effect is real on average but varies between people.
Does ultra-processed food cause weight gain?
A 2019 metabolic ward trial by Hall and colleagues found that participants ate about 500 kcal per day more on an ultra-processed diet matched for calories and macronutrients, and gained about 0.9 kg over two weeks. The trial was small and short, so it shows an association under controlled conditions, not a universal rule.
Should I weigh my food or trust the label?
Weigh the foods that are easy to misjudge: oils, nut butters, cheese, and cereal. Labels carry a tolerance of up to 20% in the United States and European Union, and serving sizes are conventions. For most other foods, the error is small enough that weighing may not change the total.
Read next
- How Low Can Carbohydrate or Fat Go: A Reference Low carb vs low fat: controlled trials show small differences when calories and protein match. Here are the arithmetic floors for fat and carbohydrate.
- Are Calorie Labels Accurate? Food Data and Tolerance Calorie labels use Atwater factors, not bomb calorimetry. Learn the permitted tolerance, rounding rules, and how to recover the real figure from a label.
- Cooked vs Raw Weight: Why the Number Changes Cooked vs raw weight changes the calorie count you look up. Learn the conversions for rice, chicken, and pasta, and one rule for everything else.
- BMR: What the Equations Actually Estimate Basal metabolic rate is the energy cost of staying alive. Mifflin-St Jeor, Harris-Benedict and Katch-McArdle give different numbers; here is the spread.
- How Wrong Is Your Calorie Count? Error Sources and Ranges Calorie counting accuracy depends on label error, database variance, portion estimation, and cooking. This page stacks those errors and shows the real range.