Myth check
Is whey protein cheaper than whole food protein?
At $0.312 per 10 g of protein, whey undercuts chicken, tuna, eggs and beef, and loses badly to oats and lentils. The 'supplements are a rip-off' instinct is only half right.
The reflex is that protein powder is a marketing product with a markup, and that real food is the frugal choice. On the numbers in this table, that reflex is half wrong. One scoop of whey costs $0.312 per 10 grams of protein. Raw chicken breast costs $0.400. Canned tuna in water costs $0.423, raw turkey breast $0.438, raw tilapia $0.475, and raw 90/10 ground beef $0.550. Eggs come in at $0.357, milk at $0.353, nonfat Greek yogurt at $0.350. Whey is cheaper than every single animal protein listed here.
The other half of the reflex is right, and it is right by a wider margin. Dry oats cost $0.089 per 10 grams of protein, peanut butter $0.220, cooked lentils $0.222, firm tofu $0.235, cooked black beans $0.247, and lowfat cottage cheese $0.273. Whey ranks seventh out of the sixteen foods here. So the accurate sentence is not "whey is cheap" or "whey is a rip-off". It is: whey is cheaper than meat and more expensive than staples.
Two things to hold onto before the arithmetic. First, the serving basis is not uniform: every food below is priced per 100 grams as listed, except whey, which is a 30 gram scoop at $0.75. Second, these prices are maintained, representative US grocery estimates joined to public nutrition data. They are not live prices, not your store, not today's shelf tag. Sanity-check them against what you actually pay. The relative ranking holds up far better than any absolute figure. This is a cost and shopping comparison only, with no claims about what any of these foods do for you.
| Food | $/10 g protein | kcal per g protein | vs whey |
|---|---|---|---|
| Oats (dry) | $0.089 | 23.0 | $-0.224 |
| Soybeans (dried, raw) | $0.096 | 12.2 | $-0.217 |
| Wheat flour (all-purpose) | $0.117 | 35.3 | $-0.196 |
| Vital wheat gluten | $0.133 | 4.9 | $-0.180 |
| Peanuts (raw) | $0.172 | 21.8 | $-0.141 |
| Split peas (cooked) | $0.217 | 14.0 | $-0.096 |
| Peanut butter | $0.220 | 23.5 | $-0.092 |
| Lentils (cooked) | $0.222 | 12.9 | $-0.090 |
| Tofu (firm) | $0.235 | 8.5 | $-0.077 |
| Black beans (cooked) | $0.247 | 14.8 | $-0.065 |
| Cottage cheese (lowfat) | $0.273 | 7.6 | $-0.040 |
| Whey protein (1 scoop) | $0.313 | 5.0 | whey |
| Edamame | $0.333 | 10.1 | +$0.021 |
| Greek yogurt (nonfat) | $0.350 | 5.9 | +$0.037 |
| Milk (2%) | $0.353 | 14.7 | +$0.040 |
| Eggs (~2 large) | $0.357 | 11.3 | +$0.045 |
| Chicken breast (raw) | $0.400 | 5.3 | +$0.088 |
| Canned tuna (in water) | $0.423 | 4.5 | +$0.111 |
| Turkey breast (raw) | $0.438 | 4.6 | +$0.125 |
| Egg whites (liquid) | $0.459 | 4.8 | +$0.146 |
| Tilapia (raw) | $0.475 | 4.8 | +$0.162 |
| Sardines (canned in oil) | $0.549 | 8.5 | +$0.236 |
| Ground beef 90/10 (raw) | $0.550 | 8.8 | +$0.238 |
| Quinoa (cooked) | $0.682 | 27.3 | +$0.369 |
| Beef jerky | $1.657 | 12.4 | +$1.344 |
About these numbers. Costs are computed from public nutrition data joined to maintained, representative US grocery prices, not live per-store pricing. Your shelf prices will differ. The ranking between foods is far more stable than the absolute dollars, so treat the order as the signal and re-run your own numbers in the planner. Meat and fish figures are raw weight, and cooking drives water off, so cooked cost per gram of protein runs higher.
The one number that settles it, and the asterisk on it
Whey's row: a 30 gram scoop, 120 kcal, 24 grams of protein, $0.75. Divide $0.75 by 24 grams and you get $0.03125 per gram of protein, which is $0.312 per 10 grams. That is the number every comparison below runs on.
The asterisk matters. Every other food in this dataset is quoted per 100 grams. Whey is quoted per 30 gram scoop. If you eyeball the price column instead, whey at $0.75 a serving looks mid-expensive, well above oats at $0.15 and cottage cheese at $0.30, below tuna and ground beef at $1.10. That comparison is meaningless, because you are comparing 30 grams of one thing to 100 grams of everything else.
Cost per 10 grams of protein is the only column where all sixteen rows line up honestly. Use it, and ignore per-serving price entirely when you are shopping for protein.
Whey beats every animal protein here, and the gaps are not small
Sorted against whey's $0.312: eggs $0.357 (14 percent more), Greek yogurt $0.350 (12 percent more), milk $0.353, chicken breast $0.400 (28 percent more), canned tuna $0.423 (36 percent more), turkey breast $0.438, tilapia $0.475, ground beef $0.550 (76 percent more).
In shopping terms, buy 100 grams of protein from each. From whey that is 4.2 scoops, costing $3.12. From raw chicken breast it is 444 grams, costing $4.00. From raw 90/10 ground beef it is 500 grams, costing $5.50. From canned tuna it is 385 grams, costing $4.23.
So whey saves $0.88 against chicken and $2.38 against beef on every 100 grams of protein you buy. If you hit 100 grams of protein from powder five times a week instead of from ground beef, that is $11.90 a week on these estimates. The claim that supplements are automatically the expensive option does not survive contact with the table.
Whey loses to staples, and loses by more than it wins by
Dry oats at $0.089 per 10 grams of protein are 3.5 times cheaper than whey. Buy 100 grams of protein from oats and you need 592 grams of dry oats, costing $0.89, against $3.12 from whey. That $2.23 gap is bigger than the $0.88 whey saves against chicken.
The rest of the staple block: peanut butter $0.220, lentils $0.222, tofu $0.235, black beans $0.247, cottage cheese $0.273. All six are cheaper than whey. Edamame at $0.333 is the first food above whey on the list, and it only just clears it.
Cottage cheese is the closest real competitor at $0.273, which makes whey 14 percent more expensive. That gap is narrow enough that a sale on either one flips it. The oats gap is not.
Conclusion for the cart: if your only constraint is dollars per gram of protein, whey is not the answer and never was. Oats, lentils, beans and tofu are.
Why whey still feels like a rip-off: price per kilogram
Convert everything to price per kilogram of food and the instinct makes sense. Whey is $0.75 for 30 grams, which is $25.00 per kg. Tuna and ground beef are $11.00 per kg, turkey $10.50, tilapia $9.50, chicken $9.00. Peanut butter is $5.50, tofu $4.00, cottage cheese $3.00, lentils $2.00, oats $1.50, milk $1.20.
Whey is the most expensive food in this table by weight, by a wide margin. It is roughly 17 times the price of oats per kilogram. Yet it is only 3.5 times the cost of oats per gram of protein.
The resolution is protein density. A 30 gram scoop carries 24 grams of protein, so whey is 80 percent protein by weight. Canned tuna is 26 percent, chicken breast 22.5 percent, oats 16.9 percent, cottage cheese 11 percent. You pay a very high price per kilogram and you buy almost nothing but the thing you came for. That is the whole trick, and it is why the sticker price misleads.
Under a calorie cap, the ranking inverts
Divide calories by protein and you get calories carried per gram of protein. Whey is 120 divided by 24, which is 5.0. Only three foods here are leaner: canned tuna at 4.5, turkey breast at 4.6, tilapia at 4.8. Whey is fourth of sixteen.
Now suppose 500 kcal is the budget you have allocated to protein foods. Whey delivers 100 grams of protein for $3.12. Chicken breast delivers 94 grams for $3.77. Greek yogurt delivers 85 grams for $2.96. Cottage cheese delivers 66 grams for $1.80. Tofu delivers 59 grams for $1.38. Lentils deliver 39 grams for $0.86. Oats deliver 22 grams for $0.19, and peanut butter 21 grams for $0.47.
Oats are 3.5 times cheaper per gram of protein and carry 23.0 kcal per gram of protein, which is 4.6 times whey's 5.0. Peanut butter at 23.5 is worse still. If calories rather than dollars are your binding constraint, the staple advantage collapses and whey moves to the front of the pack.
Decision rule: work out which constraint is actually binding for you. If you are hitting your target and have calories to spare, buy oats and lentils. If you are running out of calories before you reach your target, whey buys protein at a lower calorie cost than anything except tuna, turkey and tilapia.
The efficient frontier: six foods, and whey is on it
Call a food efficient if nothing else in this table is both cheaper per gram of protein and leaner per gram of protein. Six of the sixteen pass: oats ($0.089, 23.0 kcal), lentils ($0.222, 12.9), tofu ($0.235, 8.5), cottage cheese ($0.273, 7.6), whey ($0.312, 5.0) and canned tuna ($0.423, 4.5).
Whey is on that frontier. Nothing in this dataset is simultaneously cheaper and leaner than it. Chicken breast is not: at $0.400 and 5.3 kcal per gram of protein, whey beats it on both axes at once. Neither is Greek yogurt at $0.350 and 5.9, nor eggs, milk, turkey, tilapia, beef, edamame, black beans or peanut butter.
The frontier also prices the next step up. If you want something leaner than whey's 5.0, the cheapest option is canned tuna at $0.423 per 10 grams of protein. That is a 36 percent price premium to save 0.5 kcal per gram of protein. Whether that trade is worth making is a budget question, not a nutrition one.
Four rules for checking this against your own cart
First, convert your own tub before comparing anything. Take the price per scoop, divide by grams of protein per scoop, multiply by 10. At 24 grams per scoop the shortcut is scoop price divided by 2.4: $0.75 divided by 2.4 is $0.312. If your tub lists a different protein per scoop, use the full formula, because scoop sizes vary and the shortcut breaks.
Second, use break-even prices instead of arguing about brands. A 24 gram scoop stays cheaper than chicken up to $0.96 (0.400 times 2.4), cheaper than eggs up to $0.86, and cheaper than Greek yogurt up to $0.84. It stops being cheaper than cottage cheese above $0.66, so at $0.75 it has already lost that one. To beat oats a scoop would have to cost $0.21, which is not going to happen.
Third, remember the meat rows are raw. Chicken, turkey, tilapia and beef are quoted at raw weight. Cooking drives off water, so 100 grams raw does not plate as 100 grams cooked. If you portion by cooked weight, you need more raw grams than the serving line suggests, and your real cost per portion runs above the raw figure. Whey has no equivalent shrink: a 30 gram scoop is 30 grams in the shaker.
Fourth, treat these as representative estimates and not shelf tags. They are maintained US grocery estimates joined to public nutrition data, and brand, region and promotions move absolute numbers. Rankings are much more stable than levels. The spread from oats at $0.089 to ground beef at $0.550 is 6.2 times, and no realistic local price swing closes that. The whey versus cottage cheese gap of 14 percent is well inside the range your own store could flip. Recheck the close calls, trust the wide ones.
This is a cost comparison and nothing more. It makes no claim about supplement efficacy, health effects or whether you need a powder at all. To see how whey competes inside a full day under a calorie cap, run it through the cheapest-protein planner.
FAQ
- Is whey protein cheaper than chicken breast?
- Yes, on these figures. Whey costs $0.312 per 10 grams of protein against $0.400 for raw chicken breast, so chicken is about 28 percent more expensive. Buying 100 grams of protein costs $3.12 from whey (4.2 scoops of 24 grams) versus $4.00 from 444 grams of raw chicken. Chicken is also quoted raw, so cooked portions cost more per plated gram than the raw line implies.
- What is the cheapest source of protein in this dataset?
- Dry oats at $0.089 per 10 grams of protein, which is roughly 3.5 times cheaper than whey at $0.312. Getting 100 grams of protein from oats means 592 grams of dry oats for $0.89. The catch is calories: oats carry 23.0 kcal per gram of protein against 5.0 for whey, so a 500 kcal budget buys 22 grams of protein from oats and 100 grams from whey.
- Why does whey feel expensive if it is mid-priced per gram of protein?
- Because it is genuinely the most expensive food in this table by weight. A $0.75 scoop weighing 30 grams works out to $25.00 per kilogram, against $11.00 for canned tuna and beef, $9.00 for chicken and $1.50 for oats. It still lands mid-table per gram of protein because 24 grams of the 30 gram scoop is protein, making it 80 percent protein by weight, versus 26 percent for tuna and 22.5 percent for chicken breast.
- Can I compare the whey price directly against the other foods in the price column?
- No. Every other food in this dataset is priced per 100 grams as listed, while whey is priced per 30 gram scoop at $0.75. Comparing those per-serving prices side by side compares 30 grams of one food to 100 grams of another. Always convert to cost per 10 grams of protein first, which for a 24 gram scoop is simply the scoop price divided by 2.4.
- At what price does whey stop being the cheaper option?
- Take your scoop price and divide by 2.4 if the scoop holds 24 grams of protein. A 24 gram scoop stays cheaper than chicken breast up to $0.96, cheaper than eggs up to $0.86, and cheaper than Greek yogurt up to $0.84. It is already more expensive than cottage cheese, which breaks even at $0.66, and beating oats would require a scoop priced at $0.21.
- How reliable are these prices for my own shopping?
- They are maintained, representative US grocery estimates joined to public nutrition data, not live prices from your store on any given day. Brand, region and promotions all move the absolute numbers, so check the items you actually buy. Relative ranking is far more stable than the levels: the 6.2 times spread from oats at $0.089 to ground beef at $0.550 will survive any realistic local variation, while the 14 percent gap between whey and cottage cheese could easily flip at your store.