This flavor-packed vegan meatloaf is made up of a delicious base of black beans for a hearty, wholesome Holiday main, roast alternative, or side dish. Plus, this recipe is gluten-free, meat-free, egg-free, and packed with healthy plant-based protein!

Comforting, Protein-Rich Vegan Meatloaf
Whether you’re looking for a meat-free Thanksgiving or Christmas main, or just wanting something hearty and comforting for a mid-week meal, this vegan meatloaf served with a rich mushroom gravy is an option I return to time and time again. Serve it alongside your favorite sides like mashed potatoes or Easy Vegan Green Bean Casserole and this is a classic crowd pleaser!
As soon as the winter months appear, I love to tuck into comfort food classics like Shepherd’s Pie, Vegan Pot Pie, and this vegan Thanksgiving loaf. In fact, having honed this recipe over the years, with plenty of tweaks and experimentation, this is one of my all-time favorites.

Not only does this vegan meatloaf have a wonderful flavor and texture, but – with the inclusion of legumes, veggies, nuts, and oats- this recipe is packed with protein, fiber, and healthy fats – perfect for a filling and nutritious main. More so, this meatless, eggless meatloaf is also gluten-free and can be made nut-free! So, it’s great for those with various allergies.
For the full ingredients list, measurements, complete recipe method, and nutritional information, read the recipe card below.

It is also fairly versatile and can be served in various ways. I love to eat the loaf with either vegan gravy, or a more traditional maple tomato glaze (method in recipe notes). You can then plate it up warm alongside all the usual holiday sides or eat cold within sandwiches/wraps.

How To Make The Black Bean Meatloaf
Step 1: Chop the potatoes and boil them in salted water until tender. Then remove them from the water and mash them with a potato masher.
Once ready, preheat the oven to 375F/190C.
Step Two: Meanwhile, as the potatoes cook, lightly fry the chopped onion in an oiled pan for a minute before adding the garlic, celery, all spices, soy sauce, and balsamic vinegar and frying for a further 3-5 minutes, adding the beans and heating for a minute, then removing from the heat.
Step Three: Combine the veggie mixture with the mashed potato, tomato paste, oats, and chopped walnuts and mash.
Note- At this point, it’s good to taste the prepared meatless meatloaf mixture and adjust the seasonings if necessary.

Step Four: Transfer the black bean meatloaf mixture to an 8 or 9-inch loaf pan and press firmly to smooth out.
Note- Make sure to line the loaf pan with parchment paper, including an overhang. This will make it easier to remove the loaf while it’s still warm and not super firm.
Step Five: Bake the vegan loaf for 40-50 minutes, then remove from the oven and allow to rest for at least 15 minutes before removing it from the pan to avoid it breaking apart at all.
Top Tip: This vegan loaf needs time to firm up. When you first remove it from the pan, it will still be soft to the touch. Simply pop this in the fridge for at least three hours (or even overnight) before serving for the firmest results. Read the recipe notes for more ways to ensure a firmer loaf.

For The Mushroom Gravy
Step 1: Sauté the onion in an oiled pan for a few minutes before adding the garlic, mushrooms, spices, vinegar, and soy sauce. Fry for a further 3-4 minutes.
Step Two: Add the veggie broth and simmer for 7-10 minutes for adding the cornstarch slurry (the starch mixed with a little plant-based milk into a smooth, lump-free mixture). And simmer for a further minute or so while it thickens.
Note – The longer you simmer the sauce, the thicker and more reduced it will become.
Step Three: (Optional) For a smooth gravy mixture, blend the sauce and enjoy poured over your vegan loaf and sides!

How to Store
Store the leftover vegan meatloaf and mushroom gravy (separately) in the fridge for up to 4 days.
You can also freeze the loaf for up to three months. I like to allow it to cool completely, slice it, and then freeze the slices with parchment paper between, so they don’t stick as they freeze.
Re-heat the slices in the oven, microwave, or pan fry with a little oil, until warmed through.

