Macros
Vegetarian Protein Sources: 20+ High Protein Foods With Numbers
The best vegetarian protein sources are soy foods (tofu, tempeh, edamame, soy chunks), dairy (Greek yogurt, cottage cheese, paneer, milk), eggs if you eat them, and pulses such as lentils, chickpeas and kidney beans. A cup of cooked lentils has about 18 g of protein and 100 g of paneer about 18 g, so reaching 80–100 g a day without meat is very doable when you include a protein source at every meal.
How much protein do vegetarians need?
Vegetarians need the same amount of protein as anyone else. The RDA for healthy adults is 0.8 g per kilogram of body weight a day, and people who are active, strength training or losing weight often aim for roughly 1.2–2.0 g per kg. For a 65 kg (143 lb) person, that is about 52 g at the RDA and roughly 78–130 g at the higher range. Our guide to how much protein you need a day explains how to pick a number.
The challenge for many vegetarians is not that plant and dairy proteins are inadequate; it is that typical vegetarian meals are built around grains, with protein as a side. A plate of rice with a thin dal, or pasta with tomato sauce, might give only 10–15 g. Making a protein-rich food the center of each meal is usually what closes the gap.
High protein vegetarian foods: the table
Values are approximate and vary by brand, variety and preparation. For packaged foods like tofu, soy milk, yogurt and paneer, the label on your pack is the best source.
| Food (portion) | Protein | Calories |
|---|---|---|
| Soy foods | ||
| Soy chunks, dry (25 g / ≈ 0.9 oz) | ≈ 12–13 g | ≈ 85–90 |
| Tempeh (100 g / 3.5 oz) | ≈ 19–20 g | ≈ 190 |
| Edamame, shelled, cooked (1 cup) | ≈ 17–18 g | ≈ 190 |
| Firm tofu (100 g / 3.5 oz) | ≈ 15–17 g | ≈ 120–145 |
| Soy milk, unsweetened (1 cup / 240 ml) | ≈ 7–8 g | ≈ 80–100 |
| Dairy and eggs | ||
| Cottage cheese, 2% fat (1 cup) | ≈ 24 g | ≈ 185 |
| Paneer (100 g / 3.5 oz) | ≈ 18 g | ≈ 265–320 |
| Greek yogurt, plain non-fat (170 g / 6 oz) | ≈ 17 g | ≈ 100 |
| Eggs (2 large) | ≈ 12.5 g | ≈ 145 |
| Milk (1 cup / 240 ml) | ≈ 8 g | ≈ 85–150 |
| Pulses (beans, lentils, peas) | ||
| Lentils, cooked (1 cup) | ≈ 18 g | ≈ 230 |
| Kidney beans (rajma), cooked (1 cup) | ≈ 15 g | ≈ 225 |
| Chickpeas (chole), cooked (1 cup) | ≈ 14.5 g | ≈ 270 |
| Whole moong (mung beans), cooked (1 cup) | ≈ 14 g | ≈ 210 |
| Roasted chana (30 g / 1 oz) | ≈ 5–6 g | ≈ 110–120 |
| Nuts and seeds | ||
| Hemp seeds, hulled (30 g / ≈ 3 tbsp) | ≈ 9–10 g | ≈ 165 |
| Pumpkin seeds (28 g / 1 oz) | ≈ 8–9 g | ≈ 160 |
| Peanuts (28 g / 1 oz) | ≈ 7 g | ≈ 160–165 |
| Almonds (28 g / 1 oz) | ≈ 6 g | ≈ 165 |
| Grains | ||
| Quinoa, cooked (1 cup) | ≈ 8 g | ≈ 220 |
| Whole-wheat roti (1 medium, no ghee) | ≈ 3 g | ≈ 70–120 |
Dry soy chunks are among the most concentrated: roughly 50 g of protein per 100 g dry. They swell to two or three times their size when soaked, so a 25 g dry portion makes a generous serving in a curry or pulao.
Grains are not usually thought of as protein foods, but they add up. Three rotis or a cup and a half of rice over a day can add 8–10 g, which is worth counting.
Indian vegetarian protein sources
Indian vegetarian cooking already has a strong protein toolkit. The trick is usually portion and balance rather than new ingredients:
- Dal, rajma and chole. A cup of cooked lentils gives about 18 g of protein, but many home dals are thin, so a katori may hold less than a cup of actual lentils. Thicker dal, or a bigger katori, makes a real difference.
- Paneer. About 18 g of protein per 100 g, but also energy-dense at roughly 265–320 kcal per 100 g depending on fat. Paneer bhurji, tikka and palak paneer are easy ways to use it; low-fat paneer keeps the protein with fewer calories.
- Curd and hung curd. Regular curd has a few grams of protein per serving. Straining it into hung curd concentrates the protein, much like Greek yogurt.
- Soy chunks (nutrela). Very high in protein for the calories and easy to add to pulao, curries and biryani.
- Besan and moong dal batters. Chillas, dhokla and cheela turn pulses into breakfast or snacks. Our list of high protein breakfasts includes several.
- Sprouts and roasted chana. Cheap, portable snacks that add protein and fiber between meals.
For calorie ranges on everyday dishes like dal, rajma and paneer curries, see our guide to calories in Indian food.
Which vegetarian foods give the most protein per calorie?
If you are eating in a calorie deficit, it helps to know which foods deliver protein without many extra calories. Using the table above, here is roughly how they compare per 100 kcal:
- About 13–17 g protein per 100 kcal: plain non-fat Greek yogurt, dry soy chunks, cottage cheese.
- About 8–12 g per 100 kcal: firm tofu, tempeh, edamame, eggs, unsweetened soy milk.
- About 5–8 g per 100 kcal: lentils, kidney beans, moong, chickpeas, paneer, milk.
- About 3–6 g per 100 kcal: nuts, seeds, quinoa, roti.
None of this makes the lower tiers less worthwhile. Pulses bring a lot of fiber along with their protein, and nuts and seeds bring healthy fats and minerals. Our guide to how much fiber you need a day shows how pulses help on that front too. It simply means that if protein is your priority and calories are tight, dairy and soy foods do the most work per calorie.
Tip: Paneer and nuts are nutritious but energy-dense. If your calories feel tight, keep them, but pair them with lighter protein sources such as tofu, Greek yogurt or a bigger portion of dal.
Combining vegetarian proteins across the day
Protein is made of amino acids, nine of which your body cannot make and needs from food. Soy, dairy and eggs contain all nine in useful amounts. Many other plant proteins are lower in one or two: pulses tend to be lower in methionine, and grains tend to be lower in lysine.
The good news is that these gaps cover each other, and you do not need to combine them on the same plate. Eating a variety of protein sources over the course of the day is enough. Traditional pairings like dal and rice, rajma chawal, hummus with pita, or beans with tortillas already do this naturally.
A practical approach:
- Include a protein-rich food at every meal and most snacks, aiming for about 20–30 g per meal if your daily target is around 80–120 g.
- Rotate between soy, dairy, pulses and eggs (if you eat them) through the week.
- Let grains, nuts and seeds top up the total rather than carry it.
Sample day: about 100 g of vegetarian protein
Here is one way a lacto-vegetarian day could reach roughly 100 g of protein. Every number is approximate, and actual totals depend on brands, portions and recipes.
| Meal | What it could look like | Protein (approx.) |
|---|---|---|
| Breakfast | 200 g (7 oz) plain non-fat Greek yogurt or hung curd, fruit, 1 tbsp chia seeds | ≈ 22 g |
| Mid-morning | Chai or coffee made with 1 cup of milk | ≈ 8 g |
| Lunch | 1 cup rajma, 1 cup cooked rice, salad | ≈ 19 g |
| Snack | 40 g (1.4 oz) roasted chana | ≈ 7–8 g |
| Dinner | 100 g paneer bhurji or tikka, 2 rotis, 1 cup thick dal (≈ 1 cup cooked lentils) | ≈ 42 g |
| Day total | ≈ 98–99 g | |
Depending on the milk, the paneer and the oil used in cooking, this day comes to roughly 1,750–1,950 kcal. That suits some people as it is; others would scale portions up or down. To lower calories while keeping protein, use low-fat paneer or swap it for 150 g of firm tofu, and use non-fat milk. To raise protein further, add 25 g of dry soy chunks to the rajma (about 12 g more) or a second serving of yogurt.
Good to know: Thin, watery dal can hold much less protein than the "1 cup cooked lentils" figure. If your dal is thin, count it as less, or make the lentils a bigger part of the bowl.
Protein without meat or dairy
If you avoid dairy and eggs as well as meat, soy foods become the backbone of your protein, with pulses close behind. A vegan version of the sample day could look like this:
- Breakfast: tofu scramble with 150 g firm tofu (≈ 23–25 g) and toast.
- Mid-morning: coffee or chai with 1 cup unsweetened soy milk (≈ 7–8 g).
- Lunch: rajma or chole with rice (≈ 18–19 g).
- Snack: 1 cup shelled edamame (≈ 17–18 g) or roasted chana with pumpkin seeds.
- Dinner: 1 cup of lentil dal with 25 g dry soy chunks and 2 rotis (≈ 35 g).
That lands at roughly 100 g or a little more. Seitan (wheat gluten) is another very high-protein option many vegans use; protein varies by product, so check the label. Vegans should also plan for nutrients that are mainly found in animal foods, such as vitamin B12, and it is worth discussing supplements with a doctor or dietitian.
Tracking protein as a vegetarian
Tracking for a week or two is often the quickest way to see where your protein actually comes from. Many vegetarians are surprised to find that breakfast and snacks contribute very little, and that a few small swaps (Greek yogurt instead of regular curd, a protein-rich snack, a thicker dal) close most of the gap. If you are also tracking carbs and fat, our guide on how to count macros shows how protein fits in.
Thymi supports a vegetarian or vegan diet style and gives you a protein target based on your body, activity, goal and pace. You can log a plate of rajma chawal by photo or by typing it, and the protein gauge shows at a glance how much is left for the day.
Frequently asked questions
What vegetarian food has the most protein?
Per portion, some of the highest are cottage cheese (about 24 g per cup), tempeh (about 19–20 g per 100 g), paneer (about 18 g per 100 g), cooked lentils (about 18 g per cup), shelled edamame (about 17–18 g per cup) and Greek yogurt (about 17 g per 170 g). Dry soy chunks have about 50 g of protein per 100 g dry.
How can vegetarians get 100 g of protein a day?
Include a protein-rich food at every meal and snack. For example, Greek yogurt at breakfast, milk in tea or coffee, rajma with rice at lunch, roasted chana as a snack, and paneer with dal and roti at dinner add up to roughly 100 g.
What are the best Indian vegetarian protein sources?
Dal and other lentils, rajma, chole, moong, paneer, curd and hung curd, soy chunks, besan, roasted chana and sprouts are all good sources. Thicker dal and larger portions of pulses make the biggest difference for most people.
Do vegetarians need to combine proteins at each meal?
No. Eating a variety of protein sources across the day is enough to cover all the essential amino acids. Pairings like dal and rice are traditional and helpful, but they do not need to be on the same plate.
Is paneer or tofu better for protein?
They are similar in protein, at roughly 15–18 g per 100 g, but paneer is higher in calories at about 265–320 kcal per 100 g, compared with roughly 120–145 kcal for firm tofu. Both are good choices; tofu gives more protein per calorie.
This article is general information for healthy adults, not medical or nutritional advice. Talk to a doctor or registered dietitian before changing how you eat, especially if you are pregnant or breastfeeding, have or have had an eating disorder, have a medical condition, or take medication.