Cheapest Protein Per Gram, Ranked
Pinto beans (dry) costs 1.02 cents per gram of protein. Bacon costs 10.87. Same nutrient, same store, a 11-fold difference in what you pay for it. Below is the full ranking of 49 foods, in cents per gram and dollars per pound of protein, priced in July 2026.
Source: Daily Life Hacks grocery price study. Prices observed July 2026 at US national grocery prices; nutrition values from USDA FoodData Central. Prices observed July 2026. Read the methodology or download the raw CSV. Free to reuse with credit and a link.
- Cheapest per gram
- 1.02¢
- Priciest per gram
- 10.87¢
- Under 2¢ per gram
- 11 of 49
Pinto beans (dry), $4.63 per lb of protein
Bacon, $49.30 per lb of protein
foods in the study clear that bar
All 49 foods, cheapest protein first
Cost per gram is the price of 100 g as purchased divided by the grams of protein in it, after subtracting bone, shell and rind. Cost per pound is the same figure scaled to a full pound of pure protein, which is the unit people tend to think in when they're comparing a chicken pack to a bag of lentils.
| # | Food | Category | Cents per gram | $ per lb of protein | Protein g per $1 | Protein per 100 g | Priced as |
|---|---|---|---|---|---|---|---|
| 1 | Pinto beans (dry) | Dried beans & lentils | 1.02¢ | $4.63 | 97.9 | 21.42 g | 4 lb bag — $3.97 |
| 2 | Whole wheat flour | Grains & pantry | 1.04¢ | $4.72 | 96 | 13.21 g | 5 lb bag — $3.12 |
| 3 | Black beans (dry) | Dried beans & lentils | 1.23¢ | $5.60 | 81 | 21.6 g | 2 lb bag — $2.42 |
| 4 | Brown lentils (dry) | Dried beans & lentils | 1.29¢ | $5.84 | 77.7 | 24.63 g | 16 oz bag — $1.44 |
| 5 | Navy beans (dry) | Dried beans & lentils | 1.32¢ | $5.98 | 75.9 | 22.33 g | 2 lb bag — $2.67 |
| 6 | Green split peas (dry) | Dried beans & lentils | 1.35¢ | $6.14 | 73.9 | 23.12 g | 16 oz bag — $1.42 |
| 7 | Chickpeas (dry) | Dried beans & lentils | 1.76¢ | $8.00 | 56.7 | 20.47 g | 16 oz bag — $1.64 |
| 8 | Red lentils (dry) | Dried beans & lentils | 1.79¢ | $8.10 | 56 | 23.91 g | 16 oz bag — $1.94 |
| 9 | Whole wheat spaghetti | Grains & pantry | 1.87¢ | $8.49 | 53.4 | 13.87 g | 16 oz box — $1.18 |
| 10 | Peanut butter | Nuts & seeds | 1.97¢ | $8.95 | 50.7 | 22.21 g | 40 oz jar — $4.97 |
| 11 | Chicken drumsticks (bone-in) | Meat & poultry | 1.99¢ | $9.02 | 50.3 | 18.08 g | 5 lb bag — $5.46 |
| 12 | White rice (long grain, dry) | Grains & pantry | 2.08¢ | $9.45 | 48 | 7.13 g | 5 lb bag — $3.37 |
| 13 | Spaghetti (regular, dry) | Grains & pantry | 2.1¢ | $9.51 | 47.7 | 13.04 g | 16 oz box — $1.24 |
| 14 | Old-fashioned rolled oats | Grains & pantry | 2.15¢ | $9.73 | 46.6 | 13.15 g | 42 oz canister — $3.36 |
| 15 | Dry roasted peanuts | Nuts & seeds | 2.51¢ | $11.40 | 39.8 | 24.35 g | 16 oz jar — $2.78 |
| 16 | Brown rice (dry) | Grains & pantry | 2.73¢ | $12.39 | 36.6 | 7.54 g | 2 lb bag — $1.87 |
| 17 | Pearled barley (dry) | Grains & pantry | 2.75¢ | $12.50 | 36.3 | 9.91 g | 16 oz bag — $1.24 |
| 18 | 100% whole wheat bread | Grains & pantry | 2.79¢ | $12.67 | 35.8 | 12.45 g | 20 oz loaf — $1.97 |
| 19 | Eggs (large) | Eggs & dairy | 2.91¢ | $13.19 | 34.4 | 12.56 g | 1 dozen (600 g edible) — $2.19 |
| 20 | Sunflower seed kernels | Nuts & seeds | 3.15¢ | $14.31 | 31.7 | 20.78 g | 16 oz bag — $2.98 |
| 21 | Canned black beans | Canned beans | 3.32¢ | $15.07 | 30.1 | 6.03 g | 15.5 oz can — $0.88 |
| 22 | Mozzarella (low-moisture part-skim) | Eggs & dairy | 3.32¢ | $15.07 | 30.1 | 23.75 g | 16 oz block — $3.58 |
| 23 | Whole milk | Eggs & dairy | 3.44¢ | $15.59 | 29.1 | 3.15 g | 1 gallon — $4.22 |
| 24 | Chicken thighs (boneless, skinless) | Meat & poultry | 3.61¢ | $16.38 | 27.7 | 19.66 g | per lb — $3.22 |
| 25 | Greek yogurt (plain, nonfat) | Eggs & dairy | 3.64¢ | $16.49 | 27.5 | 10.19 g | 32 oz tub — $3.36 |
| 26 | Rotisserie chicken (whole, cooked) | Meat & poultry | 3.75¢ | $16.99 | 26.7 | 28.93 g | whole bird (36 oz, cooked) — $5.97 |
| 27 | Cottage cheese (4%) | Eggs & dairy | 3.8¢ | $17.25 | 26.3 | 11.12 g | 24 oz tub — $2.87 |
| 28 | Whole chicken (raw) | Meat & poultry | 3.95¢ | $17.93 | 25.3 | 18.6 g | per lb — $2.04 |
| 29 | Pork shoulder butt roast (boneless) | Meat & poultry | 3.97¢ | $18.00 | 25.2 | 17.42 g | per lb — $3.14 |
| 30 | Chicken breast (boneless, skinless) | Meat & poultry | 4.08¢ | $18.51 | 24.5 | 22.5 g | per lb — $4.17 |
| 31 | TVP (textured vegetable protein) | Soy & plant proteins | 4.27¢ | $19.38 | 23.4 | 52.17 g | 10 oz bag — $6.30 |
| 32 | Canned kidney beans | Canned beans | 4.27¢ | $19.38 | 23.4 | 5.22 g | 15.5 oz can — $0.98 |
| 33 | Canned tuna (chunk light, in water) | Fish (canned & frozen) | 4.46¢ | $20.25 | 22.4 | 19.44 g | 5 oz can (113 g drained) — $0.98 |
| 34 | Pork loin chops (boneless) | Meat & poultry | 4.48¢ | $20.34 | 22.3 | 21.55 g | per lb — $4.39 |
| 35 | Canned chickpeas | Canned beans | 4.55¢ | $20.62 | 22 | 4.92 g | 15.5 oz can — $0.98 |
| 36 | Canned pink salmon | Fish (canned & frozen) | 4.63¢ | $21.00 | 21.6 | 19.68 g | 14.75 oz can — $3.80 |
| 37 | Quinoa (dry) | Grains & pantry | 4.65¢ | $21.10 | 21.5 | 14.12 g | 2 lb bag — $5.97 |
| 38 | Frozen tilapia fillets | Fish (canned & frozen) | 4.78¢ | $21.70 | 20.9 | 20.08 g | 4 lb bag — $17.47 |
| 39 | Frozen green peas | Frozen vegetables | 4.9¢ | $22.23 | 20.4 | 5.22 g | 32 oz bag — $2.32 |
| 40 | Sardines (canned in oil, drained) | Fish (canned & frozen) | 4.95¢ | $22.46 | 20.2 | 24.62 g | 3.75 oz can (92 g drained) — $1.12 |
| 41 | Cheddar cheese | Eggs & dairy | 5.49¢ | $24.92 | 18.2 | 22.87 g | per lb — $5.69 |
| 42 | Frozen shelled edamame | Soy & plant proteins | 5.56¢ | $25.20 | 18 | 11.22 g | 12 oz bag — $2.12 |
| 43 | Ground turkey (93/7) | Meat & poultry | 6.41¢ | $29.08 | 15.6 | 18.73 g | 1 lb roll — $5.46 |
| 44 | Almonds | Nuts & seeds | 6.76¢ | $30.65 | 14.8 | 21.15 g | 16 oz bag — $6.47 |
| 45 | Tofu (extra firm) | Soy & plant proteins | 7.35¢ | $33.35 | 13.6 | 9.98 g | 14 oz block — $2.92 |
| 46 | Tempeh | Soy & plant proteins | 7.58¢ | $34.36 | 13.2 | 20.29 g | 8 oz pack — $3.48 |
| 47 | Ground beef (80/20) | Meat & poultry | 8.7¢ | $39.44 | 11.5 | 17.17 g | per lb — $6.75 |
| 48 | Ground beef (93/7) | Meat & poultry | 9.09¢ | $41.24 | 11 | 20.85 g | per lb — $8.62 |
| 49 | Bacon | Meat & poultry | 10.87¢ | $49.30 | 9.2 | 13.66 g | per lb — $6.71 |
The cheapest protein in each category
If you're not about to build a diet out of dried pinto beans, this is the more useful cut: the best value in each aisle you were going to shop anyway.
| Category | Best value | Cents per gram | $ per lb of protein |
|---|---|---|---|
| Dried beans & lentils | Pinto beans (dry) | 1.02¢ | $4.63 |
| Grains & pantry | Whole wheat flour | 1.04¢ | $4.72 |
| Nuts & seeds | Peanut butter | 1.97¢ | $8.95 |
| Meat & poultry | Chicken drumsticks (bone-in) | 1.99¢ | $9.02 |
| Eggs & dairy | Eggs (large) | 2.91¢ | $13.19 |
| Canned beans | Canned black beans | 3.32¢ | $15.07 |
| Soy & plant proteins | TVP (textured vegetable protein) | 4.27¢ | $19.38 |
| Fish (canned & frozen) | Canned tuna (chunk light, in water) | 4.46¢ | $20.25 |
| Frozen vegetables | Frozen green peas | 4.9¢ | $22.23 |
How to read this ranking
Cost per gram, and why bone matters
Take the package price, divide by the grams inside, and you get a price per 100 g. Divide that by the protein in 100 g and you get the cost of one gram of protein. The step most rankings skip is the edible fraction. You pay for the bone in a drumstick and then put it in the bin, so pricing bone-in meat by package weight makes it look better than it is. 3 of the 49 foods here carry a refuse adjustment from USDA data before the division happens, which is why some cuts sit lower than you'll see elsewhere.
Per gram or per pound
They're the same number wearing different clothes. A pound of pure protein is 453.6 grams, so Pinto beans (dry) at 1.02 cents a gram works out to $4.63 for a pound of actual protein. Nobody sells a pound of pure protein, which is exactly why the unit is useful for comparing across a shelf of packages that all weigh different things.
What this page deliberately does not tell you
There's no per-calorie column here, and that's not an oversight. Our price study measures protein, fiber and cost; it doesn't carry an energy value for these foods, and we're not going to paste in calorie figures from somewhere else and present them as part of an audited dataset. If you want protein per calorie, get it from a nutrition database that actually measured it.
Cheap protein still has to get eaten
The top of this table is dried legumes and flour, and that is a genuinely accurate answer to the question "what is the cheapest protein per gram". It is not automatically an answer to "what should I buy". Protein quality varies, plant sources are individually short on one amino acid or another, and food nobody in the house will eat costs infinity per gram. The quality-adjusted ranking applies DIAAS scores to the same rows, and the full study explains how everything was priced.
Use the numbers
The CSV behind this page is free to download and reuse with credit. If you'd rather poke at the data interactively, the fiber and protein per dollar calculator sorts and compares the same rows, and the dried beans to canned converter handles the one conversion this table makes you want to do.