Most calorie-tracking apps were built around packaged Western food with barcodes. That's exactly why they fall apart the moment you eat a plate of chicken karahi with two rotis — there's no barcode, portions vary by household, and the database entries are guesses made by other users. This guide covers how to count calories for everyday Pakistani and Indian food, with an approximate reference table you can actually use.
The one thing that matters most: portion size
For desi food, how much you eat drives the calorie count far more than small differences between recipes. A "serving" of biryani at a wedding is not the same as a bowl at home. Before you worry about the exact recipe, estimate the portion honestly — in rotis, cups of rice, or ladles of salan.
A quick mental model:
- 1 cup of cooked rice ≈ 200 kcal
- 1 medium roti ≈ 110 kcal
- 1 tbsp of cooking oil/ghee ≈ 120 kcal — and curries often hide 2–4 tbsp per serving
Oil is the silent calorie multiplier in desi cooking. Two servings of the same karahi can differ by 200+ calories purely from how much oil the dish was cooked in.
Approximate calorie reference for common desi dishes
These are rough estimates for a typical home-cooked serving. Real numbers vary with oil, cut of meat, and portion — treat them as a starting point, not gospel.
| Dish | Typical serving | Approx. calories |
|---|---|---|
| Roti / chapati | 1 medium (~40g) | 100–120 |
| Naan | 1 | 260–320 |
| Paratha (plain) | 1 | 250–320 |
| Boiled rice | 1 cup cooked | 190–210 |
| Chicken biryani | 1 plate (~350g) | 500–700 |
| Chicken karahi | 1 serving (~250g) | 400–550 |
| Daal (cooked) | 1 cup | 180–230 |
| Nihari | 1 bowl | 450–600 |
| Chicken tikka | 1 piece (~100g) | 150–200 |
| Samosa | 1 | 120–180 |
| Sweet lassi | 1 glass | 220–280 |
| Chai (milk + sugar) | 1 cup | 100–150 |
These are estimates to anchor your logging, not lab measurements. The goal of calorie tracking isn't perfect precision — it's a consistent signal you can act on.
Why "just search the database" doesn't work for desi food
Open a typical tracker and search "karahi" and you'll get a dozen conflicting entries, most added by strangers, none matching your plate. You end up either trusting a random number or giving up. The database model assumes standardized, labelled food — which home cooking isn't.
A faster way: describe the meal in plain words
Instead of hunting a database, you can describe what you ate the way you'd say it out loud — "2 rotis, chicken karahi and a bit of salad" — and let AI estimate the calories and macros, including the assumptions it made about oil and portion. That's the approach CalsFlow takes: it understands desi dishes like roti, karahi, daal and biryani, returns an editable estimate with a confidence range, and lets you adjust the portion in a tap.
If you're curious how reliable AI estimates actually are, we broke that down in How accurate is AI calorie tracking?.
Three habits that make tracking stick
- Log right after eating, while the portion is fresh in your memory. A rough estimate logged now beats a perfect one you never enter.
- Standardise your own portions. If your roti is always ~40g and your rice bowl is always one cup, your numbers stay comparable week to week.
- Don't let one meal end the day. A single heavy plate of biryani isn't a failure — consistency across the week is what moves the scale.
The bottom line
Counting calories for Pakistani and desi food is absolutely doable — you just need a method built for home cooking, not barcodes. Estimate the portion, respect the oil, and use approximate figures consistently. Want it done for you? CalsFlow turns a plain-language description of your meal into calories and macros in a few seconds, and it's free while we're in early access.
CalsFlow provides nutrition estimates, not medical advice. If you have a medical condition or an eating disorder, please speak to a doctor or dietitian before changing how you eat.