skip to content

klyo journal

How to Gain Weight as a Vegetarian: Closing the Calorie Gap on a Plant-Based Diet

Struggling to gain weight as a vegetarian? This guide shows how to close the calorie gap, hit your protein, and build real muscle without meat.

7 min read

Gaining weight on a vegetarian diet is absolutely possible — but most vegetarian hard gainers run into the same invisible problem: they eat what feels like a huge amount of food, and the scale doesn’t move. The reason is almost always a hidden calorie gap. Plant-based diets tend to include a lot of high-volume, low-calorie foods like vegetables, salads, and legume-heavy dishes that fill your stomach before they fill your daily target. If you’re naturally skinny and trying to build muscle without meat, the fix isn’t to eat more of the same foods — it’s to understand which vegetarian foods actually deliver the calories you need.

Why Vegetarians Often Have a Bigger Hidden Gap

The calorie gap is the difference between what you actually eat and what your body needs to grow. Most hard gainers underestimate this gap by 300 to 600 calories a day — and vegetarians are especially prone to it, for a structural reason.

Vegetables, legumes, and whole grains are high in fiber and water, both of which slow digestion and trigger fullness signals well before you’ve reached your calorie target. A plate of lentil soup with a large salad might feel substantial, but it can land under 600 calories. Contrast that with a plate built around eggs, cheese, and whole-grain bread drizzled with olive oil — smaller in physical volume, but close to 900 calories.

The problem isn’t that vegetarian food is bad for building muscle. It’s that the typical vegetarian plate is heavy on volume and light on energy density. Seeing your gap — and closing it with the right foods — is the entire game.

Set Your Real Calorie Target First

Before you change what you eat, know your number. Use the Mifflin-St Jeor formula to estimate your total daily energy expenditure based on your height, weight, age, and activity level. For most active guys in their twenties and thirties, maintenance falls between 2,400 and 3,000 calories. Then add 250 to 500 calories on top for a gaining surplus. That’s your daily target.

A healthy rate of gain is roughly 0.25 to 0.5 percent of your bodyweight per week. For a 160-pound guy, that’s about 0.4 to 0.8 pounds per week. If the scale isn’t moving after two weeks of consistently hitting your target, add another 200 to 300 calories and reassess.

  • Use Mifflin-St Jeor to estimate your daily maintenance calories
  • Add 250 to 500 calories to get your gaining target
  • Aim for 0.25 to 0.5% of bodyweight gained per week
  • If nothing moves after two weeks, add 200 to 300 calories more

Getting Enough Protein Without Meat

Protein is where vegetarian hard gainers worry most — and for good reason. The research supports 1.6 to 2.2 grams of protein per kilogram of bodyweight per day when you’re actively training. For a 70-kilogram (154-pound) guy, that’s roughly 112 to 154 grams of protein daily. See how much protein you actually need to build muscle for the full breakdown.

Vegetarians who eat eggs and dairy have access to two of the most complete, bioavailable protein sources in any diet. One cup of Greek yogurt delivers 17 to 20 grams. Two eggs add 12 grams. One cup of cottage cheese hits 25 grams. Layer in lentils, chickpeas, tofu, tempeh, and edamame and 130 grams per day is very achievable.

  • Greek yogurt (plain, full-fat): 17-20g protein per cup
  • Cottage cheese: 25g protein per cup
  • Eggs: 6g protein each
  • Firm tofu: about 20g protein per 200g serving
  • Tempeh: 30g protein per cup cooked
  • Lentils: 18g protein per cup cooked
  • Chickpeas: 15g protein per cup cooked
  • Edamame: 17g protein per cup
  • Whey protein powder (derived from dairy): 20-25g per scoop

Build Meals Around Calorie-Dense Vegetarian Foods

The game-changer for any vegetarian trying to bulk is shifting from volume-first thinking to energy-density thinking. The foods below have high calorie-to-volume ratios, meaning you can hit your surplus without your stomach giving up by early evening.

Dietary fat is the most calorie-dense macronutrient at 9 calories per gram, compared to 4 for protein and carbs. This makes full-fat dairy, nuts, nut butters, and oils your best lever. Two tablespoons of peanut butter add nearly 190 calories. A tablespoon of olive oil drizzled over pasta adds 120. These are small physical additions with a large caloric impact, and they can be layered into almost any vegetarian meal.

  • Peanut butter and almond butter: ~190 calories per 2 tablespoons
  • Whole milk: 150 calories per cup, swap in wherever water or low-fat milk is used
  • Full-fat Greek yogurt and cottage cheese: protein plus fat in one food
  • Cheese: ~110 calories per ounce, easy to add to any dish
  • Avocado: about 250 calories per fruit, rich in monounsaturated fat
  • Olive oil: 120 calories per tablespoon, works on everything
  • Whole eggs: one of the most complete foods for hard gainers
  • Oats: ~300 calories per cup dry, a high-calorie breakfast base
  • Mixed nuts and trail mix: 160 to 200 calories per handful

