Vegetarian Shepherd’s Pie

This post may contain affiliate links. Please read my disclosure policy.

Show-stopping Vegetarian Shepherd’s Pie features a delicious medley of vegetables, a flavorful gravy and the best mashed potatoes on top.

Not only will you be craving veggies like crazy after eating this meal, but you also won’t be missing the meat! This Vegetarian Shepherd’s Pie is great for company (especially when serving vegetarians) and this recipe is a perfect candidate for making ahead of time or making as a freezer meal.


Close up image of Vegetarian Shepherd's Pie

Vegetarian Shepherd’s Pie

After sharing this traditional Shepherd’s Pie (well, technically, a Cottage Pie) last year, I’ve made it for company countless times. It gets rave reviews every time I serve it, including from my boys — they’ll request it frequently. And since I have several vegetarian family members, I thought it was time they got in on the amazing-ness that is shepherd’s pie — vegetarian style!

While I’ll be the first to admit, I love the tender beef in regular shepherd’s pie, this vegetarian version is nothing short of amazing. It’s got a great meatiness from the mushrooms and so much flavor from the variety of vegetables and herb-infused gravy. The mashed potatoes, of course, are the perfect creamy finishing touch. So, let’s get started talking about Vegetarian Shepherd’s Pie!

Process shots-- image of the Shepards pie being made: cooking potatoes; browning veggies; preparing mushrooms; putting it all together.

How to make Vegetarian Shepherd’s Pie

  1. Start with the mashed potatoes. Peel and chop the potatoes, add cold water to cover, add salt and a bay leaf (we’ll finish the potatoes while the veggies are simmering).
  2. Sauté onion, garlic, carrot, and celery. The key here is to finely dice the vegetables, so they cook down and get tender quickly and evenly.
  3. Add in thinly sliced mushrooms. Try to purchase small (bite-sized) and evenly sized mushrooms for the best texture.
  4. Add in flour, tomato paste, herbs, and then broth. Cook down until it looks like this image. Use 1/2 cup vegetable or beef broth (if vegetarian isn’t a requirement). Traditional recipes use wine instead of broth, and if you want to go that route, use a medium-bodied red wine like pinot noir.

Process shot-- image of the filling being made in the pan for this shepherd's pie.

Process, continued

5. Once cooked down, add in the fire-roasted diced tomatoes, peas, corn, bay leaf, and vegetable stock. While vegetable broth works, the stock adds more flavor. I highly recommend San Marzano® tomatoes for this Vegetarian Shepherd’s pie.
6. Now the base is all in; time to simmer everything down and reduce until it’s thick and the vegetables are perfectly tender.
7. While everything is simmering, the potatoes can be pressed through the ricer and finished off. For perfectly fluffy potatoes, I recommend a potato ricer. I find the ricer makes finishing the potatoes a cinch and gives the potatoes the perfect texture. Don’t forget to season the potatoes before adding them to the pie!
8. Add a drizzle of olive oil on top, bake and then broil to get the top crispy.

Images of the mashed potato topping, before and after broiling.

Vegetarian Shepherd’s Pie FAQs

Because shepherd’s pie is a heavier dish that already includes meat, potatoes, and vegetables, I would recommend a light salad to go with it. Here are a few of my favorite sides:

Make-ahead Vegetarian Shepherd’s Pie

  • Vegetarian Shepherd’s Pie is the perfect dish to prepare ahead of time. Make the veggie base the night before (or the morning of) and store it covered tightly in the fridge. Prepare the mashed potatoes at the same time and store (covered, in the fridge) separately. Assemble right before baking when ready to eat (slightly warm the mashed potatoes so they’ll spread easily). You’ll need to add 5-10 additional minutes to the bake time depending on how cold the pie is.
  • After your shepherd’s pie is cooked, you can store it for an additional 3-5 days, covered and refrigerated. You may need to adjust the storage time depending on whether you used fresh ingredients or leftovers. Using all fresh veggies, it should last 5 days in the fridge (covered and stored well).

Overhead image of the vegetarian Shepards pie still in the pot with a wooden spoon in it


  • Vegetarian Shepherd’s Pie with meat substitute: Feel free to add in up to 8 ounces of frozen vegetarian meat crumbles (add when adding in mushrooms)
  • Vegetarian Shepherd’s Pie with cauliflower mash: Replace the mashed potatoes with cauliflower mashed potatoes instead. You can also reduce the calories on the mashed potatoes by using fat-free or low-fat sour cream and/or using half and half (or whole milk) in place of the heavy cream.

