Food Deep Dives/Apr 12, 2026/4 min read
The best sources of protein for vegetarians (ranked by usefulness)
Eggs and dairy do the heavy lifting. Plant proteins fill the rest. Here's the ranked list.
Vegetarian (lacto-ovo) diets have access to high-quality protein sources that vegan diets don't. Eggs and dairy do the heavy lifting; plants supplement.
Here's the ranked list of vegetarian protein sources by usefulness.
The criteria
Each protein source ranked on:
- Protein per typical serving
- Cost per gram of protein
- Convenience and availability
- Amino acid completeness
- Nutritional density
- Versatility
Tier 1: The workhorses
1. Eggs.
- 6g protein per large egg
- $0.30-0.50 each
- Fast (3-5 min cooked)
- Complete protein
- Easily portable when hard-boiled
- Versatile (any cuisine)
Eggs are the single most useful vegetarian protein source. If you're vegetarian and not eating eggs daily, you're probably missing protein.
2. Greek yogurt (plain).
- 17-20g protein per 200g serving
- ~$1.00 per serving
- No prep
- High in calcium and B12
- Versatile (sweet or savory)
Plain Greek yogurt > flavored Greek yogurt. The "fruit on the bottom" varieties are mostly added sugar.
3. Cottage cheese.
- 12g protein per 1/2 cup, 24g per cup
- ~$0.50-0.80 per serving
- No prep
- Good casein-protein satiety
- Versatile (sweet or savory)
Cottage cheese is one of the cheapest gram-for-gram protein sources available.
4. Whey or casein protein powder.
- 25g protein per scoop
- ~$0.40-0.80 per scoop
- 30 seconds to prepare
- Highest-quality protein available
- Useful supplement, not a meal
Useful when whole-food protein is hard to fit. Don't make it the primary source.
Tier 2: The reliable supplements
5. Tofu (firm).
- 17-20g protein per 1 cup (170g)
- $2-3 per block (multiple servings)
- 5-15 min prep
- Versatile across cuisines
- Soy is a complete protein
Tofu is the most useful plant-based protein source. Vegetarians who don't eat tofu are missing options.
6. Tempeh.
- 15g protein per 100g
- $3-4 per 8 oz package
- 5-10 min prep
- More fermented texture/taste than tofu
- Higher fiber than tofu
Tempeh is a nutritional powerhouse but has a stronger flavor than tofu (which can be a feature or limitation).
7. Edamame.
- 18g protein per 1 cup shelled
- $3-4 per 1-lb bag (frozen)
- 5 min prep (boil from frozen)
- Snackable
- Whole soy, fiber-rich
Underrated as a snack and side dish.
8. Lentils.
- 18g protein per cup cooked
- $1-2 per pound dried (multiple servings)
- 20-30 min cook from dry; 5 min if canned
- Inexpensive
- High fiber and iron
Lentils are the cheapest substantive protein in the supermarket.
Tier 3: The supporting cast
9. Beans (black, white, kidney, etc.).
- 14-16g protein per cup cooked
- $1-2 per pound dried
- Cheap and versatile
- Often paired with grains (which complete the amino acid profile)
10. Chickpeas.
- 14g protein per cup cooked
- Cheap and shelf-stable
- Versatile (hummus, salads, roasted snacks)
- Complete protein when paired with grains
11. Quinoa.
- 8g protein per cup cooked
- $4-6 per pound
- Complete protein (one of few plants)
- Cooks in 15 min
- Carb-grain hybrid
Useful as a grain that contributes to protein.
12. Cheese (variety).
- 6-8g protein per ounce
- High calorie density
- Convenient
- Range of flavors
Best as a topping or accompaniment, not primary protein.
Tier 4: The supplemental
13. Nuts and seeds.
- 5-8g protein per ounce
- Calorie-dense (160-180 cal/ounce)
- Useful for adding to other meals
Don't try to hit protein targets primarily from nuts; the calorie cost is too high.
14. Nutritional yeast.
- 8g protein per 2 tablespoons
- B12 fortified (great for vegetarians)
- Adds savory flavor
- Useful for sprinkling on pasta, popcorn, salads
15. Whole grains.
- 5-8g protein per cup cooked (varies)
- Modest contribution
- Pair with legumes for complete amino acid profile
The daily template
A vegetarian day hitting 100g protein could look like:
- Breakfast: 3-egg scramble + Greek yogurt = 30g
- Lunch: Hummus + chickpea salad with feta = 25g
- Dinner: Tofu stir-fry over quinoa = 30g
- Snack: Cottage cheese + nuts = 18g
Total: 103g protein. All from real food, no powder required.
The 100g protein cost analysis
Cost of 100g protein from various vegetarian sources:
- Eggs: $5
- Greek yogurt: $5
- Cottage cheese: $2.50
- Tofu: $4
- Tempeh: $6
- Lentils (dried): $1
- Whey protein powder: $2
- Cheese: $8
Lentils are the cheapest option. Whey is the cheapest non-bulk option. Cottage cheese is the cheapest dairy option.
The complete-amino-acid math
The "vegetarians need to combine proteins at every meal" advice is outdated. What matters:
- Daily intake of all essential amino acids
- Variety across the day (eggs + dairy + plant proteins)
- Soy products (tofu, tempeh, edamame) are complete on their own
- Quinoa is complete on its own
- Most legume + grain combinations cover all amino acids
If your daily eating includes some combination of dairy, eggs, soy, legumes, and grains, you're getting complete protein.
The "vegetarians don't need protein supplements" myth
Many vegetarians (especially athletes, older adults, those in deficit) benefit from:
- Whey protein for convenience
- Plant protein blends for vegan-leaning days
- Greek yogurt as the protein anchor
There's no special virtue in "natural food only" if it means you're chronically protein-inadequate.
What about meat alternatives?
Plant-based meat substitutes (Beyond, Impossible, etc.):
- Decent protein (15-20g per serving)
- Higher cost than tofu/tempeh
- Highly processed
- Useful for transitioning vegetarians or for variety
Not a daily staple for most vegetarians; useful occasionally.
The honest summary
Lacto-ovo vegetarians have plenty of high-quality protein options. Eggs and Greek yogurt are the workhorses. Tofu, tempeh, lentils, beans, and cottage cheese fill the rest.
A vegetarian diet that includes 4-5 of these sources daily easily hits 100g+ protein.
Vegetarian protein isn't hard. It just requires deliberate inclusion of a few staples.
Try the app
CalorieScan AI is the photo-first calorie tracker.
Free on iOS. Snap a meal, get the macros, get on with your life.
Download free on iOS