Let Liquid Calories Do the Heavy Work

The most practical tool for a vegetarian hard gainer is a high-calorie shake. Liquids bypass the bulk and satiety signals that solid food triggers, so you can add 600 to 800 calories in a few minutes without ever feeling stuffed. This matters most when your appetite hits a wall in the afternoon.

A simple setup: blend one cup of whole milk, one cup of dry oats, two tablespoons of peanut butter, one banana, and a scoop of whey protein. That comes to roughly 750 to 850 calories and 50 to 55 grams of protein. Drink it as a second breakfast or an afternoon top-up and your daily numbers shift significantly. For more ideas, see liquid calories and weight gain smoothies.

If you eat fully plant-based, swap the milk for oat or soy milk (which have more calories than almond milk) and use a plant-based protein powder. The calorie count takes a small hit, but an extra spoonful of nut butter closes it. For a fuller list of plant-friendly options, high-calorie vegan foods for weight gain covers the full range.

Track the Gap, Close It, and Repeat

The vegetarian calorie gap is easy to underestimate because the meals feel hearty. A big stir-fry with tofu and rice looks like a lot of food. It might land at 600 calories — which is fine for one meal, but not enough on its own if your target is 3,000. You can only close the gap if you can see it.

This is where logging pays off. Track what you eat for at least two weeks and compare it to your calculated target every day. For vegetarian hard gainers specifically, klyo calculates your daily calorie goal, lets you log a meal by snapping a photo or typing a quick sentence about what you ate, and surfaces a Quick Wins list of calorie-dense snacks ranked by density when you’re behind for the day. That last feature matters most on a vegetarian diet, where the gap often surfaces at 5pm rather than in the morning.

Even if you use a different method, the habit is the same: know your number, log what you eat, and compare them daily. Most vegetarian hard gainers who start tracking discover they were 400 to 700 calories short every single day without knowing it.

One more tool worth adding: creatine monohydrate. It’s vegan-friendly and has solid evidence behind it for strength and muscle gains. Vegetarians tend to have lower baseline creatine stores than meat-eaters, since dietary creatine comes almost entirely from animal muscle. Three to five grams per day is a safe, inexpensive addition for most healthy adults — consult your doctor if you have any kidney concerns. The bigger picture: gaining weight as a vegetarian is a food structure problem, not a biology problem. Build plates that hit your daily surplus, track the gap, and close it consistently. The muscle follows.

Frequently asked questions

Can you gain weight as a vegetarian?

Yes. Gaining weight requires eating more calories than you burn, and vegetarian foods include plenty of calorie-dense options like eggs, full-fat dairy, nuts, nut butters, olive oil, and whole grains. The challenge is that many plant-based staples are high in fiber and volume, which can fill you up before you hit your calorie target. Tracking your intake helps find and close that gap.

How much protein do vegetarians need to build muscle?

The evidence supports 1.6 to 2.2 grams of protein per kilogram of bodyweight per day for people who lift. Vegetarians can reach this range through eggs, Greek yogurt, cottage cheese, tofu, tempeh, lentils, chickpeas, and whey protein powder. Spreading protein across three to four meals helps your body use it more effectively.

What are the best vegetarian foods for gaining weight?

The most effective foods for vegetarian hard gainers have a high calorie-to-volume ratio: whole eggs, full-fat dairy (milk, Greek yogurt, cottage cheese, cheese), nut butters, avocado, olive oil, oats, and legumes. High-calorie shakes made with whole milk, oats, and peanut butter are especially useful because they add hundreds of calories without triggering fullness the way solid food does.

Is it harder to gain weight on a vegetarian diet?

It can feel harder, because many vegetarian staples like vegetables, salads, and light soups have low calorie density. But the difficulty is in building better habits, not a biological disadvantage. Shifting toward calorie-dense vegetarian foods and tracking your daily intake levels the playing field.

klyo

stop reading, start building.

klyo automates everything in this article. 30 seconds a day. that’s the whole app.

available on iOS & Android