EU Reg. 1169/2011 makes the nutrition declaration, expressed per 100 g or 100 ml of product, mandatory on most prepacked food products. It is one of the most technical aspects of the label to calculate correctly, because it requires working on the real composition of the recipe, not on values "borrowed" from similar products. For the general picture of the label you can start from the article on EU Reg. 1169/2011.
What it must contain
The mandatory nutrition declaration (the so-called "Big 7") includes, in the order set by the regulation (Art. 30 and Annex XV):
- Energy value, expressed in kJ and kcal.
- Fat, of which saturates.
- Carbohydrate, of which sugars.
- Protein.
- Salt.
That is seven values in five lines: energy, fat (of which saturates), carbohydrate (of which sugars), protein and salt. Other nutrients can be added voluntarily (for example fibre, vitamins and minerals; the latter only if present in a significant amount), but the seven values above are the minimum required on most packaged products.
When it is not mandatory
The obligation has exemptions, listed in Annex V of the Regulation. Among those that matter most to a small workshop:
- unprocessed foods that comprise a single ingredient or a single category of ingredients;
- foods in packaging or containers the largest surface of which has an area of less than 25 cm²;
- foods, including handcrafted ones, supplied directly by the manufacturer in small quantities to the final consumer or to local retail establishments supplying directly to the final consumer.
How these exemptions apply to your case, in particular what is meant by "small quantities" in your country, must be checked with your consultant or with the competent authority: this article is indicative and does not replace professional advice. Even when the table is not mandatory, many producers include it anyway because customers ask for it.
How to calculate it: the right method
The Regulation (Art. 31) provides that the declared values must be average values, obtained from the manufacturer's analysis of the food, or calculated from the known or actual average values of the ingredients used, or calculated from generally established and accepted data; the energy value is calculated with the conversion factors of Annex XIV. Calculating from the recipe is therefore a method the Regulation provides for, provided reliable data is used. The reliable way is to start from the real recipe, not from generic tables for the finished product:
- Add up the nutritional values of each ingredient, in proportion to the quantity used in the recipe, using reliable analytical data (recognised food composition tables, or laboratory analyses for compound/proprietary ingredients).
- Take cooking weight loss into account. For baked goods, as an approximation, the energy value and the nutrients do not change in absolute terms with cooking (apart from marginal losses for some heat-sensitive vitamins), but the weight of the product does — so the value per 100 g of finished product goes up compared with the calculation on the raw weight, because the same amount of nutrients is concentrated in fewer grams. This does not hold for every process: in frying the product absorbs oil, and in cooking with loss of fat or liquids (like many meats) or in boiling with loss of salts and sugars the nutrients change, and you need specific data on the cooked product or analyses.
- Bring the total back to 100 g of finished product (that is, as you sell it): (total nutrient value ÷ weight of finished product in grams) × 100.
The reference weight is that of the food as sold (Art. 31, paragraph 3): for a baked product sold already baked it is the finished product. The value may refer to the food after preparation only if sufficiently detailed preparation instructions are given.
The step most often forgotten is exactly the second one: calculating the nutritional values on the raw weight instead of the cooked weight leads to a systematic understatement of the energy and nutrients of the finished product — the same conceptual mistake made when ignoring weight loss in the food cost calculation.
A simplified example
If a raw dough of 920 g contains, in total, 2,500 kcal (weighted sum of the ingredients), the value per 100 g depends on the reference weight:
| Weight | kcal per 100 g | |
|---|---|---|
| On the raw weight | 920 g | 2,500 ÷ 920 × 100 = 271.7 kcal |
| On the cooked weight (correct) | 800 g | 2,500 ÷ 800 × 100 = 312.5 kcal |
The difference — about 15% in this example — is not a detail: a wrongly declared energy value is incorrect information, which can lead to complaints and weighs on the trust of those who read the label for health or diet reasons.
Tolerances and rounding
The declared values must fall within reasonable tolerances of the real value of the product (the European Commission guidance on tolerances, an indicative and non-binding document, gives different ranges by type of nutrient). This means that the theoretical calculation should, when possible, be checked with periodic laboratory analyses on samples, especially for products with complex or highly variable recipes. The Regulation does not set rounding rules: guidance on this can be found in the same Commission guidelines, to be consulted in their updated version.
The most common mistakes
- Copying the values from a "similar" product instead of calculating them on the specific recipe — two apparently similar recipes can have different compositions.
- Ignoring weight loss, as seen above: a systematic understatement of the values per 100 g.
- Not updating the declaration when the recipe changes or when the supplier of an ingredient with a different composition changes (e.g. a cheese with a different fat content).
- Incorrect rounding, or rounding not consistent with the Commission guidelines, which can make the table look imprecise even when the underlying calculation is right.
How KoreLab solves these problems
The most common mistakes in the nutrition declaration almost always come from a calculation done separately, on a spreadsheet, starting from data that does not refer to the real product. Here is how KoreLab tackles each one.
1. Values copied from a "similar" product
What KoreLab does
The technical sheet calculates the values per 100 g starting from the real recipe and from the nutritional data of the individual ingredients. If an ingredient is missing its values, the sheet flags it: it names the raw material with incomplete data, warns that those values would be counted as zero (and the result would be lower than the true one) and gives you the button to add them. You will find the same logic in the article on the food product technical sheet.
Why it does it
Two apparently similar recipes can have different compositions, and a copied table looks complete without describing your product. An explicit warning about what is missing is safer than a plausible but wrong number.
What it solves
The table reflects what you really produce, and you know in advance whether there is a data point to fix before handing over the sheet or the label.
2. Ignored weight loss
What KoreLab does
KoreLab uses the weight loss of the bill of materials linked to the product and brings the nutritional values back to the mass of the finished product, which for a product sold cooked is the reference weight of the declaration per 100 g.
Why it does it
When cooking, the nutrients stay the same but the weight goes down: calculating on the raw weight dilutes the values and understates them. That is why the reference weight must be that of the food as sold (Art. 31 of EU Reg. 1169/2011), which for a baked product sold cooked is the finished product.
What it solves
You do not have to remember to correct the calculation for cooking: the calculation basis is that of the finished product, and the systematic understatement of the example above does not occur. The weight loss value remains the one you set in the bill of materials.

