For every value on the label: per-100g value × grams eaten ÷ 100. If a food has 240 calories per 100g and you eat 65g, the portion has about 156 calories.
The multiplier is simply your portion as a fraction of 100 grams. A 30g portion uses 0.30. A 125g portion uses 1.25. Apply that same multiplier to calories, protein, carbohydrate, fat, fibre, or sodium when each value uses the same per-100g basis.
The nutrition per 100g calculator does this for calories and the three usual macros while keeping the label basis visible. If you are comparing two foods rather than scaling one portion, the calorie density calculator puts both on an equal-weight basis.
If a tracker entry looks wrong
Do not average the package label with the app entry. First make both numbers describe the same thing: per serving, per 100g, per package, raw, cooked, drained, dry, or prepared. Most bad calorie logs come from that mismatch, not from the multiplication itself.
| Number in front of you | What to check first | Best Mori shortcut |
|---|---|---|
| US Nutrition Facts serving | The calories and nutrients describe the listed serving size. If you ate more or less, scale the serving. | Serving size calculator |
| UK or EU per-100g label | Use the per-100g column for equal-weight comparison, then multiply by the grams eaten. | Nutrition per 100g calculator |
| Food database entry | Check whether it is branded, generic, raw, cooked, drained, dry, or a recipe copied from another meal. | Food database entry checker |
| Calorie target | Use calories per 100g to find how many grams contain a target like 100 Calories. | 100 calories to grams calculator |
If the package and app still disagree after that, keep the source you can explain later. For a branded food, use the current package. For a generic food, match the state of the food and the edible portion as closely as you can.
Worked example: a 65g portion
Suppose a label lists 240 calories, 12g protein, 30g carbohydrate, and 8g fat per 100g. Your portion is 65g, so the multiplier is 65 ÷ 100 = 0.65.
- Calories: 240 × 0.65 = 156
- Protein: 12 × 0.65 = 7.8g
- Carbohydrate: 30 × 0.65 = 19.5g
- Fat: 8 × 0.65 = 5.2g
Keep the original label calories as the calorie source. Do not replace them with a fresh 4/4/9 calculation unless you are deliberately investigating why the label and macro math differ. Rounding, fibre, sugar alcohols, organic acids, and alcohol can all affect that comparison. For a product that makes a net-carb claim, scale the full label portion first and then use the net carb calculator.
More examples using the same multiplier
The formula does not change when the portion is tiny, large, or awkward. The only thing that changes is the multiplier.
| Label value | Amount eaten | Multiplier | Result |
|---|---|---|---|
| 380 Calories per 100g cereal | 40g | 0.40 | 152 Calories |
| 22g protein per 100g yogurt | 170g | 1.70 | 37.4g protein |
| 18g carbs per 100g cooked beans | 125g | 1.25 | 22.5g carbs |
| 9g fat per 100g sauce | 35g | 0.35 | 3.2g fat |
If you need the full set of calories, protein, carbohydrate, and fat at once, use the nutrition per 100g calculator. If the value starts in kilojoules, convert kJ to Calories before you apply the portion multiplier.
First identify what the numbers describe
Label formats vary by market. UK guidance requires the covered nutrition declaration in per-100g or per-100ml units. In the United States, the FDA says Nutrition Facts values are usually based on one labeled serving, with the metric amount shown beside the household measure.
Energy units vary the same way. UK, EU, and Australian panels usually print kilojoules, often beside a kcal figure. Convert the energy column before you scale it, then scale the converted value by the same multiplier as the macros. The kJ to Calories calculator does both steps together, and the kilojoules to Calories guide explains the rounding you will see on the package.
That difference matters. If a US label says "serving size 55g" and lists 230 calories, those 230 calories already describe 55g. Do not treat them as a per-100g value. If a UK label has both "per 100g" and "per portion" columns, choose one column and stay with it from start to finish.
A serving size is also not a command. The FDA describes it as an amount people typically consume, not a recommendation. Your calculation should use the amount you actually ate.
When the number comes from a tracker entry
A calorie tracker entry can be useful and still be the wrong basis for your plate. Before using it, ask what the entry describes: the packaged serving, 100g, one cup, the cooked food, the dry food, a drained portion, or a recipe someone else built.
If the app entry gives one serving and the label gives per 100g, convert both to the same basis before comparing. If the app entry gives calories for cooked rice but your package gives dry rice, do not average the two. Use the raw to cooked weight calculator or the raw versus cooked guide first.
When several app entries look close, choose the one you can explain later. A branded product should match the current package. A generic food should match the food state and edible portion. A homemade meal should come from its ingredients or from a saved recipe, not from a similar restaurant dish with a convenient number.
What to check when the answer looks wrong
Start with the basis. If the result is almost twice what you expected, you may have used a full-package value as if it were per 100g, or a per-serving value as if it were per 100g. If the result is far too small, the label may have used a tiny serving or you may have entered the package weight instead of the amount eaten.
Next, check the state of the food. Dry pasta, cooked pasta, raw chicken, cooked chicken, drained beans, and beans with liquid are not interchangeable. Per-100g math scales whatever number you give it. It cannot decide whether the source number matches the plate.
Finally, check units. A per-100ml drink or sauce should be scaled by millilitres unless the label also gives grams. A tablespoon is a volume measure, not a fixed weight across every food. If the food is thick, oily, powdered, or sticky, weigh it when the number matters.
Checklist before you log the result
- Confirm the label column says per 100g, not per serving or per pack.
- Use the food weight you actually ate, without the plate, wrapper, liquid you discarded, or leftovers you saved.
- Check whether the food was weighed raw, cooked, drained, dry, or prepared.
- Scale calories and each macro with the same multiplier.
- Add oil, sauce, dressing, toppings, or drinks as separate lines when they are not part of the label value.
This checklist is short on purpose. Most bad logs come from a basis mismatch, not from difficult arithmetic.
If the food is only a small part of the day, a rounded result is fine. If it is a staple you eat often, keep the package or source note with the saved entry. That one careful check can clean up dozens of future logs and keeps your history easier to audit later.
What to write in Mori after calculating it
Include the basis in the meal note so the entry stays understandable. A useful description can be simple: "65g cereal, label says 380 Calories and 9g protein per 100g" or "170g yogurt, nutrition copied from per-100g label."
If you later discover that the label was per serving instead of per 100g, edit the entry. Do the same if the food was weighed cooked against a raw label, or if oil, sauce, or a topping was missing. The goal is not to make the first estimate look perfect. It is to keep enough context that a better number can replace it without losing the meal.
For meals you repeat, save the checked version. Repeating a verified entry is faster than searching a food database every morning and safer than trusting the first similar result forever. If the product label changes, update the saved entry and keep the older meal history as it was.
Four mistakes that change the answer
- Mixing label columns. Calories per serving beside protein per 100g creates a result with no consistent basis.
- Using package weight as portion weight. Weigh what you ate, or subtract the amount left from the starting amount.
- Crossing grams and millilitres. Per-100ml values need a volume in millilitres. A gram-to-millilitre conversion needs the food's density.
- Ignoring prepared versus unprepared values. Dry pasta, cooked pasta, and a prepared-with-milk product can have different bases. Match the condition named on the label.
If your scaled calories still do not match the scaled macros, read why macros do not always reconstruct label calories. If your label lists nutrition for one serving rather than per 100g, use the serving-size guide and serving size calculator.
See the FDA's serving size guidance, the current GOV.UK packaging and labelling guidance, the NHS guide to reading food labels, and EU Regulation 1169/2011. Label rules and formats depend on the market and product.