More delicious vegetarian meals

FOLLOW ALONG! Subscribe to my newsletter and follow along on Facebook, Pinterest and Instagram for the latest updates, recipes and content.

Vegetarian Shepherd's Pie

4.89 from 9 votes
Show-stopping Vegetarian Shepherd's Pie with a medley of fresh vegetables, a flavorful gravy, and the best mashed potatoes on top.
Print Recipe

Vegetarian Shepherd's Pie

4.89 from 9 votes
Show-stopping Vegetarian Shepherd's Pie with a medley of fresh vegetables, a flavorful gravy, and the best mashed potatoes on top.
Course Dinner, Main Course, Vegetarian
Cuisine American, Vegetarian
Keyword vegetarian shepherd's pie
Prep Time 1 hour
Cook Time 30 minutes
Total Time 1 hour 30 minutes
Servings 6 servings
Calories 485kcal
Author Chelsea Lords
Cost $6.39


  • 2 tablespoons olive oil, divided
  • 2 garlic cloves minced
  • 1 cup diced yellow onion (~1/2 of 1 large onion)
  • 3/4 cups diced carrots (~2-3 large carrots)
  • 3/4 cups diced celery (~3-5 stalks)
  • 8 ounces cremini mushrooms, thinly sliced
  • 1 teaspoon EACH: dried thyme, Italian seasoning
  • 1/2 teaspoon paprika 1 tsp salt, 1/2 tsp pepper
  • 2 tablespoons white flour
  • 2 tablespoons tomato paste
  • 2 bay leaves, separated
  • 1 cup frozen sweet peas
  • 1 cup frozen yellow corn
  • 1 can (14.5 ounces) fire-roasted diced tomatoes, undrained
  • 1 1/2 cups vegetable stock divided (Note 1)
  • 1/2 teaspoon red wine vinegar


  • 2 and 1/2 pounds potatoes, I use an equal mix of Yukon gold and russet; if just using one, use Yukon gold, peeled and cubed
  • 1/2 cup heavy cream (can use half and half)
  • 1/2 cup sour cream (can use light or fat free)
  • 6 tablespoons unsalted butter
  • Fine sea salt and freshly cracked pepper
  • Optional: fresh parsley or fresh thyme (for topping)


  • POTATOES: Peel and then cube the potatoes into golf-ball sized pieces. Place in a strainer and rinse under cold water until the water rinsing through comes out clear. Place in a large pot and cover with cold water. Add 1 tablespoon fine sea salt and 1 bay leaf, stir, and bring to a boil. Reduce to a simmer and cook until the potatoes are fork-tender; about 15-20 minutes. When a potato can easily be pierced, drain the potatoes in a strainer and make sure you get rid of ALL the extra moisture. Let them dry for about 3 minutes. Discard the bay leaf.
  • VEGGIES: While potatoes are cooking, pour 1 and 1/2 tablespoons olive oil in a large oven-safe skillet (1.5 quart skillet) over medium high heat. Add finely chopped onion and cook, stirring frequently for about 1 minute. Add in the garlic and stir for 30 seconds. Add the finely chopped carrots and celery and cook for another 3-5 minutes or until veggies are softened, stirring occasionally. Meanwhile, thinly slice the mushrooms. Add in the mushrooms and cook another 3-5 minutes, stirring occasionally until mushrooms are tender. Add in the flour and stir for 1 minute to cook off the rawness of the flour. Add in the tomato paste, thyme, Italian seasoning, paprika, and salt and pepper to taste. (I add 1 teaspoon salt, 1/2 teaspoon pepper, add to preference). Stir for another 1-2 minutes. Add in 1/2 cup of the vegetable broth (see note 2) and stir for 1-2 more minutes or until thick.
  • FINISHING VEGGIE BASE: Reduce heat to medium and add in the can of diced tomatoes, frozen peas, frozen corn, and remaining 1 bay leaf. Add in the remaining 1 cup of vegetable stock and stir until combined. Bring this mixture to a simmer then reduce heat to medium and cook for 25-35 minutes, stirring every 5 or so minutes, until you have a thickened gravy. Stir in the red wine vinegar. Preheat the oven to 350 degrees F.
  • FINISHING VEGGIE BASE CONT.: Remove veggies from heat, cover, and refrigerate until ready to bake. (I like making this in the morning and assembling right before dinner). If making immediately, place in the fridge until potatoes are completely finished (you want the mixture to chill for as long as possible so the layers stay separate when baking, 15-20 minutes at a minimum). If you didn't prepare in an oven-safe skillet, transfer to a 1.5-2 quart oven-safe dish. Remove the bay leaf and discard.
  • POTATOES CONT.: While the potatoes are drying in the strainer, add the heavy cream, sour cream, and butter to the pot the potatoes cooked in. Melt on low heat and stir to combine. While potatoes are still hot, put them through a ricer and add on top of the butter/sour cream mixture. Stir with a wooden spoon until smooth. Season to taste with salt and pepper (I use about 1/2 teaspoon salt and 1/4 teaspoon pepper). Cover and place in the fridge until ready to assemble pie.
  • ASSEMBLY: Gently spread the potatoes in an even layer on top of the veggies. Use a large spoon or silicone spatula to press them to cover all the veggies and make sure to "seal" the edges with potatoes. Use a fork to add marks onto the surface of the potatoes. Drizzle with the remaining 1/2 tablespoon olive oil.
  • BAKE: Bake in preheated oven for 25-30 minutes or until the potatoes are golden brown and the edges are bubbling. Broil for 1-2 minutes on high to get the very tops of the potatoes crispy! (See note 2) Remove from heat and garnish with fresh thyme or fresh parsley as desired. Serve hot.

