This post may contain affiliate links. Read my full disclosure policy.
This traditional Greek Moussaka Recipe is made with thick layers of succulent eggplant in a rich tomato-meat sauce, topped with a creamy bechamel sauce. Vegetarian & Vegan adaptable. Video!
In a nutshell, this Moussaka Recipe is heavenly. It is one of the first recipes I learned how to cook, and to this day, it is still one of my favorites. Cozy, hearty, and flavorful, authentic Moussaka is pure comfort food. I encourage you to make it on a lazy Sunday or when you have time to enjoy the process, it will reward you a hundredfold. I know you will love this!
What is Moussaka?
Moussaka originates from the Mediterranean but most commonly hails from Greece. Succulent, roasted eggplant is layered with a rich meaty tomato sauce made with ground lamb (or ground beef or plant-based meat) and a hint of cinnamon. Topped with a wobbly béchamel sauce infused with fresh nutmeg, it’s placed in a hot oven to bake. The creamy béchamel turns a lovely golden brown, infusing your home with goodness. Every time I make this, I find myself wishing I made a double batch, freezing one for another time.
How to make Moussaka! (Video)
- Roasted Eggplant (aubergine) is the base layer of this moussaka. Globe eggplant is sliced and often salted to draw out excess moisture and bitterness before being roasted. This step also helps in creating a firmer texture for the dish. For extra flavor, the eggplant can also be grilled.
- Ground Meat (Lamb or Beef or Plant-based): Moussaka traditionally includes ground lamb, which adds a rich, savory flavor. Beef can also be used as a substitute or use half and half. Plant-based ground “meat” also works well here, or use cooked lentils, for a vegetarian or vegan moussaka.
- Onions and Garlic: These aromatic ingredients are sautéed with ground meat to provide depth of flavor.
- Tomato Sauce: A tomato-based sauce adds a tangy and sweet element to the moussaka. It’s typically made with tomatoes and a hint of cinnamon.
- Béchamel Sauce: This creamy white sauce is a signature component of moussaka. It’s made from unsalted butter, all-purpose flour, and milk, and is usually seasoned with a pinch of nutmeg. The béchamel is poured over the assembled layers before baking, giving the dish its beautiful golden top and delicious richness. See recipe notes for vegans.
- Cheese (optional): Some recipes call for grated cheese, such as Parmesan cheese or Kefalotyri, to be sprinkled on top of the béchamel layer before baking. This adds a layer of flavor and a golden crust when baked.
- Olive Oil: Used for sautéing the meat and onions, as well as roasting the eggplant slices. Olive oil imparts a distinctly Mediterranean flavor to the dish.
- Spices and Herbs: Common spices and herbs used in moussaka include oregano, cinnamon, nutmeg, thyme, and bay leaves. These seasonings enhance the overall flavor profile.
- Salt and Black Pepper: Essential for seasoning each component of the dish and bringing out the flavors.
- Egg (optional): In some variations, beaten egg yolks are mixed into the béchamel sauce for richness and structure.
- Fresh Parsley – adds a lovely freshness to the tomato sauce.
How to make Moussaka (step-by-step instructions)
This recipe has four steps, so make this on a day when you have ample time and are not rushed. TIP: Or make it in stages- roast the eggplant ahead, make the meat sauce ahead and assemble the day of baking. The leftovers are even better, so you could make the whole thing ahead, bake, and reheat when entertaining.
- Salt and roast the eggplant.
- Make the Tomato-meat sauce.
- Make the Bechamel Sauce.
- Assemble and bake!
Step one: Slice, salt, and roast the eggplant. Cut eggplant into 1/3-inch thick disks (no thinner), sprinkle with a little kosher salt, and sit in a colander or bowl for 20-60 minutes.
Tip: Salting the eggplant will help it release its liquid resulting in a much better texture with less bitterness. If pressed for time, you can skip this step, but I highly recommend it.
Rinse well, pat dry, and brush each side with olive oil (or use spray olive oil) and place on a greased or parchment sheet pan and roast in a 400 F oven until golden, about 20-30 minutes. Alternatively, you can grill the eggplant on each side (getting nice deep grill marks) then wrap it in foil for 10-15 minutes so it steams and cooks through. * Precooking the eggplant is absolutely essential here!
Step Two: Make the tomato meat sauce: In a large saucepan or large skillet, saute diced onion in olive oil over medium heat for 3-4 minutes: add the garlic, and turn the heat down to med-low and saute for 8-10 minutes until onions are tender. Add the ground meat (or plant-based meat) and brown it, stirring often, for about 10-15 minutes. Drain any fat away. Add the rest of the ingredients -diced tomatoes, tomato paste, white wine, fresh parsley, sugar, cinnamon, kosher salt and black pepper. Stir and cover, and let simmer on low heat for 20 minutes. You’ll have a thick, rich tomato sauce.
Step Three: Make Bechamel Sauce: In a small saucepan, heat the butter until melted. Whisk in the flour and let cook for 2-3 minutes on med heat, often stirring, letting the flour “cook”. Whisk in the first cup of milk a little at a time. Whisk well, and add the 2nd cup. Stirring constantly brings to a simmer, lower heat, and let simmer on low for 2 minutes. Remove from heat and add nutmeg, cheese, salt, pepper. Set aside to cool. Lightly beat an egg yolk in a separate bowl, but do not add it just yet.
Step four: Assemble the Casserole: Divide eggplant slices into three stacks, reserving the “best looking” largest pieces for the top and bottom layers. The others can be placed in the middle layer, which will be concealed.
Begin layering. In a greased baking dish, place one layer of eggplant. Add half the tomato-meat sauce. Add the middle layer of eggplant (using the pieces you want to hide) then add the remaining tomato meat sauce. Add the third and final layer of eggplant ( use the prettiest pieces).
*Whisk in 2-3 tablespoons of bechamel sauce, into the beaten egg, to temper it (to warm up the egg so it doesn’t curdle), then pour this egg mixture into the bechamel sauce, whisking until nice and smooth and thickened. Spread the bechamel sauce over the final eggplant layer.
Sprinkle with cheese and bake uncovered, for 50-60 minutes, until beautifully golden.
When it is done, your house will smell heavenly. Let the Moussaka rest for 10 minutes before cutting into it so it can set up a bit.
- Always roast or grill the eggplant first. There are many recipes on how to do a quicker version—numerous ways to cut corners. And while I am all for efficiency, I have never been happy with these results regarding Moussaka. Whatever you do, please do not layer the eggplant without roasting (or grilling) it first!
- Make this in stages if pressed for time. The eggplant can be roasted or grilled ahead and refrigerated. Same with the tomato-meat sauce. Same with the Bechamel! Then just assemble and bake. Moussaka can be assembled and refrigerated up to 3 days ahead, refrigerated before
- Bake this ahead. The Eggplant Moussaka tastes even better the next day, so feel free to bake it ahead and reheat it before serving! It can be frozen and reheated
- Salting the eggplant reduces bitterness. Yes, if you are desperate for time, you can skip the salting if necessary, but it does elevate the dish.
What to serve with Moussaka?
- What is Moussaka?
Moussaka is a classic Mediterranean comfort food dish made with layers of roasted eggplant, ground meat (lamb, beef, or plant-based), and a cinnamon-infused tomato sauce, topped with a wobbly béchamel sauce scented with nutmeg.
- Where does Moussaka originate from?
Moussaka originates from the Mediterranean but is most commonly associated with Greece.
- What are the ingredients in Moussaka?
The key ingredients in Moussaka include roasted eggplant, ground meat (lamb, beef, or plant-based), onions, garlic, tomato sauce, béchamel sauce, cheese (optional), olive oil, spices, herbs, salt, and black pepper.
- What is the purpose of salting the eggplant in Moussaka?
Salting the eggplant helps draw out excess moisture and bitterness, resulting in a better texture and taste.
- Can Moussaka be made ahead of time?
Yes, Moussaka can be made ahead of time. You can roast the eggplant, make the tomato-meat sauce, and prepare the béchamel sauce beforehand. Then assemble the dish and bake it when you’re ready to serve. Alternatively, you can bake the Moussaka ahead and reheat it before serving.
- Can Moussaka be frozen?
Yes, Moussaka can be frozen. After baking the dish, let it cool completely, then wrap it tightly and freeze. Thaw in the refrigerator before reheating.
- What can I serve with Moussaka?
Moussaka can be enjoyed on its own as a complete meal. However, if you’d like to serve it with other dishes, it pairs well with a fresh Greek salad, bread, tzatziki.
- Can I make a vegetarian version of Moussaka?
Yes, you can make a vegetarian Moussaka by using plant-based ground “meat” instead of traditional meat. The rest of the ingredients and the preparation process remain the same.
- Can I make a vegan version of Moussaka? Yes, you can make vegan moussaka by using plant-based “meat” in the Tomato Meat sauce, substituting vegan butter or olive oil for the butter, and plant-based milk in the bechamel sauce. Skip adding the egg to the bechamel sauce, and either skip the cheese or use vegan cheese for the top. You can even add sliced potatoes for extra heartiness.
- Can I make Moussaka without cheese?
Yes, you can omit the cheese if desired. The dish will still have wonderful flavors from the other ingredients.
- Is Moussaka gluten-free?
The traditional Moussaka recipe contains flour in the béchamel sauce, which is not gluten-free. However, you can use gluten-free flour as a substitute to make a gluten-free version.
- How long does Moussaka last?
Moussaka can be refrigerated for up to 4 days. It can also be frozen for longer storage, up to a 6 months.
- What is the best way to reheat Moussaka?
Reheat Moussaka in a 350F oven until the internal temp reaches 140F- or use the microwave until heated through.
If you are an eggplant lover, I promise, you will love yourself for making this Moussaka! So satisfying and worth the effort! Perfect for entertaining!
Have a happy, delicious week. xo
More Eggplant recipes You’ll love
- Pastitsio | Baked Greek Pasta with Lamb
- Turkish Lamb Wraps
- Meltingly Tender Moroccan Eggplant
- Eggplant Lasagna
- 20+ Best Eggplant Recipes
- 20 Hearty Comfort Food Recipes (for Fall)
- 20 Vegetarian Dinner Recipes!
An authentic, delicious recipe for Eggplant Moussaka- with a Tomato lamb sauce, and creamy béchamel sauce. Vegetarian Adaptable! Can be made ahead and baked prior to serving. See notes for VEGAN.
Tomato Meat Sauce:
- 2 tablespoons olive oil
- 1 large onion, diced
- 4 cloves garlic, rough chopped
- 2 lbs ground lamb, ground beef (or use vegetarian ground meat substitute -Gimme Lean or St Ives Meatless Ground, or use 4 cups cooked lentils). I prefer lamb.
- 1 1/2 cups diced tomatoes, with juices (or 14-ounce can, with juices)
- 3 tablespoons tomato paste
- 1/2 cup white wine (optional, sub 1/4 cup water)
- 2 teaspoons dried oregano
- 1 tsp sugar
- 1 tsp cinnamon
- 3/4 tsp kosher salt
- 1/2 teaspoon cracked pepper
- 2–3 tablespoons fresh chopped parsley
- 3 tablespoons butter or olive oil
- 4 tablespoons flour
- 2 cups milk (or plant-based milk)
- 1/2 teaspoon nutmeg (use fresh grated if possible)
- 1/4 teaspoon kosher salt
- 1/8 teaspoon white pepper or finely ground black pepper
- 1/4 cup grated Parmesan, Pecorino or Kefalotiri Cheese (plus an additional 1/4 cup for the top-optional) or use vegan cheese.
- 1 egg, room temp, lightly beaten (vegans can leave this out)
- Pre-heat oven to 400 F. Cut eggplant into ⅓- ¼ inch thick disks (no thinner), sprinkle with a little kosher salt and let sit in a colander or bowl for 20-60 minutes. Eggplant will start to release liquid (making it less bitter)
- Rinse well, pat dry and brush each side with olive oil (or use spray olive oil).
- Place on parchment lined baking sheet and roast in a 400 F oven until golden and teneder, about 20-30 minutes. Alternatively, you can grill the eggplant on each side (getting nice deep grill marks) then wrap for 10-15 minutes so it steams and cooks through.
- While eggplant is roasting -make the Tomato-Meat sauce: In a large pan, saute diced onion in oil on med-high heat for 3-4 minutes, add garlic, turn the heat down to med-low and saute for 8-10 minutes until onions are tender. Add the ground lamb (or beef or vegetarian meat), turn the heat up to medium and brown, stirring often, for about 15 minutes. Drain fat if any. Add the rest of the ingredients -diced tomatoes, tomato paste, white wine, fresh chopped parsley, sugar, cinnamon, kosher salt and pepper. Stir and cover and let simmer on med-low heat for 20 minutes. Taste, adjust salt to taste. You should have a rich, delicious, thick sauce.
- Make Bechamel Sauce: In a small sauce pan, heat the butter over medium heat. Whisk in the flour and let cook for 2-3 minutes, stirring often. Whisk in the first cup of milk a little at a time. Whisk well, and add the 2nd cup. Stirring constantly, bring to a simmer, lower heat, and let simmer on low for an additional 2 minutes. Remove from heat and add nutmeg, cheese, salt, and pepper. Set aside to cool. Lightly beat an egg in a separate bowl, but do not add it just yet.
- Assemble: Divide eggplant slices into three stacks, reserving the best-looking & largest pieces for the top and bottom layers. The others can be placed in the middle layer, which will be concealed.
- In a greased 8x 13-inch baking dish, (or 11-12-inch round) place one layer of eggplant. Add half the meat sauce. Add another layer of eggplant and the remaining meat sauce. Add the third and final layer of eggplant. Take 3 tablespoons of the warm bechamel sauce, one tablespoon at a time, and whisk it into the beaten egg, to temper the egg (basically warm up the egg gradually so it doesn’t curdle), then pour this egg mixture into the bechamel sauce, whisking until nice and smooth. Spread the bechamel sauce over the final eggplant layer.
- Sprinkle with the remaining cheese (optional) and place in a 350F oven for 50-60 minutes, uncovered until beautifully golden. Let stand 10 minutes before serving.
- Make it ahead: You can assemble this ahead and refrigerate for 2 days before baking. You can bake this ahead and reheat & serve with in 4 days. You can also freeze for 6 months after baking.
- Make in stages: An easy way to approach this is to make this in stages. For example, roast or grill the eggplant a couple of days ahead, make the tomato meat sauce the next day, make the béchamel the last day and assemble the day of baking.
- My personal preferences here are to grill the eggplant if possible and to use ground lamb (or a mix of beef and lamb). Soooo good!
- VEGAN: You can make this vegan by using plant-based meat or 4 cups of cooked lentils in the tomato sauce. In the bechamel, use olive oil, plant-based milk and vegan cheese, and skip the egg. This can be quite good Just make sure both the red sauce and white sauce are flavorful, tasting, and seasoning well (especially if using lentils). Adding a little miso paste to the red sauce can help add depth if needed. I also added some toasted walnuts to the red sauce for depth.
- Serving Size:
- Calories: 564
- Sugar: 12.6 g
- Sodium: 411.8 mg
- Fat: 40.7 g
- Saturated Fat: 14.1 g
- Carbohydrates: 23.5 g
- Fiber: 6.6 g
- Protein: 25.7 g
- Cholesterol: 109.2 mg
Keywords: moussaka, best moussaka recipe, eggplant moussaka, moussaka recipe, authentic moussaka, vegetarian moussaka, eggplant moussaka recipe, vegetarian moussaka