This vegan moussaka is deliciously layered with roasted eggplant, homemade vegan mince and a creamy vegan bechamel sauce. Ultimate comfort food.

Vegan moussaka is like a lower carb version of a vegan shepherd’s pie.
Instead of mashed potatoes on the top you have bechamel sauce.
It’s also a little like lasagna in that you have layers. It starts off with a layer of roasted eggplant and then you have a layer of homemade vegan mince, then more eggplant, and it’s topped off with a thick layer of bechamel sauce.
It then bakes to perfection in the oven and you have some serious comfort food on your hands.
It’s seriously satisfying and high in protein too.
It does take a while to make, I have to tell you. It’s probably not going to go onto the regular weekly dinner rotation, but for a special occasion it’s the best.
And if you love this recipe, you’ll most likely also love our vegan baked ziti and our vegan eggplant parmesan too.
Moussaka
There are quite a few moving parts to this recipe, which means lots of photo collages! But bear with me.
Here’s just a quick look at the components of your moussaka.
- Roasted Eggplant
- Vegan Mince
- Vegan Bechamel Sauce
This gets layered in a rectangular dish and baked to perfection.
How To Make Vegan Moussaka
You will find full instructions and measurements in the recipe card at the bottom of the post. This is a summary of the process to go along with the process photos.
Press The Tofu
- Start off by putting on some tofu to press. It’s ideal if you use a tofu press, but if you don’t have one you can place the block of tofu on a plate with another plate on top of it and then place something heavy on top of that, like a heavy pot or stack of books. Leave it to press for 20 minutes.
Roast The Eggplant
- While the tofu is pressing, slice your eggplant into round slices about ¼ inch thick and place them on parchment lined baking sheets (we used two half sheet trays).
- Brush the eggplant with olive oil and sprinkle on salt and pepper.
- Place into the oven and bake at 350°F for 25 minutes, turning the eggplant over at the halfway mark.
Vegan Mince
- Add walnuts to the food processor and process into crumbles. Add to a mixing bowl.
- Add sliced mushrooms to the food processor and process until finely chopped. Add to the mixing bowl with the walnuts.
- When the tofu is pressed, mash it with a fork and add it to the mixing bowl.
- Now add lentils to the mixing bowl and toss everything together.
- Add olive oil, chopped onion, finely chopped celery and red bell pepper to a pot and sauté until softened.
- Add crushed garlic, paprika, cumin, oregano, rosemary and cinnamon. Yes, that’s not a typo, we used a little cinnamon! It’s a typical flavor add for moussaka, and in small quantity tastes great here!
- Sauté briefly to toast the spices.
- Add the walnut, mushroom, tofu and lentil mix and toss together with the vegetables and spices.
- Add tomato paste, marinara sauce and soy sauce and fry for about 8 minutes until you have cooked off any excess liquid and have a delicious soft mince texture.
- Add coconut sugar (for flavor balance), ground black pepper and sea salt to taste.
Vegan Bechamel Sauce
- When your eggplant is deliciously baked and your veggie mince is ready to go, now you have to make your vegan white sauce – bechamel.
- You need to focus all your attention on this while you’re making it, but once you get the hang of it, it’s really easy.
- Add olive oil to a pot and heat it. Then add flour and fry it in the oil for a minute, then add in soy milk and stir like mad (have a whisk handy as well so you can alternate between stirring and whisking) until well combined.
- Heat it, stirring all the while until it reaches a rolling boil and then let it boil while you continue stirring until it thickens. You ideally want it very thick for this since you need it to be a fairly firm topping for your moussaka, not a super runny sauce. When it’s nicely thickened, add black pepper and salt to taste.
Layer the Moussaka
- Start off with a layer of roasted eggplant.
- Then add all the veggie mince on top of that.
- Add the rest of the eggplant on top of the veggie mince, and top it all off with all the white sauce.
- Smooth down and then place into the oven to bake for 40 minutes at 350°F, switching to grill for the last 5 minutes so that it can brown a little more on top.
- Let it cool for a bit before serving.
Chef’s Tips
Your vegan mince needs to be thick. So cook off any excess liquid so that it’s a nice thick mince.
Your bechamel sauce also needs to be thick. This can take a while, especially since it’s a lot of sauce.
If you’re having trouble with your bechamel sauce thickening and it’s taking just too long and not seeming to thicken, then you can add a little more flour. Mix a tablespoon of flour with some water into a paste and then whisk it into the white sauce.
Storing and Freezing
Leftovers keep very well in the fridge for around 4-5 days and can be reheated at your leisure.
This vegan moussaka is freezer friendly for up to 3 months too! Let it cool completely before freezing. Thaw overnight in the fridge and then reheat in the oven at 350°F until heated through.
More Delicious Vegan Dinners
- Vegan Shepherd’s Pie
- The Best Vegan Lasagna
- Baked Vegan Mac and Cheese
- Vegan Pasta Bake
- Vegan Cannelloni
- Vegan Stuffed Shells
Did you make this recipe? Be sure to leave a comment and rating below!
Vegan Moussaka
Ingredients
For the Eggplant:
- 2 Large Eggplants (1.3 pounds/600g) Sliced
- Olive Oil For Brushing
- Sprinkle Salt and Pepper
For the Vegan Mince:
- 8 ounces Extra Firm Tofu (226g) Pressed
- 1 cup Walnuts (100g) Finely Chopped
- 2 ½ cups Cremini Mushrooms (240g) Finely Chopped
- 15 ounce Can Brown Lentils Drained, or 1 and ½ cups cooked lentils
- 2 Tbsp Olive Oil
- 1 Medium Onion White, Yellow or Brown, Finely Chopped
- 2 Medium Stalks Celery Finely Chopped
- 1 Medium Red Bell Pepper Finely Chopped
- 1 Tbsp Crushed Garlic
- 1 tsp Paprika
- 1 tsp Cumin
- 1 tsp Dried Oregano
- 1 tsp Dried Rosemary
- ⅛ tsp Ground Cinnamon
- ½ cup Tomato Paste (130g)
- 1 cup Marinara Sauce (240ml)
- 1 Tbsp Dark Soy Sauce
- 1 Tbsp Coconut Sugar
- ¼ tsp Ground Black Pepper
- Salt To Taste
For the Bechamel Sauce:
For Decoration (Optional):
- Dried Oregano
- Paprika
- Ground Black Pepper
- Sprigs of Fresh Rosemary
Instructions
Press the tofu:
- Start off by putting your tofu on to press. If you have a tofu press, then this is perfect to use, but if not, you can place the block of tofu on a plate, with another plate on top of it and then place something heavy on top of that, like a heavy pot or a heavy stack of books. Let it press for 20 minutes.
Roast the Eggplant:
- While the tofu is pressing, preheat your oven to 350°F (180°C). Slice the eggplant into round slices about ¼ inch thick and place them onto parchment lined baking sheets (we used two half sheet trays).
- Brush the eggplant slices with olive oil and sprinkle on salt and pepper.
- Place the eggplant into the oven and bake for 25 minutes, turning them over at the halfway mark.
Prepare the Vegan Mince:
- Add walnuts to the food processor and process into crumbles. Add to a mixing bowl.
- Add sliced mushrooms to the food processor and process until finely chopped. Add to the mixing bowl.
- When the tofu is pressed, mash it with a fork and add it to the mixing bowl.
- Add the lentils to the mixing bowl and toss everything together.
- Add olive oil, chopped onion, celery and red bell pepper to a pot and sauté until softened.
- Add crushed garlic, paprika, cumin, oregano, rosemary and cinnamon. Sauté for a minute to lightly toast the spices.
- Now add the walnut, mushroom, tofu and lentil mix and toss together with the vegetables and spices.
- Add tomato paste, marinara sauce and soy sauce and fry for about 8 minutes until you have cooked off any excess liquid and have a delicious soft mince texture.
- Add coconut sugar, black pepper and sea salt to taste.
Prepare the Bechamel Sauce:
- Add olive oil to a pot and heat it. Add the flour and fry it in the oil briefly. Add in all the soy milk at once and stir vigorously until well combined.
- Alternate between a wooden spoon and a whisk while heating to remove any lumps. It can tend to stick to the bottom of the pot so make sure you are scraping the bottom of the pot constantly and then whisking it in.
- Keep stirring and whisking until it reaches a rolling boil and then let it boil while you continue to stir until it thickens.
- When it's thickened, add black pepper and salt to taste.
Assemble the Moussaka:
- Preheat the oven to 350°F (180°C). Place half of the roasted eggplant along the bottom of a 9×13 oven-safe dish. Add all the vegan mince on top of the eggplant and smooth it down into a thick layer.
- Top the vegan mince with the remaining sliced eggplant. Add all of the bechamel sauce on top and smooth it down with the back of a spoon.
- Place into the oven to bake for 40 minutes switching to grill for the last 5 minutes so that it can brown on top.
- Let it cool for 10 minutes on the countertop before serving.
- Decorate with sprinkles of dried oregano, paprika, ground black pepper and sprigs of fresh rosemary.
Notes
- Marina sauce: You can use any marinara sauce that you like the taste of.
- Storing: Leftovers keep very well in the fridge for around 4-5 days.
- Freezing: It’s freezer friendly for up to 3 months.
Help!
I want to make this dish but am having trouble with the soy ingredients. I’m allergic to soy, what can I use instead of tofu?
Hi Hannah, if there is a veggie mince that you use you could use it instead of the homemade mince. I’m not sure of a substitute for our homemade version.
have you ever tried usung bulgur? I love that stuff.
I haven’t tried it so I’m not sure how well it would work.
What about substituting cracked wheat for the tofu?
Hi Alison, made this last night and it was outstanding. Very surprised at how good the “mince” was. So delicious – could not stop picking out the dish after dinner. Next time though I will probably cook up more eggplant and make thicker layers of that. An absolute keeper and wonderful comfort food.
Awesome Christine! So glad you loved it. Thanks for the wonderful review. 🙂
I realize I never followed up on my making it comments. This was absolutely delicious! I made It for my bible study with the changes above and it was a huge hit. I froze the leftovers and got to enjoy it again. The meat substitute was awesome and I will probably change to this in other recipes like my Shepherd’s Pie. This will definitely be a repeat recipe for me. Thanks!
So happy to hear that Gail! Thanks so much!
Thank you so much! I made this yesterday and was very happy with it. I had roasted eggplant in the freezer from the garden last summer so that was a step I didn’t need to follow. I didn’t realize I was out of lentils so I used quinoa in its place. I had 14oz of tofu and used it all. Also modified the bechamel because I needed it to be gluten free. I used oat milk with a corn starch slurry along with the olive oil and added a touch of nutmeg, and only made 4 cups. I think any more would have been too much for my tastes. I imagine the “meat” portion would work well in stuffed peppers and cabbage rolls. The texture of the meat really surprised me – I’m guessing it was the walnuts. I will definitely make this again. Thanks!
So happy you enjoyed it! Thanks so much for sharing!
This is the most amazing, delicious moussaka I’ve ever had! Prep time was about an hour (also, I had to make a marinara sauce) but worth every minute. Even the kids came back for seconds. This is now my go-to for special occasions. Thanks so much!!!
Yay! Thank you so much Ali! 🙂
Bechamel is quicker and easier if you add gradually ????. An extra flavor that we to add our Bechamel sauce is to bring g the milk to a boil with an onion, nutmeg and a bay leaf and let it sit for 30 mins, then strain and use, I use almond milk. This is how I was raised making it in England. Making this recipe today, seems like most authentic Vegan Moussaka I could find! Can’t wait.
Awesome! Hope you enjoy it! 🙂
Amazing recipe. Only made half the bechamel sauce and it was definitely enough (didn’t have enough soymilk on hand). It thickened up very quickly after the boil started. Thanks for this one! It was a hit.
So glad to hear that Jordan! Thanks for sharing! 🙂
The flavors of this dish are so very complex. There is quite a bit going on. I was stunned. I made a vegan mashed potato for the top vice the sauce. I can’t say enough about this one. It is a marker for just how well vegan meals can be constructed.
Kudos to you for creating this. Absolutely phenomenal.
Thank you so much! So glad you loved the flavors! 🙂
Did you actually mean to write 8 CUPS of soy milk, as in 2 quarts? Or did you mean 8 oz, as in one cup?
Hi Eileen, I meant 8 cups. It has the amount in mls written next to it, it’s most definitely 8 cups.
I’ve been stirring the bechamel for 2 hours and it’s still not thick. Beware people who don’t have this much time. There must be a better way.
It definitely should not take that long. I would troubleshoot that by adding more flour (mix it into a paste with cold water first and then whisk it in).
It took me a lot of time to make it but it was worth it 🙂
So happy to hear it was worth it! I agree, it’s definitely time consuming but worth it in the end. Thanks for the awesome rating! 🙂
Glad to see a Greek recipe on a vegan page! And I really like the ingredients used!
Will definitely give this a try, but will also add zucchini and maybe potatoes 🙂
Thank you! Hope you’ll enjoy the recipe. Thanks for the great review. 🙂
What size baking dish do you make this in?
A 9×13 baking dish.
Made this for dinner on Saturday. First time using tofu! My son gave me a tip for pressing it – to put layers of kitchen paper underneath it to absorb the water and stop the bottom staying soggy!
It was time-consuming but well worth the effort as it was delicious. I only used half the quantity of milk in the bechamel sauce and this gave me a really thick layer.
I wondered if there is a substitute for the walnuts which would give the same texture? I used them this time but could not do so if my daughter was visiting as she has an allergy to them.
Would almonds work do you think? I also wondered about adding a little nutmeg to the sauce?
Hi Anne Marie! So glad you enjoyed it! I think almonds would definitely be worth a try, maybe even pecans would work, but I think almonds is a good idea as it’s also fairly neutral tasting but will provide texture. Let us know how it goes if you try it! And definitely spice it to your tastes, I think a little nutmeg could taste great here. Thanks for sharing and the awesome review. 🙂
I used sunflower seeds, am taking it to a party tomorrow… Fingers crossed everyone likes it.
This may be really specific but how thin did slice the eggplants?
Hi Vanessa, not too specific at all, I’ll update the recipe as well, they were sliced around 1/4 inch thick. 🙂
This looks so appealing and appetising! Am dying to try it!
It is sooo good! Hope you try it soon! 🙂