Plain-English guide
What Is the Cheapest Source of Protein in India? The Honest Answer
We run an egg-rate website, so you would expect this page to end with "the egg." It does not — soya chunks and most dals cost less per gram of protein, and it is not close.
12 min read · 19 August 2026

Here is the part that changes how you should read the rest of this page: we sell egg rates for a living, and the number above does not flatter us. We are publishing it anyway, because a protein table that always concludes "buy eggs" is a marketing brochure, not information.
How we worked this out
Three inputs, all public, all dated.
Price. For dals, milk, rice and atta we used the Department of Consumer Affairs all-India average retail price for 18 August 2026 — the government's own daily figure, compiled from 555 market centres. For paneer, soya chunks, curd, chicken, fish, peanuts and whey, where the government publishes nothing, we used listed retail prices on 19 August 2026. The egg is priced at ₹6.50 a piece, loose — roughly the NECC declared rate of ₹5.40 in Delhi plus the markup a kirana shop normally takes.
Protein. From the Indian Food Composition Tables 2017, published by ICMR-NIN. Not American databases. Indian dal, analysed in Indian labs, with Indian nitrogen conversion factors.
Weight. This is where most protein blogs go wrong. Dal, soya chunks, rice and atta are priced and analysed dry. An egg, a glass of milk and a block of paneer are priced and analysed as you eat them. We have compared everything on the weight you actually hand money over for, and knocked bone and shell out of the meat and fish figures. More on why that matters below.
The full ranking

Read it in three blocks.
The plant block, ₹2.48 to ₹9.69. Soya chunks are in a class of their own — 52 grams of protein in 100 grams of dry weight, at ₹129 a kilo. Nothing else on the shelf comes close. Then the dals, in an order that will surprise most households: masoor (₹3.71) and chana dal (₹4.04) are cheaper protein than toor dal (₹5.70), which is the dal most Indian kitchens default to. Rajma is the most expensive pulse on the list at ₹9.69, which is worth knowing before the next Sunday lunch.
The egg, at ₹11.21. On its own, in the middle.
The animal and supplement block, ₹17.42 upward. Chicken breast ₹17.42. Milk ₹18.66. Paneer ₹22.80. Fish ₹27.98. Indian whey ₹30.75. Imported whey ₹57.15. Mutton ₹64.35 — twenty-six times the price of soya chunks for the same 10 grams.
One number worth pausing on: paneer is twice the price of the egg, per gram of protein. Paneer is the default "vegetarian protein" in Indian gym advice and in restaurant menus. On price alone, it is one of the worse choices available.
What ₹100 actually buys

Same data, turned around, because "₹ per gram" is an abstraction and a ₹100 note is not.
But the label is not what your body gets
Here is the thing almost no Indian protein article mentions.
You do not absorb all the protein you eat, and you absorb far less of the protein in dal than the protein in an egg.
In 2019, a team led by Sarita Kashyap measured this properly in Indian adults using a dual-isotope tracer — the gold-standard method. The results were sobering:
| Food | Protein actually absorbed |
|---|---|
| Chicken | 92% |
| Boiled egg | 89% |
| Chickpea | 74.6% |
| Dehulled mung (dhuli moong) | 70.9% |
| Whole mung (sabut moong) | 63.2% |
The paper's own conclusion was that legume digestibility in Indian adults was lower than expected — meaning the international assumptions everyone quotes had been overstating how much protein Indians actually get out of their dal.

Adjust every food for digestibility and the ranking barely moves. Soya chunks go from ₹2.48 to ₹2.76. Toor dal goes from ₹5.70 to ₹7.91. The egg goes from ₹11.21 to ₹12.59 — it climbs, relatively, but not enough to win.
And one actionable finding falls straight out of that table. Dhuli moong is absorbed eight percentage points better than sabut moong — 70.9% against 63.2%. The husk carries phytate and tannins that block your own digestive enzymes. Soaking, sprouting, dehusking, pressure-cooking and fermenting all pull in the same direction. Your dadi soaking the dal overnight was doing measurable biochemistry.
Nobody eats 100 grams of dry dal
Per-kilo tables flatter the dal in a way that falls apart at the dining table.

