Kaunto

· By Kaunto

Why Label Calories Can Be 20 % Off, and What to Do About It

US and EU rules let a nutrition label differ from the food inside by up to 20 %. Here is what the law allows, how rounding adds to it, and how to log so it does not matter.

A nutrition label is a legal declaration with a built-in margin, not a measurement of the packet in your hand. In the United States, the calories, fat, sugars and sodium in a food may be up to 20 % higher than the label states and still comply; in the European Union, guidance tolerances of roughly ±20 % apply to fat, carbohydrate, sugars and protein at typical levels. Add the rounding rules (US labels round calories to the nearest 5 or 10) and a single serving can plausibly carry 10–25 % more energy than printed. This does not make counting pointless. It means the label is an estimate, like every other number in a food log, and the fix is consistency rather than precision.

What the rules actually allow

JurisdictionNutrientPermitted deviation from the label
US (FDA, 21 CFR 101.9)Calories, total fat, saturated fat, cholesterol, sodium, total sugarsActual may be up to 120 % of the declared value
US (FDA)Vitamins, minerals, protein, fibreActual must be at least 80 % of the declared value
EU (2012 guidance on tolerances)Fat, carbohydrate, sugars, protein, 10–40 g per 100 g±20 %
EUThe same, below 10 g per 100 g±2 g (fat ±1.5 g)
EUThe same, above 40 g per 100 g±8 g (fat ±8 g, sugars/carbs/protein ±8 g)
EUSalt±0.375 g below 1.25 g per 100 g, otherwise ±20 %

The asymmetry in the US rule is deliberate: the regulator cares that you get at least the protein promised and at most the calories promised. In practice, manufacturers who want to avoid enforcement declare a number their product will stay under, which is why independent lab tests of packaged foods tend to find calories slightly above the label more often than below.

Rounding adds another layer

US labels must round calories to the nearest 5 kcal under 50 and to the nearest 10 kcal above; anything under 5 kcal may be printed as 0. Fat rounds to the nearest 0.5 g under 5 g and the nearest gram above; anything under 0.5 g may be labelled 0 g. So:

  • A spray oil labelled “0 calories per serving” can be 4 kcal per spray, and its serving is a quarter-second spray. Used for a pan, it is 30–50 kcal.
  • A snack labelled 100 kcal may be 104 by the manufacturer’s own analysis before rounding, and 125 within the legal tolerance.
  • “0 g trans fat” means under 0.5 g per serving.

Rounding is per serving, so a product with many small servings in a packet compounds it. The way around it is to log by weight against a per-100 g figure, which most labels also print in the EU and which sidesteps the per-serving rounding entirely.

Serving sizes are the bigger problem

The tolerance is 20 %; a serving size is often 50–100 % away from what people actually eat. US serving sizes are set by regulation (the Reference Amounts Customarily Consumed) and were updated in 2016 to reflect larger portions, but a “serving” of ice cream is still two-thirds of a cup and a “serving” of breakfast cereal is 30–60 g depending on the cereal, which is often half a normal bowl. Weighing the portion fixes this completely; guessing that you had “one serving” does not.

Why calories from macros do not always add up

Most labels compute energy from the macros with the Atwater factors: 4 kcal per gram of protein and carbohydrate, 9 per gram of fat. But the EU counts fibre at 2 kcal/g and polyols at 2.4, the US may or may not subtract insoluble fibre, alcohol is 7 kcal/g, and organic acids are 3. So the label’s calories may not equal 4P + 4C + 9F, and an app that recalculates from the macros will show a slightly different number from one that copies the label. For most foods the gap is under 5 %; for high-fibre or sugar-alcohol products it can be 10–15 %.

What to do about it

  1. Log by weight, per 100 g, wherever possible. It removes serving-size error and per-serving rounding at once. This is the form the foods reference uses for every entry.
  2. Prefer reference data for whole foods. Oats, rice, eggs and chicken are measured in a lab; the label on a bag of rice is not more accurate than USDA’s analysis of rice.
  3. Assume calorie-dense packaged foods run high. If a bar says 200 kcal, treating it as 220 is closer to the legal reality than treating it as 200. You do not have to adjust every entry; just do not be surprised when the maths and the scale disagree by a few percent.
  4. Judge the log by the trend, not the total. If your weekly average intake is 2,000 kcal by the log and your weight is holding, then 2,000 logged calories is your maintenance, whatever the true figure is. The label error is baked into the calibration. Change intake by 100–200 kcal at a time and watch the trend line.
  5. Be exact where it pays. Oils, nuts, nut butters, cheese and dressings carry the most calories per gram of estimation error; olive oil is 119 kcal per tablespoon and a “tablespoon” poured freehand is often two. Weigh those. A tomato can be eyeballed.

Frequently asked questions

Are nutrition labels accurate? They are accurate to within the legal tolerance, which is about 20 % for calories and macronutrients in both the US and the EU, plus rounding. Independent tests find most products within 10 % of the label, with calorie-dense and small-serving products more likely to run high.

Can a food have more calories than the label says? Yes. In the US a product can legally contain up to 20 % more calories than declared. Below the declared value is also allowed. Manufacturers lean toward declaring a figure the product stays under, so “slightly more than the label” is the common case.

Why do calories on a label not match the protein, carbs and fat? Because the label may use fibre-adjusted or food-specific energy factors, and each macro is rounded separately before printing. A difference of a few percent between the printed calories and 4P + 4C + 9F is normal.

Does the 20 % tolerance mean calorie counting does not work? No. Errors of this kind are systematic for any food you eat regularly, so they are absorbed into what your log shows as maintenance. Counting works because you adjust intake based on what the scale does over weeks, not because any single entry is exact. See how accurate calorie counting really is.

Is per-100 g or per-serving logging more accurate? Per 100 g, by weight. It avoids the serving-size assumption and the per-serving rounding, and it is how reference databases and this site’s foods pages present every value.

Next: how food databases work, or find your own numbers with the macro calculator.