This vegan moussaka is every bit as good as the 'real' thing - a rich lentil and red wine ragu, layered with roasted aubergine and topped with sliced potato and a creamy vegan béchamel.
🍴Why you will love this recipe
Moussaka is a totally luscious Greek dish, traditionally based on a slow-cooked lamb ragù, layered with aubergines, potato and a béchamel sauce. This vegan version is every bit as good, with a very rich lentil and red wine ragù, and a creamy vegan béchamel sauce.
This isn't the speediest recipe on the blog, with four individual elements to prepare (roasted aubergine, lentil ragù, sliced potato and béchamel sauce), but I promise it is absolutely worth every minute. Crowd-pleasing comfort food, perfect to serve to both vegans and non-vegans alike. So incredibly tasty and filling that no one will miss the meat!
You can prepare your vegan moussaka up to a day in advance if you're entertaining. Or if you're in the mood to batch-cook for the freezer you can freeze individual portions in foil trays for many delicious comfort-food dinners.
Jump to:
📝 What you need

Tinned or cooked lentils You can use either a tin of green or brown lentils (the cheapest option and very tasty), or a pouch of pre-cooked lentils. These tend to be more expensive but have a bit more bite to them than tinned lentils, so an even better texture to the finished dish.
Red wine Never cook with a wine you wouldn't drink! A medium-bodied red will go well with the tomatoes - not too heavy but reasonably acidic. something like a pinot noir would be excellent.
Dairy-free milk Use an unsweetened plant milk for your béchamel sauce - I usually use soya, but oat or nut milks will work fine too, just avoid coconut as it has quite a strong flavour.
Dairy-free cheese My favourites for cooking are Applewood smoked vegan cheddar or Violife epic mature. But I often use half and half cheddar with vegan parmesan here too which is really good.
👩🏽🍳 How to make your Vegan Moussaka
For a full, printable recipe with ingredients and detailed instructions, scroll to the bottom of this page 👇🏼.

Slice the aubergines thickly, brush with oil and roast for 20-25 minutes until soft and golden brown.

Finely chop the onion and carrot and fry gently. Add chopped courgette and crushed garlic and continue to cook. Add lentils, red wine, cinnamon, oregano, tomato purée and vegetable stock. Simmer for 20 minutes until thick.

Meanwhile, thickly slice the potatoes and par-boil for 5 minutes. Make the vegan béchamel sauce and stir through vegan cheese.

Layer your vegan moussaka with half the roasted aubergines, half the lentil ragu, then the remaining aubergines and remaining ragu. Add the potato slices then cover with the béchamel sauce. Bae for 35 minutes until golden and bubbling.
⭐️ Reader Testimonials
⭐️⭐️⭐️⭐️⭐️ "Absolutely delicious!! My husband loved it!! Thank you for such a tasty vegan version of the moussaka, which is “meaty”, creamy and full of flavour. I will be making again today. My husband is looking forward to it, as am I, of course. 😊 A great recipe!" Carole
⭐️⭐️⭐️⭐️⭐️ "LOVE LOVE LOVE. Wow, teens devoured it. A total winner - going to make it for extended family and grandparents as I’m sure they won’t miss the meat. Took leftovers to work and ate it cold - just as delicious. Thank you so much for sharing. X" Jackie
⭐️⭐️⭐️⭐️⭐️ "Honestly this recipe is dreams - can’t recommend more!! Please try this out, you won’t regret!!" @veganrie

🔪 Top Tips & FAQs
Remember to taste and adjust the seasoning of each individual element before layering the moussaka - once it is in the oven it is too late!
Adjust the consistency of the lentil ragù before layering the moussaka - add a splash of water if it is a little dry, and bubble for an extra minute or two if it is still too liquid.
This moussaka goes well with a crisp green salad or steamed green vegetables. For a special occasion I might also serve some vegan garlic bread or garlic dough balls - delicious!
This would freeze really well, and would be perfect for batch cooking as it would take very little extra effort to make up a double batch, then freeze in individual foil trays for lots of lovely weeknight suppers.
Just remove one from the freezer in the morning, then bake as below for 35-40 minutes until cooked through and golden brown on top.
Yes, you can make the moussaka up to 24 hours in advance, keep it covered in the fridge and then just pop it in the oven whenever you need to. Ideal for feeding a crowd without having to stress in the kitchen when your guests arrive!
🍽 If you liked that...
.... you might also enjoy these vegan recipes from The Veg Space:
Loved this recipe? ⭐️ Leave a star rating below! 📸 Snap a photo of your finished dish and share it with me on Instagram, tagging me @thevegspace or #thevegspace 📩 And get all my latest recipes in a weekly e-mail by subscribing to my newsletter.
📖 Recipe