How to Serve Vegan Meatloaf
You can serve this vegan/ vegetarian meatloaf with mushroom sauce, maple tomato glaze, vegan gravy, or sauce of your choosing.
Serve warm with your favorite holiday/comfort food sides like:
- Scalloped Potatoes
- Green Bean Casserole
- Sweet Potato Casserole
- Creamed Peas & Carrots
- German Potato Dumplings
- Vegan Cornbread
You can also eat the leftover vegan meatloaf cold within sandwiches and wraps, alongside Potato Salad, Cucumber Salad, and/or other simple sides.
Leftovers can also be crumbled and eaten as part of a Spaghetti Bolognese dish or within tacos – like these Crispy Oven Baked Spinach Tacos.

Useful Recipe Notes & Variations
Ingredient Substitutions
- Oats: You can substitute the oats with buckwheat flour, panko breadcrumbs, or regular breadcrumbs (gluten-free if needed).
- Beans: You can use lentils instead of the beans (or a combination of the two), though I find that the beans firm up better and hold the loaf together better. I often use a combination of black beans and kidney beans. Chickpeas would also work fine.
- Walnuts: Or you can use the seeds/nuts of your choice (Pumpkin seed, flaxseed, cashew, almond, hazelnut).
- Potato: You can try with sweet potato or even swap the mashed potato for cooked rice.
- Optional Add-ins: You could add a splash of liquid smoke for additional depth of flavor.

Other Helpful Tips for this Vegan Meatloaf
- You can shape the meatloaf mixture into patties or meatballs and bake individually instead of as a loaf.
- You can use a food processor to combine the ingredients but make sure just to pulse a few times, so it’s still chunky. Watch your food processor while processing, so you don’t accidentally overland the mixture, or it will be mushy.
- For a firmer loaf: You can add 1 tbsp psyllium husk or use more oats. Alternatively, you can dry the beans out a little by placing them in the oven and baking for a few minutes before mixing up the meatloaf or reduce the amount of potato in the recipe.
- To serve with the maple tomato glaze: Combine 1/4 cup (56 g) tomato paste, 1 1/2 tbsp water to thin out, 1 tbsp each of soy sauce and balsamic vinegar, 1/2 tbsp each of hot sauce and maple syrup. Onion powder, garlic powder, salt, and pepper to taste. You can add it after baking or for the last 15 minutes of the baking time; then, it will be firmer.

Related Recipes
If you’re looking for other people-pleasers like this vegan meatloaf, you may enjoy one of the below recipes.
And, for dessert
If you try this yummy vegan meatloaf recipe, I’d love a comment and recipe ★★★★★ rating below. Also, don’t forget to tag me in re-creations on Instagram or Facebook with @elavegan/ #elavegan – I love seeing your recreations.

