How to Gain Weight as a Vegetarian

Affiliate disclosure (FTC): WeightGain.us is reader-supported. Some links in this guide may be affiliate links, meaning we could earn a small commission if you buy through them — at no extra cost to you. This never changes our recommendations, which are based on published evidence.

Gaining weight as a vegetarian is entirely doable — dairy, eggs, legumes, nuts, whole grains and healthy oils make hitting a calorie surplus straightforward without any meat. The two things to plan for are getting enough total calories and enough protein from plant and dairy sources. Here are the best high-calorie vegetarian foods, a full sample day, shake ideas and a grocery list.

Key takeaways
  • Weight gain depends on a calorie surplus, not on eating meat.
  • Dairy, eggs, legumes, nuts, grains and oils supply all the calories and protein you need.
  • Aim for 0.7–1 g of protein per pound from yogurt, eggs, cottage cheese, beans and tofu.
  • Lean on calorie-dense foods and a daily shake so fiber doesn't fill you up first.

Can you gain weight as a vegetarian?

Absolutely. Weight gain depends on a calorie surplus, not on eating meat. A lacto-ovo vegetarian diet that includes dairy and eggs has all the calorie-dense, protein-rich foods you need — cheese, whole milk, Greek yogurt, eggs, legumes, nuts, seeds, nut butters, oats and oils. The Academy of Nutrition and Dietetics confirms that well-planned vegetarian diets are healthful and nutritionally adequate at every life stage, including for those building muscle.

The only real adjustments versus an omnivore plan are being deliberate about protein and leaning on calorie-dense plant foods so the higher fiber of a vegetarian diet doesn't fill you up before you hit your target. Run the calorie calculator to set your surplus, then follow the food plan below.

Hitting your protein target

Aim for roughly 0.7–1 gram of protein per pound of body weight. Vegetarian protein sources that also carry good calories include Greek yogurt (~20 g per cup), eggs (~6 g each), cottage cheese, lentils and beans (~18 g per cooked cup), tofu and tempeh, edamame, and dairy or plant protein powder. Combining grains with legumes across the day covers all essential amino acids. A scoop of whey or pea protein in a shake is an easy way to top up.

Best high-calorie vegetarian foods

FoodWhy it helps~Calories
Nut buttersCalorie-dense fat + protein~190 / 2 tbsp
Whole milk & Greek yogurtCalories + protein + calcium~150–230 / serving
CheeseEnergy-dense, easy to add~110 / oz
Olive oil & avocadoMost calorie-dense foods~120 / tbsp oil
Lentils, beans, chickpeasProtein + carbs + fiber~230 / cup
Oats, rice, pasta, breadBulk of the calories~150–200 / serving
Nuts, seeds, dried fruitSnackable calories~200 / 1/4 cup

A vegetarian sample day (~3,000 kcal)

MealFood~Cal
BreakfastOats cooked in whole milk with peanut butter, banana and walnuts~650
SnackGreek yogurt with granola and honey~400
LunchLentil and rice bowl with cheese, avocado and olive oil~750
SnackTrail mix + a glass of whole milk~400
DinnerBean-and-cheese burrito or paneer curry with rice~800

Vegetarian gainer shakes

A blended shake is the easiest way to add calories. Try whole milk, Greek yogurt, banana, oats, peanut butter and whey or pea protein for ~900 calories. More recipes in our weight gain shakes and smoothie recipes.

Grocery list

If you avoid all animal products, see our dedicated guide on how to gain weight as a vegan.

The bottom line

Gaining weight as a vegetarian is straightforward once you build meals around calorie-dense plant and dairy foods rather than salads and steamed vegetables. Hit a consistent surplus, be deliberate about protein, and add a daily shake, and a well-planned vegetarian diet will build muscle and add weight just as effectively as any other.

Informational, not medical advice. This article is general educational information, not a substitute for professional medical or nutrition advice. If you are underweight, have lost weight unintentionally, have a food allergy or any health condition, consult a doctor or registered dietitian before changing your diet. Operator: Mustafa Bilgic.

Frequently asked questions

Can you gain weight on a vegetarian diet?
Yes. Weight gain depends on a calorie surplus, not on eating meat. Dairy, eggs, legumes, nuts, whole grains and oils provide all the calorie-dense, protein-rich foods needed to gain weight and build muscle on a vegetarian diet.
What are the best high-calorie vegetarian foods for weight gain?
Nut butters, whole milk, Greek yogurt, cheese, olive oil, avocado, lentils, beans, oats, rice, nuts and dried fruit. These pack a lot of calories and, in many cases, protein into small portions.
How do vegetarians get enough protein to build muscle?
From Greek yogurt, eggs, cottage cheese, lentils, beans, tofu, tempeh, edamame and dairy or plant protein powder. Combining grains with legumes across the day supplies all essential amino acids; aim for 0.7 to 1 gram per pound of body weight.
Is it harder to gain weight as a vegetarian?
Only slightly, because vegetarian diets tend to be higher in fiber, which is filling. Leaning on calorie-dense foods like nut butters, oils, dairy and a daily shake makes hitting your calorie target straightforward.
What vegetarian shake helps with weight gain?
Blend whole milk, Greek yogurt, banana, oats, peanut butter and a scoop of whey or pea protein for around 900 calories and 35 grams of protein, an easy way to add a big chunk of your daily surplus.

Keep reading

References

Sources: Academy of Nutrition and Dietetics · USDA FoodData Central · Mayo Clinic — Healthy weight gain · NIH/NIDDK — Weight Management · ISSN — Protein & Exercise Position Stand.