Vegan Moussaka
Ingredients
For the aubergine layers:
- 2 aubergines
- 2 tablespoon olive oil
For the lentil layers:
- 1 onion
- 1 courgette
- 1 carrot
- 2 tablespoon olive oil
- 2 cloves garlic or garlic purée / ready-chopped garlic
- ½ teaspoon cinnamon
- 1 teaspoon dried oregano
- 2 tablespoon tomato purée
- 1 x 400g tin lentils or 250g cooked lentils from a pouch
- 150 ml red wine check it is vegan
- 150 ml water
- 1 teaspoon vegetable stock powder check it is vegan
For the potato & béchamel layer:
- 2 large potatoes
- 40 g dairy-free block margarine
- 60 g plain flour
- 500 ml dairy-free milk unsweetened
- 50 g dairy-free cheese
- grated nutmeg to your taste
Instructions
- Preheat the oven to 180ºC (fan) / 350ºF / Gas Mark 4.
- Slice the aubergines into rounds about ½cm thick. Brush with oil on both sides, season with salt and black pepper and lay on baking trays. Roast for 20 minutes or so, turning half way through cooking, until golden brown all over and soft.
- Meanwhile, finely chop the onion, carrot and courgette, and peel and crush the garlic cloves.
- Heat the olive oil in a large lidded casserole or frying pan, and gently cook the onion and carrot for 3-4 minutes until starting to soften.
- Add the courgette and garlic and continue to cook for a further 3-4 minutes.
- Add the cinnamon, oregano and tomato purée to the pan, stir well, then add the lentils and red wine. Turn up the heat to bring to the boil, then reduce to a simmer.
- After 2-3 minutes, add the water and stock powder and season well with salt and black pepper. Cover and cook gently for 15 minutes until thick and glossy.
- Whilst the lentil mixture is cooking, bring a saucepan of water to the boil. Peel and thickly slice the potatoes, then add these to the pan and cook for 5 minutes until almost cooked through but not falling apart. Drain and set aside.
- Melt the margarine in the same saucepan, and add the flour. Cook gently, stirring constantly for 2-3 minutes, then add the milk a little at a time until you have a thick and glossy sauce. Season well with salt and black pepper. Remove from the heat and stir through the grated cheese and nutmeg.
- To layer up the moussaka, place half the aubergine slices in the bottom of an ovenproof dish, followed by half the lentil mixture. Top with the remaining aubergine slices, then the remaining lentil mixture, then the potato slices, and finally pour over the béchamel sauce.
- Bake in the oven for 30-35 minutes until the top is turning golden brown. Serve immediately with crusty bread and a crisp green salad.
Video
Notes
Nutrition