3. Declaration not updated after a recipe change
What KoreLab does
The table is calculated from the recipe, it is not a separate document: if you change an ingredient or the quantities, the values are recalculated on screen. A technical sheet already issued does not change silently: KoreLab flags it as "to be updated" and you confirm the new revision yourself. From the Pro plan, recipe versions let you see what changed.
Why it does it
A declaration written once and filed away falls behind as soon as the recipe moves. Calculating it from the source and flagging when the issued sheet has fallen behind reduces the risk of forgetting to redo it.
What it solves
You know when the declaration has fallen behind the product leaving the workshop, for example after a recipe change, and you realign it with a new revision.

4. Different numbers in different documents
What KoreLab does
Ingredient percentages and nutritional values use the same basis, the weight of the finished product, both on screen and in the PDF and on the label.
Why it does it
When two parts of the same document refer to different weight bases, the numbers do not add up with each other, even if each one is correct on its own.
What it solves
Sheet, PDF and label say the same thing about the same product.

KoreLab calculates the declaration from the recipe, but it does not replace laboratory analyses: for products with complex recipes or proprietary ingredients, periodic spot checks remain useful. For details on the calculation you can see the page on nutritional values and the product technical sheet.
You can try it for free on your first products: create a free account.
In short
The nutrition declaration per 100 g must be calculated on the real composition of the recipe and brought back to the weight of the food as sold (for a baked product sold cooked, the finished product), not to the raw weight — ignoring weight loss is the most frequent mistake and leads to understating energy and nutrients. There are exemptions from the obligation, to be checked for your case. Deriving it from the same recipe that manages the rest of production helps keep it aligned with the real product. Weight loss matters for cost too, as we explain in the article on weight loss and yield.