I checked the nutrition numbers for 11 Indian dishes. Most of the internet is wrong.
What the published calorie and protein figures get wrong, and the recipe math behind better ones.
I built a calorie tracker for Indian food, which meant I needed real numbers for dishes like soya chaap, dal makhani, and chole bhature. I assumed I could look them up. I could not. The published figures for the same dish, at the same portion, disagree wildly, and most of them do not survive basic arithmetic. This page is what I found when I checked eleven common Indian dishes ingredient by ingredient. Some of the numbers the internet repeats are off by half. None of this is meant to shame any single source; the point is that Indian food nutrition data is genuinely broken, and if you are tracking calories, you deserve to know by how much.
The soya chaap correction
Soya chaap is sold as a high-protein vegetarian hero, and it is routinely quoted at 18 to 20 grams of protein per serving. That number is wrong for the dish most people actually eat. Soya chaap sticks are made from soy flour wrapped around a stick, with a significant amount of refined wheat flour (maida). Four independent brand labels converge at roughly 106 to 110 calories and about 10 grams of protein per 100 grams of plain chaap. A katori of the gravy dish holds around 75 grams of chaap, which is roughly 7.5 grams of protein, plus a little from cream and cashew in the masala. That is about 9 grams per katori, not 18. The 18 to 20 gram figure appears to be the value for plain soy chunks (soya nuggets), which genuinely are high protein, mistakenly applied to chaap, which is a different product. Practical version: if you are counting on chaap for protein, you are getting about half of what you think.
The dal makhani spread
Search "dal makhani calories" and you will find everything from 90 to 300 calories for a serving. That looks like sloppy data, and some of it is, but the deeper reason is more interesting: nobody states the recipe. The lentils in dal makhani are a small, fixed cost, roughly 88 calories worth of urad dal and rajma in a katori. Everything above that is butter and cream, and that is where the recipes genuinely diverge. A homestyle version with a light hand on the butter is near 170 calories a katori. A restaurant version is around 220. A dhaba version, where butter is the entire point, crosses 285. All three are "dal makhani." Quoting a single number without saying which one you cooked is the actual error, not the specific figure. This is the core problem with Indian food data: the same dish name covers foods that differ by 60 percent, and a flat number hides that.
The 11 dishes I checked: commonly quoted vs the recipe math
| Dish | Commonly quoted | Our figure | Why they differ |
|---|---|---|---|
| Soya chaap | 18 to 20 g protein / katori | ~9 g protein / katori | The high figure is for plain soy chunks. Chaap is mostly maida. |
| Dal makhani | 90 to 300 cal / serving | 220 cal / katori (restaurant) | Nobody states the recipe. Butter and cream are the whole spread. |
| Paneer butter masala | 180 to 350 cal | 360 cal / katori | Fat stacks 4x: paneer, butter, cream, cashew. Most sources undercount. |
| Chole bhature | 450 to 800 cal | 860 cal / plate | The bhature are 70% of the plate. Frying oil is usually ignored. |
| Rajma chawal | 300 to 500 cal | 418 cal / plate | Depends entirely on rice portion and tadka. |
| Masala dosa | 106 to 387 cal | 250 cal / medium dosa | Size and oil. A small home dosa and a ghee paper dosa are different foods. |
| Palak paneer | 180 to 366 cal | 230 cal / katori (home) | Home vs restaurant cream is the split. |
| Aloo paratha | 150 to 400+ cal | 280 cal / medium (ghee) | The cooking fat is the entire variable. |
| Butter chicken | 260 to 490 cal | 320 cal / katori | Chicken is fixed; the makhani gravy moves it. |
| Idli | 50 to 100 cal / piece | ~60 cal / piece (120 / 2) | One of the few that is actually consistent. Steamed, no oil. |
| Poha | 180 to 320 cal | 250 cal / plate | Oil and potato. Plain vs aloo poha differ. |
The site covers more dishes than these eleven. See the full calorie chart for all dishes.
How these numbers were calculated
Composed Indian dishes do not exist in any nutrition database, so each figure is built from a defined standard recipe, summing ingredient-level values from USDA FoodData Central (public domain), and dividing by servings. Soya chaap stick values are anchored to four packaged brand labels, which agree closely. The Indian Food Composition Tables (IFCT 2017, ICMR-NIN) were used as a cross-reference. Every dish page states its exact recipe basis and a confidence label. These are careful arithmetic, not laboratory analysis, and where a number is uncertain, the dish page says so. The headline figure on each page is for one clearly stated preparation; the real spread lives in a variants table on that page, because the spread is recipe difference, not measurement error.
This is why I am building Katori
One photo, and you get the real numbers for your actual plate, recipe and all.
Join the waitlist