Free 4-Week Vegan Meal Plan
Have you got your hands on a copy of my meal plan yet? If not CLICK here to download a copy of my FREE 4 Week Vegan Meal Plan today!
Please note that all recipes and images on The Veg Space are copyright protected. If you would like to share the recipe, please use the share buttons provided. Do not screenshot or copy and paste the recipe, (even if credited to The Veg Space). Many thanks for your understanding
Florence says
This recipe was such a hit! Made it for the in-laws and everyone loved it. We were quite generous with the nutmeg and also added lots of mushroom to the ‘meat’ sauce. Perfect wholesome vegan comfort food.
Kate Ford says
That's great to hear, thanks Florence! Always a crowd-pleaser.
Geoff UK says
Really rich and complex flavours, a couple of thoughts though, it would be useful to know what size dish/ baking pan to use. Your photo showed a baking pan, I used a similar looking dish and only had enough aubergine for the bottom layer. Also, the bechamel came out creamy I expected it to be more set. Otherwise, good recipe, will try again
Geoff
Michelle says
Hi, I have some dried puy lentils in the cupboard and was wondering how much to include and when - opposed pre-cooked lentil? I wouldn't have to cook them separately first, would I? Alternatively, I'd also be happy to use vegan mince. Do you have any tips for incorporating something like beyond mince, which doesn't come cooked? Thanks! Love your recipes.
Kate Ford says
Hi Michelle, you could cook the dried lentils in the sauce but it will take a long time - boiling them first then adding them to the recipe once cooked will be much more efficient. You can boil up the whole bag at once and freeze any you don't need. If you're using mince (I've done it before - really tasty) just fry it off at the beginning then add the onion, carrot and courgette and continue from there. Hope that helps!
Adele Irwin says
I hadn’t made this in a long time but made it for tea yesterday and had forgotten how much I liked it! It’s has a lovely creamy texture on top and you look forward to every mouthful! Another great recipe, thank you Kate 😊
Kate Ford says
Ah that's lovely to hear, thanks Adele! Xx
Toni says
I love how comforting this is!! Everyone at my house was impressed!
Mark says
I make this every ‘New Years Day’ now. I used to prepare a full ‘Christmas lunch’ meal for the family however I found this quite tiresome and wanted something different. This Mousakka has been my go to recipe since 2020 and I serve with a crisp salad, garlic ciabatta and if you are so inclined a nice glass of red! I couldn’t be without this recipe now 🙂
kushigalu says
This recipe is loaded with full of flavors. LOved it. Thanks for sharing.
Tayler says
We had this moussaka for dinner last night and it was incredible! Thanks so much for sharing the recipe!
Kate Ford says
Ah great, so glad you enjoyed it x
Gina says
This is one of my favorite Greek dishes and it was so enjoyable to try it with this vegetarian spin. Just as hearty and flavorful as the traditional version!
Sisley White - Sew White says
This is so delicious. You really wouldn't guess it was vegan just from tasting it.
Elaine Lowin says
GORGEOUS!! Served this to some (meat eating) friends of mine and there wasn't a scrap left - they loved it. Served it with a green salad and garlic bread. Such a tasty & hearty meal - will definitely do this again.
Kate Ford says
That's great to hear, thanks Elaine!
Jackie says
LOVE LOVE LOVE
Wow teens devoured it. A Total winner going to make it for extended family and grandparents as I’m sure they won’t miss the meat. Took leftovers to work and ate it cold - just as delicious. Thank you so much for sharing. X
Kate Ford says
Oh that's so great to hear, thanks Jackie!
Johan says
Hi, I tried this recipie and it turned out great!
I replaced the courgette with 200g of mushrooms which worked superbly (not a fan of courgette).
I used almond milk for the bechamel wich I found made it a bit "slimey", and it didn't really absorb the nutmeg.
Normally have oat or soya round but was out, so recommend anyone who sees this to try another dairy alternative than almond =)
Kate Ford says
That's great, love the idea of mushrooms in there too. Great feedback re the almond milk, thanks.
Andrea says
Hello,
Can I assemble the day before, and bake the next?
Kate Ford says
Hi Andrea, yes absolutely - this is perfect to prepare ahead and bake later. Kate
Helen Reid says
Hi
The ingredients include "400 g tinned lentils". Does that mean a 400g tin of lentils, which will yield about 240g cooked lentils or does it mean 400g of cooked lentils (which would require more than one tin)?
Thanks.
Kate Ford says
Hi Helen, yes that's right - a 400g tin of lentils (drained to c.240g). Enjoy the moussaka!
Helen Reid says
Thanks Kate. We had it tonight. It was delicious although I think I need to cut the aubergines a bit thicker next time as they overcooked a little.
Claire Pillar says
Tried this for the first time, and my Greek husband said it tastes just like moussaka. Takes time to prepare, but it's well worth it.
Kate Ford says
That's great to hear - thanks, high praise indeed! Kate x
Farida says
Hi !
Just to say thank you for the recipe. I cooked it a couple of days ago and it was a success with my children and partner. We used Tesco's mature cheddar cheese for the béchamel but it gave it a funny taste so won't be using cheese from now on.
Thank s again !
PS : I'm cooking the roasted butternut squash with the dahl tonight. It's still cooking but already tasting yummy 🙂
Selen says
Hi all. What could be used in place of the wine please?
Laurie Kudoba says
I think you could use a vegetable broth or grape juice?
Carole says
Oops, forgot to leave my rating🙈😊.
Carole says
Hi Kate, I made this a couple of months ago, exactly to your recipe, but didn't get around to leaving a comment. However, it was absolutely delicious!! My husband loved it!!
Thank you for such a tasty vegan version of the moussaka, which is "meaty", creamy and full of flavour. I will be making again today, hence leaving my feedback now.
My husband is looking forward to it, as am I, of course. 😊
A great recipe!
Olivia says
I made this yesterday with store cupboard ingredients; so I swopped dried red for green lentils, a pepper for a courgette, vegan mozzarella for parmesan. Added a little soya cream to the white sauce and sprinkling of smoked paprika on the top. It was delicious - especially warm rather than piping hot. I'm trying the harissa, chickpea, sweet potato combo this evening (with the suggested tahini dressing!)....
H says
Amazing, so tasty. Easy to make with just a few everyday ingredients. Definitely going to be a regular meal in our household.
Kate Ford says
That's lovely to hear, thanks!