How to gain weight on a vegan diet: 7 steps
Dans ce guide
Written by James Frost, founder of Flaming Phoenix and the maker of Phoenix Bars. Updated November 2026.
Quick answer: To gain weight on a vegan diet, eat about 300 to 500 calories a day more than you do now, mostly from dense foods such as oils, nut butters, soya milk and dried fruit rather than bulky ones. That works out at roughly 1 to 2kg a month.
Plant foods are high in fibre and water, so most vegans who struggle to gain are full long before they have eaten enough. The seven steps below fix that in order.
Step 1: Set a target
The NHS suggests adults gain weight gradually by adding around 300 to 500 calories a day. If you do not know your starting point, the weight gain calculator gives you one, and how many calories to gain weight explains the sums. The method for any diet, vegan or not, is in how to gain weight.
Step 2: Cut the bulk, not the plants
Fullness is the real obstacle. Swap some wholegrain pasta and brown rice for white, which the Vegan Society suggests when bulk is a problem. Cook vegetables instead of eating them raw. Choose dried fruit over fresh some of the time. You keep the plants and lose the volume. More in high calorie low volume foods.
Step 3: Add fat to every plate
A tablespoon of olive or rapeseed oil is about 120 calories and changes nothing about how full you feel. Two tablespoons of peanut butter are about 185. Half an avocado is about 135. Stir, drizzle or spread one of them onto each meal.
Step 4: Check your plant milk
Plant milks differ more than people expect. One NHS leaflet lists soya milk at about 88 calories per 200ml and almond milk at about 44. If you use 500ml a day, switching from almond to soya adds about 110 calories and more protein. Pick a fortified one.
Here is how the common plant drinks compare per glass.
| Plant drink | Calories per 200ml glass | Protein per 200ml glass |
|---|---|---|
| Soya | about 50 to 90 | about 6 to 7g |
| Oat | about 90 | about 2g |
| Rice | about 95 | under 1g |
| Almond | about 25 to 45 | about 1g |
| Coconut (carton drink, not tinned) | about 40 | under 1g |
Figures are approximate, based on typical UK fortified versions, and sweetened versions sit at the top of each range. Rice, oat and sweetened soya drinks carry the most calories, soya carries by far the most protein, and almond and coconut drinks are low in both. If almond or coconut is your usual, swapping to soya or oat is one of the easiest changes on this page.
Step 5: Drink some of your calories
A shake goes down more easily than a plate. Blend 300ml fortified soya milk, 50g oats, two tablespoons of peanut butter, a banana and two Medjool dates for about 730 calories. Have it between meals so it adds to food and does not replace it. Recipes are in homemade weight gainer shakes, and powders are compared in best vegan mass gainer.
Step 6: Eat more often and keep dense snacks close
Three meals and two or three snacks beat three large meals. Good vegan snacks are a handful of nuts (about 185 calories for 30g), hummus and pitta, dates, dairy-free dark chocolate and oat bars. The full ranking is in high calorie vegan foods.
Step 7: Cover the nutrients while you add calories
More food is a good moment to check the basics. NHS dietitians advise the following for a vegan diet:
- Vitamin B12 from fortified foods, at least 3 micrograms a day, or a 10 microgram daily supplement.
- Iodine at about 140 micrograms a day, usually from a supplement or fortified plant milk.
- Vitamin D at 10 micrograms a day from October to March.
- A daily omega-3 source such as ground linseed, chia, walnuts or rapeseed oil.
Include protein at each meal from tofu, tempeh, beans, lentils or soya milk. If you train, strength work helps the extra weight go on as muscle.
A worked example: about 520 extra calories, same meals
You do not need a new diet. Take an ordinary vegan day and make four changes:
- Make breakfast porridge with 300ml soya milk in place of almond milk: about 65 more.
- Stir two tablespoons of peanut butter into that porridge: about 185 more.
- Add a tablespoon of olive oil to lunchtime soup: about 120 more.
- Have 50g of hummus with the bread: about 150 more.
That is about 520 calories, and the meals look the same. For a full week at three calorie levels, see the weight gain meal plan, which has vegan swaps.
When cooking is not going to happen
Some days need something with no preparation. I make Phoenix Bars for days like that: vegan high calorie bars for weight gain made mainly from gluten-free oats, with up to 557 calories in a compact, 120g bar and up to 19g of protein. “I’ve always struggled to get enough calories in, especially while on the move, and these bars really helped with that,” wrote Brittney S. in April 2025. “They gave me so many calories without having to eat very much,” wrote Dom B. in August 2025. A single bar costs £5.25. Other options are in best vegan energy bars UK.
How to tell it is working
Weigh yourself once a week, same day, same time. A quarter to half a kilo a week is a sensible pace as a rule of thumb. If nothing has moved after two weeks, add another 200 to 300 calories. If you are stuck, why can’t I gain weight covers the usual reasons. The NHS advises seeing a GP if you have lost weight suddenly or without changing how you eat.
Is vegan food fattening?
Vegan food is no more fattening than any other food: weight changes with total calories, not with whether a food comes from a plant. In the EPIC-Oxford study of about 38,000 British adults, vegans had the lowest average BMI of the four diet groups, roughly 1.5 to 2 points below meat eaters, which fits with plant foods being more filling for their calories.
Within a vegan diet, it depends on what you pick. A portion of broccoli (80g) is about 30 calories, while 30g of almonds is about 185. Vegan biscuits, cakes and crisps are made from the same flour, sugar and oil as the regular kind, so they carry similar calories. For gaining weight, the steps above lean on the dense end of the plant world rather than the processed one.
Common questions
Why is it hard to gain weight as a vegan?
Plant foods are high in fibre and water, so they fill you up for fewer calories than most animal foods. The fix is density: fats, nuts, dried fruit and drinks.
Can you gain weight on a vegan diet without protein powder?
Yes. Soya milk, tofu, tempeh, lentils, nuts and oats provide the protein, and the extra calories come from fats and starches.
What is the highest calorie vegan food?
Oil is the highest calorie vegan food, at about 900 calories per 100g, followed by nuts and nut butters at about 550 to 750.
How long does it take to gain weight on a vegan diet?
About the same as on any other diet. At 300 to 500 extra calories a day, the sums come to roughly 1 to 2kg a month, because each kilo of body weight takes around 7,700 extra calories. Real progress is rarely that even, so judge it over a few weeks rather than day to day.
Sources: NHS, healthy ways to gain weight. NHS, the vegan diet. Royal Devon NHS, a nourishing dairy-free or vegan diet. The Vegan Society, fuelling an active lifestyle.

Plein de calories. Petit format.
Jusqu’à 557 calories dans une barre compacte et légère de seulement 120 g, avec jusqu’à 66 g de glucides et 19 g de protéines. Mangez-la entière, en morceaux sur quelques heures, ou mélangez-la à de l’eau ou du lait pour en faire un porridge.
Facile à manger, facile à digérer et pas trop sucrée. Des clients les ont mangées à -45 °C et dans la chaleur du Marathon des Sables, et elles se conservent jusqu’à deux ans : elles conviennent en montagne, pendant un travail de nuit ou à la maison, les jours où manger suffisamment est difficile.
- 557 calories dans seulement 120 g (529 à 557 selon la saveur)
- 4,6 calories par gramme
- 66g glucides par barre (jusqu’à)
- 19g protéines par barre (jusqu’à)