Vegan Meatloaf
Video
Ingredients
- 2 large (400 g) potatoes peeled, or sweet potato
- 1 Tbsp oil
- ⅔ cup (100 g) onion chopped
- 2 medium-sized (100 g) celery stalks chopped
- 3 garlic cloves minced
- ½ Tbsp onion powder
- ¾ tsp sea salt
- ½ tsp caraway seeds
- ½ tsp ground cumin
- ½ tsp dried thyme
- ½ tsp smoked paprika
- ⅓ tsp red pepper flakes
- Black pepper to taste
- 1 Tbsp soy sauce tamari, or coconut aminos
- 1 Tbsp balsamic vinegar
- 2 (15 oz) cans black beans or kidney beans, about 500 g when drained and rinsed
- ½ cup (60 g) walnuts chopped or sunflower seeds for a nut-free version
- 1 cup (90 g) oats preferably instant oats (see notes)
- 2 Tbsp (60 g) tomato paste
Instructions
- Check the video for visual instructions.Chop the potatoes, transfer them to a pot with salted water and bring to a boil. Cook over medium heat for about 15 minutes or until tender, then drain. Transfer back to the pot and mash with a potato masher (don't use a food processor or blender).
- Time to preheat the oven to 375 degrees F (190 degrees C).
- Meanwhile, heat 1 tbsp oil in a skillet or pan over medium heat and add chopped onion. Fry for about 3 minutes, then add garlic, celery, all spices, soy sauce, and balsamic vinegar and fry for a further 3-5 minutes. Stir occasionally. Add beans and turn off the heat after one minute.
- Transfer the bean/veggie mixture to the pot with the mashed potatoes and add tomato paste, oats, and chopped walnuts. Then, Use the potato masher or your hands to mix everything together.
- Line an 8-inch or 9-inch loaf pan with parchment paper (including an overhang) and put the meatloaf mixture into the pan. Press it down firmly.
- Bake the vegan loaf for 40-50 minutes, then remove from the oven and allow to rest for at least 15 minutes before removing it from the pan to avoid it breaking apart at all.This meatless meatloaf needs time to firm up. When you first remove it from the pan, it will still be soft to the touch. Simply pop this in the fridge for at least three hours (or even overnight) before serving for the firmest results. Read the recipe notes for more ways to ensure a firmer loaf.
- Serve with the mushroom sauce, maple tomato glaze, or gravy. I have included the recipe for the mushroom sauce and glaze below in the recipe notes.
Notes
- Oats (regular or gluten-free): You can substitute the oats with buckwheat flour, panko breadcrumbs, or regular breadcrumbs (gluten-free if needed).
- I suggest tasting the prepared meatloaf mixture and adjust the seasonings, if necessary, before baking.
- Make sure to line the loaf pan with parchment paper, including an overhang. This will make it easier to remove the loaf while it’s still warm and not super firm.
- 1 1/2 cups vegetable broth (360 ml)
- 1/4 cup plant-based milk (60 ml)
- 1 onion, chopped
- 2 cloves garlic
- 2 cups mushrooms, sliced
- 1/2 tbsp vegetable oil
- 1 tbsp balsamic vinegar
- 1 tbsp soy sauce or coconut aminos
- Spice mix: 1 tsp onion powder, 1/2 tsp dried thyme, 1/3 tsp smoked paprika, 1/4 tsp red pepper flakes, sea salt, and pepper to taste
- 1 tbsp cornstarch (to thicken)
- Fresh parsley to garnish
- Heat oil in a skillet, add onion and fry over medium heat for 3 minutes. Add garlic, mushrooms, spices, balsamic vinegar, and soy sauce and fry for a further 3-4 minutes.
- Add broth and let simmer over medium heat for about 7-10 minutes (the longer you simmer the sauce, the more flavorful and thicker it will be).
- In a small bowl, mix cornstarch with plant-based milk and add it to the skillet. The sauce will get thicker. Keep simmering for a further 1-2 minutes.
- If you want a smooth gravy, mix the sauce in a blender. Enjoy! Store leftovers in a container in the fridge (can be kept in the fridge for about 3-4 days).
To serve with the maple tomato glaze: Combine 1/4 cup (56 g) tomato paste, 1 1/2 tbsp water to thin out, 1 tbsp each of soy sauce and balsamic vinegar, 1/2 tbsp each of hot sauce and maple syrup. Onion powder, garlic powder, salt, and pepper to taste. You can add it after baking or for the last 15 minutes of the baking time; then, it will be firmer.
Nutrition information is an estimate and has been calculated automatically
If you are using Pinterest, feel free to pin the following photo:




I trusted your flavors & ingredients, it’s really delicious!
I made it last night and substituted the potato with cauliflower. It turned out great. Thank you for your suggestion to squeeze out the excess water. That helped to hold the loaf together. Definitely will make again.
That sounds amazing, Linda, I’m so happy it worked well with cauliflower too 😊 Thanks so much for sharing, and I’m glad you’ll be making it again.
This looks delicious. Can’t wait to try it. Do you think you could substitute cooked cauliflower for the potato? Just curious.
Thank you so much, Linda. I haven’t tested it with cauliflower yet, but in theory it could work. Just keep in mind that cauliflower holds a lot more water than potatoes, so you would need to steam it and squeeze out as much liquid as possible first. The texture would be a bit lighter and softer, but it should still hold together. If you end up trying it, let me know how it turns out.
Hello . I plan to bake this ahead of Christmas and then reheat it on the day, What would you suggest as the best method to reheat it so it does not fall apart when warm?
Great question, and yes, this works really well if you make it ahead.
Making it a day in advance and refrigerating it overnight is actually ideal. Once fully chilled, the loaf firms up and you’ll get very clean, neat slices. When reheated, it does soften again, but it won’t fall apart as long as the mixture was packed firmly into the pan and baked through properly.
For reheating, the best options are:
– Oven: warm the slices gently at a low temperature until heated through
– Skillet: reheat slices in a pan over low heat, with or without a little oil
– Microwave: works too, just heat briefly so it doesn’t dry out
All of these methods keep the slices intact while warming them nicely for serving.
Hi I was wondering if you could make this one or two days ahead of time ? Thankyou
Yes, absolutely! Will be even better. 🙂
Liebe Ela, ich habe den Braten heute mich ein paar Änderungen gekocht. Ich habe statt Walnüssen gehackte Sonnenblumenkerne verwendet, werde sie aber nächstes Mal weglassen. Die Bohnen habe ich zerdrückt und die Glasur habe ich leider überlesen. Die mache ich nächstes Mal mit. Ich habe meine eigene Bratensoße dazu gekocht. Es war ein phantastisches Essen, welches ich auch zu Weihnachten kochen werde.
Wie schön, das freut mich riesig! Die Glasur gibt beim nächsten Mal noch ein extra Aroma, aber wenn es jetzt schon phantastisch war, umso besser!
Wie toll, dass du den Braten sogar an Weihnachten kochen möchtest. Das bedeutet mir wirklich viel. Danke dir fürs Teilen! 😊💛
Delicious and super comforting!
So happy you enjoyed it, Diana! Comforting recipes are the best. 💛
This meatloaf and gravy was so delicious!!!. My husband had two helpings and he is not vegan. It is such a treat when I find a vegan meal that is so flavorful. I love that the ingredients are pretty much everything I already had.. Definitely a keeper!!
So happy you both enjoyed it, Trish! That’s the best compliment when a non-vegan goes back for seconds. Love hearing that you had everything on hand too, it really is such an easy, cozy, flavorful dinner. Thanks for your great feedback! 💛
Made this for Thanksgiving. Everyone loved it. Made vegan mushroom gravy.
So happy to hear it was a hit! Pairing it with vegan mushroom gravy is definitely delicious. Thanks for trying the recipe and sharing your feedback! 😊
I made this loaf today for Thanksgiving. It turned out fabulous! I allowed it to sit for a few hours in the fridge which really helped set the loaf. It had an excellent texture! I can’t rave enough about how solid it is, yet not dry. It is flavorful and sturdy. It will make a great sandwich also. Thanks for sharing such a great recipe. Thanksgiving was a hit!
That makes me so happy to hear, Angelita! Letting it rest in the fridge really does work wonders for the texture, and I’m thrilled it turned out sturdy, sliceable, and perfect for Thanksgiving — and sandwiches too!
Thank you for sharing your success, and I’m glad it helped make your holiday a hit! 💛
I’m getting it five star in advance partly because it’s very reminiscent to something I usually make but also I absolutely love the way you have laid out the entire recipe. I have ADHD and never realized how much easier it was just to see all the ingredients laid out in a photo Versus reading it.
That said, I know I will be making a couple of changes. I don’t think I like caraway seeds and don’t have any, but what I have used in my recipe is cauliflower. I actually sauté it with the carrot and onions, but it can be cooked and mashed just like potato. I’m sure you know. Also, in my recipe, I always use walnuts because it gives a little bit of a meaty texture and instead of oatmeal I use millet I’ll probably add a little bit of both every year I make it from memory, but I haven’t cooked for the last couple of years. I am pretty sure I had a little bit of tahini and no balsamic. I guess I’m just throwing this out there because it is very versatile.
Thank you for the tip for it to be firmer. That’s always an issue for me, but I’ve never added oats before.
Aww, thank you so much — your message made me smile! 😊
I’m really happy the ingredient photo layout helps you. I started doing it for clarity, but hearing that it supports people with ADHD makes it even more meaningful. 💛
And yes, your version sounds absolutely delicious! This recipe is super versatile, so your swaps fit perfectly:
– Cauliflower is a great idea — sautéed or mashed, both work.
– Walnuts totally add that “meaty” bite.
– Millet instead of oatmeal is a fantastic, hearty option.
– Tahini would add great richness, too, but will make it slightly bitter.
Honestly, it’s one of those dishes you can tweak endlessly and it still turns out cozy and delicious.
And yes — the oats are a big help for firmness. They soak up moisture and help everything bind better.
Thanks so much for sharing your version. I love seeing how people make it their own! 💛
Yikes! I forgot to proofread before I posted. Oh well.
I’ve been making this on a regular basis for over a year now & hubby & I absolutely love it as our weekly “roast” with mashed potatoes, assorted veggies & gravy.
I make eight individual mini loaves & freeze them.
Highly recommended!
That makes me so happy to hear, Gail! 😍
I love the idea of making mini loaves and freezing them — super practical and perfect for easy meals. Thank you for sharing your routine and for the lovely feedback! 💛
I haven’t tried this recipe yet but gave it five stars because it sounds absolutely delicious. Question: Can I totally omit the walnuts and/or seeds?
Yes, you can leave them out — the recipe will still work — but keep in mind that removing the nuts/seeds also removes some richness, so the loaf won’t be quite as flavorful or hearty.
If you skip them, I recommend adding a little extra seasoning or a splash of olive oil to make up for the reduced fat.
I am considering adding pumpkin seed protein powder to the recipe both to up the protein per serving and to make the loaf denser. Thoughts? I will report back too
That actually sounds like a great idea!Pumpkin seed protein powder could work really well here — it’ll boost the protein and make the loaf a bit denser and heartier, just like you said.
A few quick tips if you try it:
– Start with 2–3 tablespoons first and see how the texture feels. It absorbs moisture, so you might need to add a splash of water or a bit more tomato paste if the mixture feels too dry.
– It will likely make the color slightly darker and add a mild nutty, earthy flavor (which actually pairs nicely with the beans and spices).
– Mix it in at the same step as the oats or flour substitute so it distributes evenly.
Can’t wait to hear how it turns out — definitely report back! 💚
Awesome
To have a firmer loaf – how much more oats?
If I refrigerate overnight and cut when cold will it fall apart once I heat it up?
Hi Michelle! I’d start with an extra ¼ cup (about 20–25 g). You can go up to ½ cup if you want it denser, but add gradually so it doesn’t get too dry.
Refrigerating overnight is actually the best way to get clean slices. Once cold, the loaf will cut beautifully. When you reheat, it will soften a bit but it won’t fall apart, as long as you pressed the mixture firmly into the pan and let it bake long enough. You can gently reheat slices in the oven, skillet, or even microwave.
👉 My tip: if you like it extra sturdy, go for a little more oats + chill overnight. Then reheat just until warmed through.
Made this yesterday for dinner today. Although it fell apart on me, the flavor was on point!! So delicious!!
Hi Karen, I am not sure if you saw the “helpful tips” section in the blog post, so I will just copy and paste it:
I hope this helps. 🙂
I have made many different vegan ‘meatloaves but this is the most tasty. Delicious!!!
So happy to hear! Thanks for your amazing feedback. 🙂
Hi l made this vegan meatloaf and it came very nice everyone enjoyed it thank you for the recipe Mary
Hey Mary, I am so glad everyone liked the vegan meatloaf! 🙂
Earlier today I told my husband we’re having vegan meatloaf for dinner and he moaned and groaned. He’s a chicken/turkey lover. I made it and he loved it! I didn’t realize it had to be made in advance (to be refrigerated to hold its shape) until one hour before we were to eat so I didn’t even have time for it to cool 15 minutes before we ate it. It didn’t keep it’s shape, but that was fine because we preferred eating it hot. I also doubled the tomato sauce topping since it used up my small can of tomato paste I had already opened. Put all the sauce on top and into the oven. Delicious! Thank you so much.