Tool · United Kingdom
Nutrition information calculator
A free nutrition label generator for Great Britain. Enter the nutrients per 100 g and the back-of-pack nutrition declaration comes out the way the retained Regulation (EU) No 1169/2011 asks for it: the order and units of Annex XV, the energy value calculated from the Annex XIV factors rather than converted, and an optional per-portion and %RI column. Everything is worked out in your browser — nothing is uploaded, and there is nothing to sign up for.
An empty box leaves a voluntary row out — that is what Article 30(2) means, and it is not the same as printing a zero. One of the mandatory seven left empty stays in the table and shows a dash, because a missing mandatory figure is a gap and not an omission. The energy row is never typed in: it is calculated from the nutrients above with the Annex XIV factors.
Nutrition information
What has to be in it
Seven entries, and no more than seven unless you add them on purpose. Article 30(1) of the retained Regulation (EU) No 1169/2011:
“The mandatory nutrition declaration shall include the following: (a) energy value; and (b) the amounts of fat, saturates, carbohydrate, sugars, protein and salt.”
Article 30(2) then lists what may be added: mono-unsaturates, polyunsaturates, polyols, starch, fibre, and vitamins or minerals present in significant amounts. Nothing else — the list is a permission, not an example.
The order and the units are not yours to choose
Annex XV is titled “Expression and presentation of nutrition declaration”, and it is a table, not a recommendation:
“The units of measurement to be used in the nutrition declaration for energy (kilojoules (kJ) and kilocalories (kcal)) and mass (grams (g), milligrams (mg) or micrograms (μg)) and the order of presentation of the information, as appropriate, shall be the following”
Then: energy, fat, of which saturates / mono-unsaturates / polyunsaturates, carbohydrate, of which sugars / polyols / starch, fibre, protein, salt, vitamins and minerals. Three things fall out of that order and catch people:
- Salt comes last, after protein — not after sugars, where a US panel puts sodium.
- Fibre sits between starch and protein, outside the carbohydrate block. It is not a “of which” row.
- Both energy units are mandatory. Not kJ with kcal in brackets as an optional extra, as in Australia, and not calories alone, as in the United States.
The energy value is calculated, not converted
This is the step most spreadsheets get wrong. Article 31(1) is one sentence long:
“The energy value shall be calculated using the conversion factors listed in Annex XIV.”
| Per gram of | kJ | kcal |
|---|---|---|
| carbohydrate (except polyols) | 17 | 4 |
| protein | 17 | 4 |
| fat | 37 | 9 |
| fibre | 8 | 2 |
| polyols | 10 | 2.4 |
| alcohol (ethanol) | 29 | 7 |
| organic acid | 13 | 3 |
| salatrims | 25 | 6 |
| erythritol | 0 | 0 |
Each column is calculated from its own factors. Multiplying the kcal figure by 4.184 does not give the kJ figure, because the pairs in the table are not in that ratio: fat is 37 : 9, which is 4.111, and carbohydrate is 17 : 4, which is 4.25. On a real food the two routes differ by a per cent or so — enough to put a different number on the pack. Our kJ to kcal page works through that difference.
Two traps inside the table itself, both of which the calculator above handles:
- Polyols are part of carbohydrate but not of its factor. Annex I point 7 defines carbohydrate as “any carbohydrate which is metabolised by humans, and includes polyols”, so they are inside the declared carbohydrate figure — but they carry 10 kJ per gram, not 17. The energy has to be worked out from carbohydrate minus polyols, plus the polyols at their own rate.
- Fibre counts towards the energy. 8 kJ and 2 kcal per gram, even though fibre is a voluntary row. Leaving it out of the energy sum because it is not declared understates the figure.
Per 100 g is mandatory, per portion is not
Article 32(2) is the base:
“The energy value and the amount of nutrients referred to in Article 30(1) to (5) shall be expressed per 100 g or per 100 ml.”
A portion column is allowed in addition — Article 33(1)(a) — and it comes with two conditions in the same sentence, which is the part people forget:
“… may be expressed per portion and/or per consumption unit, easily recognisable by the consumer, provided that the portion or the unit used is quantified on the label and that the number of portions or units contained in the package is stated”
And Article 33(4): “The portion or unit used shall be indicated in close proximity to the nutrition declaration.” Tick the portion column above and both statements appear under the table — they are part of the declaration, not a nicety.
Rounding: guidance, not the Regulation
Worth being plain about, because it is the one part of a nutrition declaration with no legal text behind it. The Regulation sets no rounding rule at all. The figures everyone uses come from section 6 of the European Commission’s guidance on tolerances of December 2012, and the GOV.UK technical guidance on nutrition labelling sends you there for exactly this purpose:
“Section 6 of the European Commission’s guidance document on setting tolerances for nutrient values declared on a label sets out rounding guidelines for nutrition declarations. These guidelines cover the amounts of nutrients that can be regarded as negligible and can therefore be declared as ‘0g’ or as ‘<x g’.”
The table that follows that sentence in the GOV.UK guidance, in full:
| Nutrient | Negligible amount | Nutrition declaration |
|---|---|---|
| Fat, Carbohydrate, Sugars, Protein | ≤ 0.5 g per 100 g or per 100 ml | “0g” or “<0.5g” |
| Saturates | ≤ 0.1 g per 100 g or per 100 ml | “0g” or “<0.1g” |
| Salt | ≤ 0.0125 g per 100 g or per 100 ml | “0g” or “<0.01g” |
The number of decimal places above the negligible threshold comes from the same section 6, and that is what the calculator applies:
| Row | ≥ 10 g | below that | negligible at |
|---|---|---|---|
| fat, carbohydrate, sugars, polyols, starch, fibre, protein | nearest 1 g | nearest 0.1 g | ≤ 0.5 g |
| saturates, mono-unsaturates, polyunsaturates | nearest 1 g | nearest 0.1 g | ≤ 0.1 g |
| salt | nearest 0.1 g at 1 g and above, nearest 0.01 g below | ≤ 0.0125 g | |
| energy | whole kJ and whole kcal | — | |
One limit of that table, stated here rather than glossed over: it is written “per 100 g or per 100 ml”, and it says nothing about a per-portion column. This page applies the same thresholds to both columns, which is what Foodlex does and what labels in the shops do — but it is an interpretation, not something the guidance decides.
⚖️ The guidance is a Commission document for enforcement authorities and does not bind in law. It is, however, the yardstick the tolerances are measured against — the document works its own tolerance ranges out from exactly this rounding — which is why Foodlex follows it. Article 34(5) offers a different route for a negligible amount: the row may be replaced by a statement such as “Contains negligible amounts of …” in close proximity to the declaration.
The %RI column and its footnote
Optional, and it never travels alone. Article 32(4) allows the percentages “in addition to the form of expression referred to in paragraph 2”, and Article 32(5) attaches the footnote:
“Where information is provided pursuant to paragraph 4, the following additional statement shall be indicated in close proximity to it: ‘Reference intake of an average adult (8 400 kJ/2 000 kcal)’.”
The reference intakes it divides by, from Annex XIII Part B:
| Energy or nutrient | Reference intake |
|---|---|
| Energy | 8 400 kJ / 2 000 kcal |
| Total fat | 70 g |
| Saturates | 20 g |
| Carbohydrate | 260 g |
| Sugars | 90 g |
| Protein | 50 g |
| Salt | 6 g |
There is no reference intake for fibre, polyols or starch, so those rows carry no percentage. The Regulation does not say how to round the percentage either; this page uses a whole per cent, which is what labels in the shops do.
Salt, not sodium — and it is a calculation
Annex I point 11 does not define salt as something you measure:
“‘salt’ means the salt equivalent content calculated using the formula: salt = sodium × 2,5”
So a laboratory report in milligrams of sodium becomes the salt figure by multiplying by 2.5 and dividing by 1,000. 124 mg of sodium is 0.31 g of salt — which is where the default in the calculator above comes from. A US or Australian label declares the sodium figure itself, in milligrams, and the two are never interchangeable.
Presentation: together, and in a table if it fits
Article 34(1) and (2) settle where the declaration goes and what shape it takes: all of it “in the same field of vision”, “presented together in a clear format”, and
“… presented, if space permits, in tabular format with the numbers aligned. Where space does not permit, the declaration shall appear in linear format.”
The table above is the tabular format with the numbers aligned. Linear is the fallback for a small pack, not a free choice — and the order of the rows does not change with it.
Where a UK label differs from a US one
| United Kingdom | United States | |
|---|---|---|
| Energy | kJ and kcal, both mandatory | Calories; kJ only as an addition |
| Reference | Per 100 g; per portion optional | Per serving, from a regulated reference amount |
| Sodium | Declared as salt, in g | Declared as sodium, in mg |
| Entries | 7 mandatory | 15 mandatory |
| Rounding | Guidance thresholds, no legal text | Increments written into 21 CFR 101.9(c) |
| Reference column | %RI, optional | % Daily Value, mandatory |
If you sell in both places, you need both labels. Our Nutrition Facts label maker builds the American one from the same figures.
From the per-100 g figures to a finished label
This page does the arithmetic and the layout. The two steps around it are the ones that take the time:
- Where the per-100 g numbers come from. Article 31(4) allows three sources — “the manufacturer’s analysis of the food”, “a calculation from the known or actual average values of the ingredients used”, or “a calculation from generally established and accepted data”. Foodlex takes the second and third routes from your recipe, with the water lost in cooking and the yield factored in.
- Everything else on the pack. Name of the food, ingredient list with the allergens emphasised, QUID percentages, net quantity, durability date, storage conditions, the food business operator’s name and address, and the minimum x-height of 1.2 mm from Article 13(2).
Frequently asked questions
What has to be in a UK nutrition declaration?
Seven entries: energy, fat, saturates, carbohydrate, sugars, protein and salt — Article 30(1). Annex XV sets the units and the order.
Do I work the energy value out, or convert it?
You work it out, from the nutrients, with the Annex XIV factors — Article 31(1). Each of the two energy figures comes from its own column of the table, so neither is the other multiplied by 4.184.
Per 100 g or per portion?
Per 100 g or 100 ml is mandatory. A portion column is allowed in addition, if the portion is quantified and the number of portions in the pack is stated.
How should the figures be rounded?
The Regulation does not say; the thresholds come from the Commission’s tolerance guidance of December 2012, which the GOV.UK technical guidance points to. Both tables are above.
Salt or sodium?
Salt, in grams, defined by Annex I point 11 as sodium × 2.5.
Is the %RI column compulsory?
No — but if you show it, the footnote “Reference intake of an average adult (8 400 kJ/2 000 kcal)” has to go with it.
Did any of this change when the UK left the EU?
Not the substance of the declaration. Regulation (EU) No 1169/2011 is retained law in Great Britain and Articles 30 to 34 still apply; the exit amendments change who may make further regulations, not what goes on the label. Northern Ireland follows the EU version. The wording quoted here is the Great Britain text on legislation.gov.uk.
Wording quoted from the primary sources on 21 October 2026: the retained Regulation (EU) No 1169/2011 as it applies in Great Britain, Articles 30–34 and Annexes I, XIII, XIV and XV, on legislation.gov.uk; and the GOV.UK technical guidance on nutrition labelling for the negligible-amount table. The rounding is guidance and not law, and is marked as such above. Whether a particular food needs a nutrition declaration at all — Article 16(4) and Annex V list the exemptions — and what else its label must carry depends on the food and is not decided here. This page is information, not legal advice; the responsibility for a label stays with the food business operator.