How to calculate calories in a homemade dish

Add up the calories and macros of the raw ingredients that went into the dish and divide by the weight of the finished dish. Below is the whole calculation for a chicken pilaf with numbers at every step, plus the mistakes that throw the result off by a third or more.

Formula

Nutrition per 100 g = nutrition of all ingredients ÷ cooked dish weight × 100

Why you divide by the cooked weight

Cooking barely adds or removes calories. What changes is the water. Rice, pasta and lentils soak it up and get two to four times heavier, while meat loses juices and gets lighter. The calories stay the same, they are just spread over a different weight.

What 100 g of food weighs after cooking

Original 100 g. Grains and pasta boiled, chicken breast roasted.

We worked these numbers out from USDA data. 100 g of dry rice has 365 kcal and 100 g of cooked rice has 130. Boiling added no calories, so 100 g of dry rice turned into about 281 g of cooked rice. The pasta figure is approximate: some starch ends up in the water you drain.

Your pot will give different numbers. Cooked grains weigh more or less depending on how much water you add and how long they cook, and firm rice is lighter than soft rice. So you weigh the finished dish and take the calories and macros from the raw ingredients. Labels on rice and pasta, calorie tables and our food catalog almost always list exactly that: values for the dry or raw product.

Worked example: chicken pilaf

Step 1. List the ingredients

Weigh each ingredient before cooking, already peeled and trimmed. Look up the calories per 100 g in the catalog and multiply by the weight. 600 g of chicken breast is 600 × 120 ÷ 100 = 720 kcal.

Nutrition under each ingredient is for its weight
  • 600 g
    Calories 720 kcal Proteins 135 g Fats 15.7 g Carbs 0 g
  • White long-grain rice 365 kcal per 100 g
    400 g
    Calories 1,460 kcal Proteins 28.5 g Fats 2.6 g Carbs 314.6 g
  • Carrots 41 kcal per 100 g
    300 g
    Calories 123 kcal Proteins 2.8 g Fats 0.7 g Carbs 20.3 g
  • Onions 40 kcal per 100 g
    200 g
    Calories 80 kcal Proteins 2.2 g Fats 0.2 g Carbs 15.3 g
  • Olive oil 884 kcal per 100 g
    60 g
    Calories 530 kcal Proteins 0 g Fats 60 g Carbs 0 g
Total 1,560 g
Calories 2,913 kcal Proteins 168.5 g Fats 79.3 g Carbs 350.2 g

The pot also got 900 ml of water, salt and cumin. They stay off the list.

Step 2. Weigh the finished pilaf

Put the pot with the pilaf on the scale and subtract the weight of the empty pot, weighed beforehand. In FoodCalculator you add the pot to the tableware list once, and after that the app subtracts its weight.

3,450 g pot with pilaf
1,350 g empty pot
2,100 g pilaf

The ingredients weighed 1,560 g and the pilaf came out at 2,100 g, 540 g more. Of the 900 ml of water, 360 boiled off and the pilaf soaked up the rest.

Step 3. Divide

2,913 kcal ÷ 2,100 g × 100 = 138.7 kcal per 100 g. Protein, fat and carbs work the same way, so 100 g of pilaf has:

Calories 138.7 kcal Proteins 8 g Fats 3.8 g Carbs 16.7 g

A 350 g plate is 486 kcal, 28.1 g of protein, 13.2 g of fat and 58.4 g of carbs.

What if you divide by the raw weight

A lot of people divide by the weight of the raw ingredients, 1,560 g. That gives 186.8 kcal per 100 g, 35% more than the real figure, and a 350 g plate comes out at 654 kcal instead of 486. The dish screen in FoodCalculator has a “Before cooking” and “After cooking” switch that shows the same gap:

Before cooking
Pilaf nutrition per 100 g before cooking in FoodCalculator
After cooking
Pilaf nutrition per 100 g after cooking in FoodCalculator

Do you count the water?

No. Water has no calories, protein, fat or carbs, so it adds nothing to the total. Its weight is already in the weight of the finished dish: the scale shows the water the rice soaked up and not the water that boiled off. Pour in 700 ml or a full liter, and as long as you weigh the cooked pilaf, the numbers come out right.

Do you count salt and spices?

Salt has no calories. Spices go in by the pinch: a teaspoon of cumin weighs 2.1 g and adds 8 kcal to the whole pot, less than half a calorie per 100 g of pilaf. You can leave them out.

Common mistakes

Weighing cooked rice with dry rice values

400 g of dry rice weighs about 1,120 g once cooked. Log 1,120 g with the calories of dry rice and you get 4,088 kcal instead of 1,460, almost three times too much. Weigh grains before cooking or use values for cooked grains.

Forgetting the oil

Our pilaf has 60 g of oil, which is 530 kcal, almost a fifth of the whole dish. Without it you'd get 113.5 kcal per 100 g instead of 138.7. Any vegetable oil has about 884 kcal per 100 g.

Frying is trickier because some oil stays in the pan. If you want to be precise, pour what's left into a cup, weigh it and subtract it from what you poured in.

How to do it in FoodCalculator

FoodCalculator uses the same formula. The screenshots show the same pilaf and the same 138.7 kcal per 100 g as the calculation above.

FoodCalculator calculator with the pilaf ingredients: 3,450 g on the scale and a 1,350 g pot
Ingredients with their weights, the scale reading and the pot picked from the tableware list.
Chicken pilaf in FoodCalculator: 138.7 kcal per 100 g, cooked weight 2,100 g
The cooked pilaf: nutrition per 100 g, for the whole dish or for your portion.

The app's catalog has the same basic USDA foods as this site, plus packaged products from stores that you can find by scanning the barcode. If something is missing, create your own product and type in the numbers from the label.

The dish is saved with its cooking history. Next time, tap “Cook again” and change only the weights. You can log a portion to the food diary, and it shows how much of your daily target is left.

You don't need an account for any of this. You'll need one to sync between devices and to see other users' products in the catalog.

Calculate your own dish

Web version

The same app, just in the browser. You can add it to your home screen and open it like a regular app. Works on any phone, including iPhone.

Open the web app

Where the numbers come from