A katori of properly thick dal is made from roughly 30 grams of dry dal. That is about 6.5 grams of protein — about one egg. The thin dal served at most restaurants and canteens is nearer 3–4 grams.
So the household that says "we eat dal every day, we get plenty of protein" is usually running a deficit it cannot see. ICMR-NIN's own My Plate allocates a vegetarian adult 85 grams of pulses a day, dry weight. That is close to three katoris of thick dal. Almost nobody eats that.
Two eggs, by contrast, are 11.6 grams and take four minutes.
So where does the egg actually win?
Not on price. On four other things, all of which are real.
It arrives complete. Egg protein contains every essential amino acid in roughly the proportion a human needs. Dal does not — it is short of methionine. Wheat and rice are short of lysine. You can fix this by combining them, which we come to next, but you have to actually do it.
It is absorbed at 89%. Only chicken beats it among the foods most Indians buy.
It needs no cooking skill, no oil, no planning. Dal must be soaked, cooked and tempered. Soya chunks must be boiled, squeezed and then cooked into something edible. An egg is four minutes and a pan.
It is priced the same everywhere in your city, every day. The NECC declared rate is published daily for 34 markets, and the shop price tracks it within a rupee or so. There is no packet, no brand premium, no MRP game. That is not true of paneer, of branded dal, and certainly not of whey.
Roti-dal or chawal-dal? The 3:1 rule, in numbers
ICMR-NIN's guidance is that mixing cereals and pulses in a 3:1 ratio produces good-quality protein. Everyone quotes this. Nobody checks it.
We checked it, using ICMR-NIN's own amino acid tables.

