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.
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.
- Buckwheat 376 g
- Lentils 303 g
- Rice 281 g
- Pasta 235 g
- Chicken breast 73 g
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.
- Chicken breast, skinless, boneless 120 kcal per 100 g600 gCalories 720 kcal Proteins 135 g Fats 15.7 g Carbs 0 g
- White long-grain rice 365 kcal per 100 g400 gCalories 1,460 kcal Proteins 28.5 g Fats 2.6 g Carbs 314.6 g
- Carrots 41 kcal per 100 g300 gCalories 123 kcal Proteins 2.8 g Fats 0.7 g Carbs 20.3 g
- Onions 40 kcal per 100 g200 gCalories 80 kcal Proteins 2.2 g Fats 0.2 g Carbs 15.3 g
- Olive oil 884 kcal per 100 g60 gCalories 530 kcal Proteins 0 g Fats 60 g Carbs 0 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.
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:
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:
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.
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
Where the numbers come from
- Raw ingredient values: the FoodCalculator food catalog, based on USDA FoodData Central.
- Calories of cooked foods from USDA FoodData Central: buckwheat, lentils, rice, pasta, chicken breast.