A friend who moved from Bengaluru to New Jersey a few years ago told me the same thing more than once before I started building something about it: every calorie app she tried in the US was good at her office lunch and close to useless at her own dinner table.
A chain-restaurant bowl or a packaged snack was usually there in the app, with numbers that looked precise. Dal, roti and a sabzi cooked the way her mother made them were not. She would end up picking a generic “lentil soup” sized for someone else’s bowl, or skip logging the meal altogether. Over months, that is not a rounding error. It is the largest meal of her day disappearing from her own data.
This is not really a story about one friend or one app. It is a gap in the food data underneath most fitness and nutrition products, and it shows up for anyone whose main meals are cooked at home rather than bought in a pack, whether they live in Pune or in New Jersey.
Why the gap exists
Much of the nutrition data that calorie apps lean on was built around labels and barcodes. The USDA’s FoodData Central, for example, includes a Branded Foods dataset described as data from the labels of branded foods, collected through a public-private partnership. Open Food Facts, the open product database, is filled in by people scanning barcodes and photographing product labels. Both are useful. Both work best when food comes in a package with a nutrition panel, or from a chain that publishes its numbers.
That assumption breaks the moment the food is home-cooked, unpackaged and regional, which describes much of what an Indian household eats. A katori of dal is not a product. Two rotis do not have a barcode. The protein, carbs and fat in a home-cooked sabzi change with the oil, the recipe and whose kitchen it came from.
India does have a national reference: the Indian Food Composition Tables (IFCT 2017) from ICMR’s National Institute of Nutrition, which cover 528 key foods. But apart from eggs, those values are for raw foods. They tell you what is in 100 g of raw toor dal or atta, not what is in the dal tadka and phulkas on your plate. Someone still has to turn ingredients into dishes and dishes into the portions people actually eat.
None of this is a translation problem. You can translate every screen of an app into Hindi or Tamil and the food data underneath can still be built for a supermarket aisle that does not stock what is on the plate. Nothing in the app warns you about it either. It simply has your packaged snack and not your dal.
What building the missing layer takes
I am the founder of NYUS, an India-first AI fitness and nutrition coach that is currently in early access on Android. I mention it because this is an account of what solving this specific problem required, not a pitch.
Closing the gap was mostly data work, not interface work. It meant building a food database of 9,000+ Indian and global dishes with macros, home-cooked regional dishes included, because packaged-food databases did not have them. There is no equivalent of “just scan the barcode” for a home-cooked meal. Someone has to decide what a standard katori of a given dal contains, check it against reference data, and keep adding dishes as people log food the database has not seen. Logging also has to fit how people eat: in NYUS you can log by photo, barcode or search, in English, Hindi or Hinglish.
The numbers for any home-cooked dish are still estimates. Your mother’s dal and a canteen dal are not the same food, and no database can know exactly how much ghee went in. What a dish-level database does is give you a reasonable starting point that is far closer than “lentil soup”, and lets you adjust the portion instead of guessing the whole meal. If you want a sense of the ranges, our guide to calories and macros in common Indian foods lays out approximate values for everyday dishes.
The broader point for anyone building consumer tech for India: when you adapt a product made for another market, the hard part is usually not the language, the currency symbol or the date format. It is whether the underlying data was built for how people here actually live. Nutrition tracking makes the gap unusually visible, because the app either has your food or it does not.
The diaspora version of the same problem
There is a less discussed version of this for Indians living abroad. People pick up a fitness app where they live, and it works for restaurant meals and packaged food, then falls short every time they cook or eat Indian food at home. That is not an occasional inconvenience. It is a standing gap for as long as home-cooked Indian meals stay on the table. Plenty of people are in that position: Pew Research Center reports that an estimated 5.2 million people in the United States identified as Indian in 2023, based on Census Bureau estimates.
My friend ended up doing what many people quietly do: keeping two systems in her head, one for food the app understood and one rough mental estimate for everything she cooked at home. That is not a failure of willpower or of app design. It is a gap in what was measured when the database was built.
What you can do in the meantime
Whichever app you use, a few habits make home-cooked meals less of a blind spot:
- Log the dish, not a Western stand-in. “Toor dal tadka, 1 katori” is closer than “lentil soup, 1 cup”, even if the numbers are approximate.
- Use consistent portions. If you do not weigh food, use the same katori and count rotis. The hand-portion method for Indian plates is a workable middle ground.
- Remember the oil and ghee. Cooking fat is often the biggest difference between two versions of the same dish, so note when a meal was richer than usual.
- Look at the whole plate. A thali is several dishes, and the balance between them matters more than any single number. Our guide to building a balanced Indian thali covers the basics.
The gap is fixable the way any missing reference data is fixable: someone decides the food matters enough to map it, dish by dish, until the data matches how people actually eat. For Indian home food that work is still under way, and logging your dal honestly, even roughly, is better than letting the biggest meal of the day go missing.