The finding is genuinely non-obvious, and it matters most in north India:
- Wheat protein supplies only 54% of the lysine an adult needs per gram of protein. Rice supplies 82%.
- Dal supplies only about 50–70% of the sulphur amino acids needed. The two fail in opposite directions, which is why mixing works.
- Rice + dal at 3:1 scores 1.08. Complete, on paper.
- Roti + dal at 3:1 scores 0.88. Not quite there, because wheat starts so much further behind on lysine.
- Add milk at ICMR's 3:1:2.5 ratio and it goes to 1.21.
In plain terms: a dal-chawal plate is a complete protein. A roti-dal plate is not, until you add curd, milk or an egg to it. This is not a small technicality in a country where the northern half of the population eats roti at both meals.
The protein powder question
At ₹30.75 per 10 grams for a budget Indian whey concentrate and ₹57.15 for an imported tub, protein powder is three to five times the price of an egg for protein your body handles at broadly the same efficiency.
ICMR-NIN's 2024 Dietary Guidelines are unusually direct about it. Guideline 8 is titled, in part, "avoid protein supplements to build muscle mass." The text calls protein powders "unnecessary," warns that prolonged high intake of protein concentrates has been associated with bone mineral loss and kidney damage, and notes that many powders carry added sugars, sweeteners and artificial flavouring.
We are going to give you the other side too, because the guideline is written for a population, not for you specifically. ICMR's protein RDA of 0.83 g per kg of body weight is an adequacy figure — the amount at which a population does not become deficient. The sports-nutrition literature recommends 1.2–2.0 g/kg for people training seriously, and that is a different question from adequacy. Someone training hard may reasonably want more protein than ICMR's RDA. What does not follow is that the extra has to arrive as powder. For a 70 kg man training five days a week, the gap between 0.83 g/kg and 1.6 g/kg is about 54 grams of protein a day — about nine eggs, or ₹59. The same 54 grams as imported whey costs ₹309.
One more thing: the half of the egg most gym-goers throw away
Ask around any Indian gym and you will find people eating six egg whites and binning the yolks.
Per 100 grams, the yolk has more protein than the white — 15.74 grams against 10.84, in ICMR-NIN's tables. The white only appears to win because it is the bigger part of the egg and has almost no fat. In a 44-gram edible egg, the white contributes about 2.9 grams of protein and the yolk about 2.7 — the yolk is a little under half of it, from a third of the weight.
Throwing away the yolks discards close to half the protein you paid for — along with the better amino acid profile, the choline, the vitamin B12, the vitamin D and the iron, none of which is in the white. If your goal is protein per rupee, the egg-white omelette is the single most expensive way to eat an egg in India.
Three places we are staying honest
We have an interest. Our day job is publishing the daily egg rate. A page that concluded "eggs are the cheapest protein in India" would be better for us. It would also be wrong.
One number we could not source properly. ICMR-NIN publishes protein per 100 grams of egg but does not publish the weight of a standard Indian egg. We have used 50 grams gross and 44 grams edible, which gives about 5.8 grams of protein per egg. If your eggs run larger, your number is better than ours. Anyone quoting "7 grams per egg" is using an American large egg.
Three digestibility figures are not Indian. The Kashyap measurements cover egg, chicken, chickpea and mung. For milk, paneer and soya we have used standard international values, because nobody has measured them in Indian adults with the same method. Treat those three rows as indicative.
The two companion pages
This page answers what protein costs. For why the egg rate itself moves the way it does — feed, season, festivals and the NECC mechanism — see how the egg rate is decided in India. For what you are paying for when you buy a tray rather than loose eggs, see what one tray of eggs actually is.
Our day job is the daily NECC egg rate for all 34 markets. Check today's rate for your city, then redo this maths with your own number — the arithmetic is in the table above and it takes a minute.
Quick answers
What is the single cheapest source of protein in India right now?
Soya chunks, at about ₹2.48 per 10 grams of protein at ₹129 a kilo. Nothing else in a normal kirana shop is close on price alone.
Is the egg cheaper than dal?
No. An egg costs ₹11.21 per 10 grams of protein; masoor dal costs ₹3.71 and toor dal ₹5.70. The egg is cheaper than every animal-source protein, and cheaper than rajma is per katori of actual eating, but it is not cheaper than dal per gram.
Then why do people say eggs are the cheapest protein?
Because they are comparing eggs against paneer, chicken, fish and protein powder — where it is true, and by a wide margin. Against dal it is not. Both statements get repeated without the comparison being named.
Which dal has the most protein?
Masoor at 24.35 g per 100 g dry, then moong at 23.88 and urad at 23.06. Toor — the most commonly cooked dal in India — is the lowest of the common ones at 21.70. Masoor is also the cheapest of them per gram of protein.
How many eggs a day is that in practice?
ICMR-NIN's My Plate gives a non-vegetarian adult 70 g a day of flesh foods including eggs, alongside 55 g of pulses. Roughly, that is one to two eggs a day within a plate that also has dal. Two eggs give 11.6 g of protein.
Is soya chunk protein as good as egg protein?
Close, on amino acids — soy is one of the few plant proteins with no badly limiting amino acid. It is absorbed slightly less well than egg, and it is a heavily processed defatted product rather than a whole food. It is not in ICMR-NIN's food composition tables for exactly that reason, so its protein figure comes from the pack label, not a lab.
Does the price of eggs change this ranking through the year?
It moves it a little, not enough to reorder anything. The NECC rate swings roughly between ₹4.80 and ₹7.50 a piece across a year. Even at the winter peak, an egg stays cheaper per gram of protein than paneer, chicken or whey; even at the Shravan low, it stays dearer than dal.
Should I be buying protein powder?
Not to meet the ICMR RDA — food covers that easily and far more cheaply. If you are training seriously and want 1.5–2 g per kg of body weight, powder is a convenience, not a necessity, and it is the most expensive protein in this entire table. Read ICMR-NIN Guideline 8 before you buy a tub.