Recipe Notes

Note 1: Traditional Shepherd's Pie uses red wine in the gravy. If you'd like to do the same, you can substitute 1/2 cup of medium-bodied red wine, such as pinot noir, for the same amount of vegetable broth.
Note 2: Glass baking pans, including Pyrex® cannot withstand the high heat of a broiler. Additionally, if your baking pan has plastic or wooden handles, they won't work, either. Most other pans are safe for oven and broiler use.

Nutrition Facts

Serving: 6g | Calories: 485kcal | Carbohydrates: 54g | Protein: 9g | Fat: 28g | Saturated Fat: 15g | Cholesterol: 67mg | Sodium: 340mg | Potassium: 1309mg | Fiber: 8g | Sugar: 9g | Vitamin A: 3976IU | Vitamin C: 54mg | Calcium: 106mg | Iron: 3mg

We do our best to provide accurate nutritional analysis for our recipes. Our nutritional data is calculated using a third-party algorithm and may vary, based on individual cooking styles, measurements, and ingredient sizes. Please use this information for comparison purposes and consult a health professional for nutrition guidance as needed.


I love hearing from you when you've made one of my recipes! Tag me on Instagram at @ChelseasMessyApron or leave me a comment below.




How to Make Mealtime Hassle Free!

5 secrets to easy, fast and delicious dinners.

  • This field is for validation purposes and should be left unchanged.

Leave a Comment:

Your email address will not be published. Required fields are marked *

Recipe Rating


  1. 5 stars
    My whole family loved this vegetarian and non-vegetarian alike. I added about 1/4 tsp. of red pepper flakes and 1.5 cups cooked lentils for protein to the vegetables. It’s now my go to vegetarian meal.

    1. I am so happy to hear this Sherri! So glad you family loves this Vegetarian Shepherd’s Pie! 🙂 Thanks for your comment!

  2. How would you recommend I make this gluten free? Do you think corn starch would work in place of the flour?

  3. 5 stars
    This is probably the best thing I’ve ever made. I added fake ground meat from Trader Joe’s and it came out very well, you couldn’t even tell that there was no meat in it. My family ate it up so fast! Thank you for this recipe!

  4. Great recipe BUT it actually takes a whole lot longer to make than what it actually says. It would be great to know, up front, that the vege base needs to be refrigerated after its cooked as it’s now going to take me 2.5 hours to make this, factoring that in. The recipe is structured so that you start making the potato mash before you start on the vege base, which is a bit misleading since it then needs to be refrigerated. This meant that my mash was ready an hour before it needed to be.
    Probably won’t be making again due to it taking so long to cook 😔

  5. 5 stars
    This was amazing! Only thing i changed was adding a spoonful of smokey bbq sauce as we can’t get hold of the canned tomatoes you use. Did take a long time to make, but will definitely make it again!

  6. 5 stars
    Loved it! I’ve Mae it twice now for the family, we eat mostly vegetarian and kiddos LOVED
    IT! I added some Yves veggies ground round
    to the recipe too which make it extra delish.

Never Miss a Recipe

  • This field is for validation purposes and should be left unchanged.