Plant-Based Protein: 20 Best Sources (Chart) & How Much
The best plant-based protein sources with a per-serving chart, how to combine them, whether they build muscle, protein powders and a sample day.

Plant-based protein is protein from plants: beans, lentils, chickpeas, soy, tofu, nuts, seeds and grains. It matters if you’re vegetarian or vegan, if you’re trying to eat less meat, or if you just want more variety. But is it as good as protein from meat? And where do you get enough?
The short answer: the best sources are soy (tofu, tempeh, edamame), seitan, beans, lentils and chickpeas – each gives 18–25 g of protein per serving. Nuts and seeds help too, but they’re high in calories. Plant protein is a bit harder to absorb, so it’s good to eat a little more. If you eat enough, you build muscle just as well as with animal protein. And large studies show that people who eat more plant protein live longer on average.
20 best plant-based protein sources
The chart shows the protein in a typical serving, from most to least. Beans and grains are cooked.
| Food | Serving | Protein per serving | Protein per 100 g |
|---|---|---|---|
| Seitan | 3.5 oz (100 g) | 25 g | 25 g |
| Soybeans, cooked | ¾ cup (150 g) | 25 g | 17 g |
| Firm tofu | 5 oz (150 g) | 24 g | 16 g |
| Tempeh | 3.5 oz (100 g) | 20 g | 20 g |
| Lentils, cooked | 1 cup (200 g) | 18 g | 9 g |
| Edamame | 1 cup (155 g) | 18 g | 12 g |
| White beans, cooked | 1 cup (180 g) | 17 g | 10 g |
| Black beans, cooked | 1 cup (170 g) | 15 g | 9 g |
| Chickpeas, cooked | 1 cup (165 g) | 15 g | 9 g |
| Hemp seeds | 3 tbsp (30 g) | 10 g | 32 g |
| Pumpkin seeds | 1 oz (28 g) | 8 g | 30 g |
| Whole wheat bread | 2 slices (70 g) | 8 g | 12 g |
| Quinoa, cooked | 1 cup (185 g) | 8 g | 4.4 g |
| Green peas, cooked | 1 cup (160 g) | 8 g | 5 g |
| Peanuts | 1 oz (28 g) | 7 g | 26 g |
| Peanut butter | 2 tbsp (32 g) | 7 g | 22 g |
| Soy milk | 1 cup (240 ml) | 7 g | 3.3 g |
| Almonds | 1 oz (28 g) | 6 g | 21 g |
| Sunflower seeds | 1 oz (28 g) | 6 g | 21 g |
| Oats | ½ cup dry (40 g) | 5 g | 13 g |
A few things to keep in mind:
- Beans, lentils and peas are the foundation: lots of protein, lots of fiber, little fat, and they’re cheap.
- Nuts and seeds have a lot of protein per 100 g, but also 550–600 calories, so servings are small.
- Seitan is made from wheat gluten, so it’s not for people with celiac disease.
- Oat, almond and rice milks have very little protein (about 1 g per cup or less). Only soy milk comes close to cow’s milk.
To compare with meat, eggs and dairy, see our full chart of high protein foods.
Is plant protein complete?
Protein is made of amino acids. Nine of them are essential: your body can’t make them, so they have to come from food.
- Complete, with all essential amino acids in good amounts: soy (tofu, tempeh, edamame, soy milk), quinoa, buckwheat and hemp seeds.
- Grains (wheat, rice, oats, corn) are low in lysine.
- Beans (beans, lentils, chickpeas) are low in methionine.
The good news: grains and beans fill each other’s gaps. And your body pools amino acids over the day, so you don’t need to combine them in the same meal. Classic pairs: rice and beans, hummus and pita, peanut butter on whole wheat toast, lentil soup with bread.
Plant protein vs animal protein
How well it’s absorbed
Plant protein is digested a bit less easily than protein from meat, eggs and dairy, because it’s bound up with fiber. It also has less leucine, the amino acid that switches on muscle building. That’s why many experts suggest that people who eat only plants get about 10–20% more protein: around 1 g per kg of body weight a day (0.45 g per lb), instead of 0.8 g.
Muscle
If you eat enough, plant protein builds muscle just as well:
- 19 young vegan men and 19 young men who ate meat did 12 weeks of weight training. All of them ate the same amount of protein (1.6 g per kg a day). At the end, they had gained the same amount of muscle and the same strength (Hevia-Larraín et al., Sports Medicine, 2021).
- A review of 9 studies compared soy protein with animal protein, including whey, in people doing strength training. It found no difference in muscle mass or strength (Messina et al., International Journal of Sport Nutrition and Exercise Metabolism, 2018).
Long-term health
- A Harvard study followed over 131,000 adults for up to 32 years. For every extra 3% of calories from plant protein, the risk of death was 10% lower. When plant protein replaced processed meat, the risk dropped by 34% (Song et al., JAMA Internal Medicine, 2016).
- A review of 32 studies with over 715,000 people found that those who ate the most plant protein had an 8% lower risk of death and a 12% lower risk of dying from heart disease (Naghshi et al., BMJ, 2020).
These studies show links, not proof. People who eat a lot of beans often have other healthy habits too. But the results fit what we know: beans bring fiber and no cholesterol, while processed meat is linked to heart disease and cancer.
What to watch out for
- Vitamin B12 is found almost only in animal foods. If you eat no meat, fish, eggs or dairy, you need a supplement or fortified foods.
- Iron from plants is harder to absorb. Eat it with vitamin C (bell peppers, tomatoes, citrus) – see our list of foods high in iron.
- Gas and bloating: if you’re not used to beans and lentils, add them slowly. Soak dried beans overnight and rinse canned beans well.
High-protein vegan foods: easy swaps
If you’re vegan or eating less meat, these simple swaps add protein without much effort:
| Instead of | Try | Protein gained |
|---|---|---|
| Almond or oat milk | Soy milk | +6 g per cup |
| Plain rice | Rice with black beans | +15 g per cup of beans |
| Chips as a snack | Roasted chickpeas or edamame | +10–15 g |
| Regular pasta | Lentil or chickpea pasta | +10 g per serving |
| Scrambled eggs | Tofu scramble | Similar, no cholesterol |
| Ground beef in chili | Lentils and beans | Similar, plus fiber |
For more snack ideas, see our list of high-protein snacks.
Plant-based protein powder
Plant protein powders are made mainly from pea, rice, soy or hemp. They can help if you work out and don’t reach your protein goal from food. But you don’t need them.
How to choose:
- Pea and rice blends or soy protein have all the essential amino acids.
- Look for at least 20 g of protein per scoop.
- Pick a short ingredient list with little sugar. Many powders contain sweeteners like sucralose, flavors and thickeners.
- Choose products that are third-party tested (for example, with sports certifications).
If you’re not vegan, whey protein isolate is another option.
A sample day with about 95 g of plant protein
| Meal | What you eat | Protein |
|---|---|---|
| Breakfast | Oatmeal (½ cup dry) with 1 cup soy milk and 3 tbsp hemp seeds | 22 g |
| Snack | ⅓ cup hummus with carrots and bell peppers | 7 g |
| Lunch | Black bean burrito bowl (1 cup beans) with brown rice and salsa | 20 g |
| Snack | 1 oz almonds | 6 g |
| Dinner | 5 oz tofu stir-fry with vegetables and 1 cup quinoa | 32 g |
| Dessert | 2 tbsp peanut butter on an apple | 7 g |
| Total | about 94 g |
For more morning ideas, see our healthy breakfast ideas. And for a long-term way of eating with lots of beans and little meat, the Mediterranean diet has the strongest evidence.
Find out how much protein you eat – no math. With NutriSmart, you snap a photo of what you eat and the app counts protein, calories, carbs and fat, and shows how much you have left for the day.Get the app free
The bottom line
Plant-based protein can cover everything you need, as long as you eat enough and mix it up. Beans and soy are the foundation: tofu, tempeh, beans, lentils and chickpeas give 15–25 g of protein per serving. Nuts and seeds fill in the gaps. Eat a little more protein than you would with meat, take vitamin B12 if you eat no animal foods, and mix grains and beans over the day. Your muscles and your long-term health will thank you.
FAQ
What are the best sources of plant-based protein?
Per serving: tofu, soybeans, seitan, tempeh, beans, lentils, chickpeas and edamame – each gives 18–25 g of protein per serving. Hemp seeds, pumpkin seeds, peanuts and almonds are also high in protein, but they're high in calories too, so servings are smaller.
Can you build muscle with plant-based protein?
Yes, if you eat enough. In one study, young vegan men and young men who ate meat did 12 weeks of weight training on the same amount of protein (1.6 g per kg of body weight). They gained the same amount of muscle and strength. A review of several studies found the same for soy protein compared with animal protein.
Is plant protein complete?
Some is: soy (tofu, tempeh, edamame), quinoa, buckwheat and hemp seeds have all the essential amino acids in good amounts. Others are low in one: grains are low in lysine, and beans are low in methionine. If you eat both grains and beans during the day, your body gets everything it needs. You don't have to combine them in the same meal.
Is plant protein healthier than animal protein?
Large studies show that people who eat more plant protein live longer on average and have less heart disease. The biggest benefit appears when plant protein replaces processed meat and red meat. Protein from fish, eggs and dairy doesn't carry the same risks.
Which plant-based protein powder is best?
Pea and rice blends have all the essential amino acids, and so does soy protein powder. Look for at least 20 g of protein per scoop, a short ingredient list and little added sugar or sweetener. Powders help if you can't reach your protein goal from food, but you don't need them.
How much protein do I need on a plant-based diet?
Adults need about 0.8 g of protein per kg of body weight a day (0.36 g per lb) – about 54 g for a 150 lb person. Because plant protein is a bit harder to absorb, many experts suggest a little more for people who eat only plants, around 1 g per kg (0.45 g per lb). If you do strength training, aim for 1.4–2 g per kg.


