Try this delicious vegan moussaka and you will agree it is the best moussaka you ever ate. It has all the flavors of an authentic Mediterranean moussaka, with layers of tender eggplant, zucchini and potato topped with a hearty vegan beef ragu and a creamy vegan béchamel sauce. It’s the best sort of comfort food!
You cannot go wrong when you serve up layered comfort food for dinner, like a vegan lasagna or a vegan tamale pie. Now add to that list this extra-delicious vegan moussaka.
I look forward to eating moussaka every summer, when eggplants and zucchini are at their best and freshest. These are tasty vegetables on their own, but layered together with potatoes, a meaty vegan sauce and a creamy, dairy-free béchamel, they are out-of-this-world amazing.
The eggplants, especially, get melt-in-the-mouth tender and go so beautifully with the hearty, protein-packed ragu made with vegan beef and a homemade tomato sauce.
If you love a traditional moussaka, you will agree that this one is just as good, albeit dairy-free and meatless.
A moussaka is a labor of love, so you will need some time to make it. But the process is quite straightforward and nothing here is difficult to make. You can also prep or make the various elements in advance. So what’s stopping you?
Table of Contents
Why you will love this vegan moussaka
- Authentic — and delicious — taste! This recipe is true to a traditional moussaka recipe, and even a meat eater might not be able to tell the difference.
- Simple recipe. You need to put together three elements for a moussaka–the vegetables, which have to be pan-fried, the meaty sauce, and the vegan béchamel. None of these is difficult to make, nor are they time-consuming.
- Healthy. This is a one-dish meal with so many nutrients from the veggies and protein from the vegan meat.
- Vegan and soy-free. Can be gluten-free and nut-free. See the recipe FAQs below for tips on easily making this recipe both gluten-free and nut-free.
Ingredients
See recipe card below for exact quantities of each ingredient.
Vegetables
- Eggplant (aubergine/brinjal). Choose medium-sized Italian eggplants, for best results. When buying eggplants, make sure the skin is dark and shiny with no brown spots or soft spots. The eggplant should feel heavy for its size when you hold it in your hand.
- Zucchini (or yellow summer squash). I use these interchangeably. Or use a mix.
- Potatoes. Use waxy potatoes like Yukon gold or red potatoes. Starchy russets will not work in this recipe.
For the vegan meat sauce
- Onions
- Garlic
- Vegan ground meat. Traditionally a moussaka is made with ground lamb. Some versions use beef. For our meatless version, use any brand of vegan beef or crumbles that you like. You will need 12 oz for this recipe. You can also use brown lentils or green lentils instead of the vegan meat.
- Tomato sauce. I use my homemade tomato sauce (I’ll share that recipe soon), but you can use any sauce you like, storebought or homemade, including this terrific marinara sauce.
- Spices: ground allspice, ground cumin, ground cinnamon, bay leaves and red pepper flakes.
- Herbs: Oregano and/or thyme. I use a mix, you can use either. If you don’t have fresh herbs, use dried instead.
For the vegan béchamel
- Flour. Use all-purpose flour or use rice flour, if gluten-free.
- Vegan milk. I make my own by blending 1 cup of cashews with three cups of water. You can use storebought cashew milk or another milk like soy milk or oat milk. Almond milk, which is rather thin, is not preferred but will do at a pinch.
- Nutmeg. Use freshly grated nutmeg, if possible, for best flavor.
Other ingredients
- Extra virgin olive oil
- Vegan parmesan cheese
- Vegan mozzarella shreds (optional). Mozzarella is not typically used in a moussaka but I like the slight crunch and the color vegan mozzarella shreds add to the final dish. You can leave them out.
- Basil (optional). For garnish, before serving.
How to make vegan moussaka
Prepare the vegetables
Rub the eggplant slices with a bit of salt and set them aside on a baking sheet. This will draw out the moisture and any bitterness.
Heat 2 tablespoons oil in a skillet or saucepan. Add the potato slices and fry in batches on each side until golden-brown and tender. Remove to a plate lined with paper napkins.
Fry the slices of zucchini until golden-brown on both sides. Remove to a plate.
Pat the eggplant slices dry, then add to the skillet and fry in batches until golden-brown and tender.
Make the vegan meat sauce
To the same skillet add the chopped onions with salt and ground black pepper. Sauté until translucent, then add in the garlic. Stir to mix and sauté for 30 seconds.
Stir in the spices: ground allspice, ground cumin, ground cinnamon and red pepper flakes. Mix well.
Stir in the vegan meat or lentils. Sauté the meat until brown, a couple of minutes.
Stir in the chopped fresh oregano and fresh thyme.
Add the tomato sauce to the pan.
Mix well and let the meat sauce cook four to five minutes. Stir frequently. Turn off the heat and set aside.
Make the vegan béchamel sauce
In a saucepan, heat 1 tablespoon olive oil over medium heat. Add the flour and mix well. Continue to roast and stir until the flour becomes grainy and is no longer lumpy. Don’t walk away because the flour can burn easily.
Stir in salt, ground black pepper and nutmeg. Mix.
Add the non-dairy milk to the saucepan a little at a time over medium-low heat. Use a whisk to mix vigorously after each add to ensure there are no lumps. Once you’ve incorporated all the milk, let the sauce come to a boil. Cook on a simmer, stirring constantly, until the sauce has thickened quite a bit.
Stir in ½ cup of the vegan parmesan. Mix well and set aside.
Assemble the vegan moussaka
Preheat the oven to 350 degrees Fahrenheit/180 degrees Celsius. Arrange the potato slices in the bottom of a 3-quart baking dish.
Arrange the zucchini slices on top.
Arrange half the eggplant slices over the zucchini.
Pour the vegan meat sauce over the eggplant layer and spread evenly. Layer the remaining eggplant slices over the meat sauce. Sprinkle remaining half a cup of vegan parmesan over the eggplant.
Pour the vegan béchamel sauce over the eggplant slices. Smooth with a spatula.
Optionally, sprinkle a few vegan mozzarella shreds on top of the béchamel. Bake in the preheated oven for 1 hour or until the moussaka is golden-brown on top and the sauce is bubbling up the sides. Let stand 30 minutes before digging in. Garnish with torn basil leaves, if you wish, before serving.
Recipe FAQs
Substitute the all-purpose flour with rice flour. Your results will be just as good.
I use a homemade cashew milk, but oat milk and soy milk are both fine substitutes.
Use two 14-oz cans of lentils (drained and rinsed), and add them to the skillet at the same time you’d add the meat. Proceed with the rest of the steps as written.
Serving suggestions
Storage instructions
- Refrigerate: The moussaka will keep in the fridge for up to four days.
- Freeze: Freeze the moussaka in a freezer-safe container for up to three months.
- Reheat: Reheat the frozen lasagna in a 350-degree oven for 10-15 minutes or until warmed through.
- Make-ahead: Make the béchamel sauce and the meat sauce up to three days ahead and store in the fridge.
More delicious one-dish casseroles
If you love this vegan moussaka recipe, be sure to check out more of our Mediterranean recipes on Holy Cow Vegan!
Vegan Moussaka Recipe
Try this delicious vegan moussaka and you will agree it is the best moussaka you ever ate. It has all the flavors of an authentic Mediterranean moussaka, with layers of tender eggplant, zucchini and potato topped with a hearty vegan beef ragu and a creamy, dairy-free béchamel sauce. It’s the best sort of comfort food!
Print Recipe
Pin Recipe
Review Recipe
Servings: 8 servings
Calories: 364kcal
Prevent your screen from going dark
Instructions
Prepare the vegetables
-
Rub the eggplant slices with a bit of salt and set them aside on a baking sheet. This will draw out the moisture and any bitterness.
-
Heat 2 tablespoons oil in a skillet or saucepan over medium-high heat (adjust heat down at any time if the veggies brown too fast). Add the potato slices and fry in batches on each side until golden-brown and tender. Remove to a plate lined with paper napkins.
-
Fry the slices of zucchini in batches, if needed, until golden-brown on both sides. Remove to a plate.
-
Pat the eggplant slices dry, then add to the skillet and fry in batches until golden-brown and tender.
Make the vegan meat sauce
-
To the same skillet/saucepan add the chopped onions with salt and ground black pepper. Sauté until translucent, then add in the garlic. Stir to mix and saute for 30 seconds.
-
Stir in the spices: ground allspice, ground cumin, ground cinnamon and red pepper flakes. Mix well.
-
Stir in the vegan meat or lentils. Sauté the meat until brown, a couple of minutes. Stir in the chopped fresh oregano and fresh thyme.
-
Add the tomato sauce to the pan. Mix well and let the meat sauce cook four to five minutes. Stir frequently. Check seasoning and add more salt and pepper if needed. Turn off the heat and set aside.
Make the vegan béchamel sauce
-
In a saucepan, heat 1 tablespoon olive oil over medium heat. Add the flour and mix well. Continue to stir until the flour becomes grainy and is no longer lumpy.
-
Stir in salt, ground black pepper and nutmeg. Mix.
-
Add the non-dairy milk to the saucepan a little at a time, whisking vigorously after each add to ensure there are no lumps. Once you’ve incorporated all the milk, let the sauce come to a boil. Cook 2-3 minutes until the sauce has thickened quite a bit.
-
Stir in ½ cup of the vegan parmesan. Mix well, turn off heat, check salt and add more if needed. Set aside.
Assemble and bake the moussaka
-
Preheat the oven to 350 degrees Fahrenheit/180 degrees Celsius.
-
Arrange the potato slices in the bottom of a 3-quart baking dish. Arrange the zucchini slices on top. Arrange half the eggplant slices over the zucchini.
-
Pour the vegan meat sauce over the eggplant layer and spread evenly. Layer the remaining eggplant slices over the meat sauce. Sprinkle half a cup of vegan parmesan over the eggplant.
-
Pour the vegan béchamel over the eggplant slices. Smooth with a spatula.
-
Optionally, sprinkle a few vegan mozzarella shreds on top of the béchamel. Bake in the preheated oven for 1 hour or until the moussaka is golden-brown on top and the sauce is bubbling up the sides. Let stand 30 minutes at room temperature before digging in. Garnish with torn basil leaves, if you wish, before serving.
Nutrition
Calories: 364kcal | Carbohydrates: 41g | Protein: 18g | Fat: 15g | Saturated Fat: 1g | Polyunsaturated Fat: 2g | Monounsaturated Fat: 4g | Potassium: 1114mg | Fiber: 10g | Sugar: 10g | Vitamin A: 744IU | Vitamin C: 33mg | Calcium: 235mg | Iron: 3mg