This post may include affiliate links.
This vegan shepherd’s pie has a savory lentil and mushroom filling under fluffy Yukon gold potatoes. It’s delicious, plant-based comfort food that’s become a reader favorite!

This vegan shepherd’s pie is the equivalent of wearing a fuzzy sweater while drinking mulled cider: cozy comfort food to the max! Imagine: a creamy gravy filled with tender vegetables, lentils and scented with fennel and sage.
It’s topped with a fluffy layer of Yukon gold potatoes and fresh rosemary, then layered in a baking dish and baked until golden. This one has become a reader favorite over the years because it makes such a hearty and satisfying dinner that happens to be plant-based!
5 Star Reader Reviews
⭐⭐⭐⭐⭐ “Just made this and it is super! Really “meaty” flavor and very satisfying. Keen to try some others now, thank you!” -Jennifer
⭐⭐⭐⭐⭐ “This dish is absolutely amazing. Everyone that I serve it to loves it! The seasoning is perfect and well balanced. Thanks for the recipe!” -Cindy
Why This Vegan Shepherd’s Pie Recipe Works
Vegan shepherd’s pie is cozy, slow-cooked comfort food, so you’ll need 1 hour to make this recipe. I think you’ll agree that this is 1 hour very well spent! It’s great when you’re looking to impress, for a Sunday dinner or warming winter meal. If you’re well organized, you can serve it on a weeknight, too! Here’s why I love it:
- The filling is thick, meaty and savory. It’s hard to make vegan recipes taste as satisfying as meaty dishes. Here, fennel seed tricks your brain into thinking there’s meat (it’s an ingredient used in sausage). The gravy is ultra thick, and the tender French cut-onions are vaguely reminiscent of a meaty texture.
- It’s full of plant-based protein. This shepherd’s pie is filled with plant-based protein: lentils and peas help it to have sticking power.
- It can be made in about 1 hour. A shepherd’s pie recipe can often take multiple hours to make. But I created this one to be as easy as possible (and even faster than my vegetarian shepherd’s pie!).

Use Yukon Gold Potatoes, Not Russets
Some people claim the best shepherd’s pie is made with Russet potatoes. But we beg to differ! Maybe you can pull it off if you load them with dairy. But for a vegan shepherd’s pie: use Yukon gold potatoes. They have a naturally buttery flavor and creamy texture that can withstand the lack of dairy. It also makes for a beautiful bright yellow color!
Canned Lentils Vs Cooked
Here’s a little time saver: you can use canned lentils instead of cooked for this vegan shepherd’s pie recipe! This speeds up the recipe so you don’t have to get out yet another pot. Here are a few notes:
- Look for canned lentils near the canned beans in the grocery store. Use any type of canned lentils you can find. Make sure to drain before adding them to the filling.
- Or, cook your own lentils! Add 1 ½ cups cooked lentils to the filling, following this brown and green lentils recipe or black lentils recipe. Cook them in water and omit the seasoning listed in the recipe. Do use the kosher salt listed in the recipe, but don’t add extra salt after cooking since the filling will be seasoned. If possible, do this step in advance and refrigerate until making the filling.

Meal Prep Tips To Make It Even Faster
The canned lentils are a little trick to make this vegan shepherd’s pie quicker to prepare. Here are a few more things you can do to make your life easier the day of baking:
- Make the mashed potatoes in advance. This will actually work to your advantage since it also helps the texture set. Refrigerate the Vegan Mashed Potatoes until serving, then reheat them to make it easier to spread onto the filling.
- Make the filling in advance (if you’re really motivated!). You can make the filling in advance too, then refrigerate until serving. Reheat it before baking to keep the same bake time in the recipe (20 minutes). Or, you can bake it from cold: just add a few minutes to the bake time. Let us know if you try that out!

How to Fix a Runny Vegan Shepherd’s Pie
A common issue with shepherd’s pie is a runny filling. Here’s what I recommend you do if you feel like your filling is too runny:
- Cook it a little longer. Simmer a few extra minutes until it’s thicker.
- Make sure to drain your lentils. Make sure not to add extra liquid.
- Add a little more cornstarch or flour: Make a quick slurry with 1 teaspoon cornstarch or flour and a tablespoon of water and stir it in, then cook for a few minutes.
Variations and Substitutions
- Add truffle oil. I love using truffle oil to make it taste restaurant style, though it has a very distinctive flavor (see my truffle oil recipes).
- Use plant-based ground beef. You can brown 12 ounces of vegan ground beef and use it in place of the lentils, or one recipe of my Vegan Ground Beef Crumbles.
- Go for more mushroom. Double the portobellos and skip the carrots.
- Add red wine. Try adding ¼ cup and reducing it before the broth goes in.

What to Serve with Vegan Shepherd’s Pie
I love pairing this recipe with some simple vegetable-based sides, like:
- A simple arugula salad with lemon
- Garlic green beans
- Shaved Brussels sprouts
- A recipe from my green salad recipes
- Easy no-knead bread or my favorite vegan cornbread
Storage and Freezing
Leftovers store refrigerated in an airtight container for up to 4 days. You can reheat at 350°F for 15 to 20 minutes, or microwave individual servings.
I have not tried freezing this recipe, but in theory you can freeze leftovers up to 3 months. I would thaw overnight in the fridge then bake at 375°F until warmed through.
Dietary Notes
This vegan shepherd’s pie recipe is vegetarian, vegan, plant-based, dairy-free, and gluten-free (with cornstarch).
Best Vegan Shepherd’s Pie (1 Hour!)
This vegan shepherd’s pie has a savory lentil and mushroom filling under fluffy Yukon gold potatoes. It’s delicious, plant-based comfort food that’s become a reader favorite!
- Prep Time: 40 minutes
- Cook Time: 20 minutes
- Total Time: 1 hour
- Yield: 6 1x
- Category: Main Dish
- Method: Baked
- Cuisine: British
- Diet: Dairy-Free, Gluten-Free, Vegan, Vegetarian
Ingredients
- 1 recipe Vegan Mashed Potatoes
- ¼ cup olive oil, divided
- 8 ounces portabella mushrooms (2 large mushroom caps)
- 1 medium yellow onion
- 2 large carrots
- 1 teaspoon kosher salt, divided
- 3 tablespoons all-purpose flour (or cornstarch for gluten-free)
- 1 teaspoon whole fennel seeds
- 1 teaspoon smoked paprika
- 1 teaspoon garlic powder
- 1 tablespoon dried sage
- 2 cups vegetable broth
- 1 cup frozen peas
- 1 15-ounce can lentils, drained (or 1 ½ cups cooked lentils; see note*)
- 1 tablespoon soy sauce (or liquid aminos)
- 1 teaspoon finely chopped fresh rosemary, for the garnish
Instructions
- Preheat the oven to 375 degrees Fahrenheit.
- Start the mashed potatoes: Start the Vegan Mashed Potatoes recipe**. (You can also make these in advance; just reheat before spreading onto the filling to bake.)
- Prep the vegetables: Meanwhile, dice mushrooms into bite-sized chunks. Peel and slice the carrots into thin half-circles. Cut the onion into thin slivers length-wise (also called French cut; see the instructions in 1:40 of the linked video).
- Make the filling: In a large pot, heat 2 tablespoons olive oil on medium high heat. Cook the mushrooms for 5 minutes until golden and tender. Reduce the heat to medium and add 2 tablespoons olive oil and the sliced onion and carrots. Sprinkle with ½ teaspoon kosher salt and cook 5 to 7 minutes until the onions are tender and just browning.
- Reduce the heat to medium low. Stir in the flour (or cornstarch), fennel seeds, smoked paprika, garlic powder, and dried sage and cook for 1 minute. Add the vegetable broth, peas, lentils (drained if canned), soy sauce and remaining ½ teaspoon kosher salt. Cook for about 5 minutes until the broth is very thick and the vegetables are heated through.
- Finish the mashed potatoes: When the potatoes are done cooking, mash them according to the instructions in that recipe.
- Bake: Pour the filling into a 2-quart small baking dish. Spread the mashed potatoes in a layer on top. Bake 18 to 20 minutes until the potatoes are lightly browned. If desired, broil for 1 to 2 minutes to brown the top. Garnish with chopped rosemary and serve warm.
Notes
*If you can’t find canned lentils, cook your own lentils and add 1 ½ cups of the cooked lentils to the filling. Use our Brown Lentils, Green Lentils, French Lentils, or Black Lentils recipes: you can cook them in water and omit the seasoning (or leave it for extra flavor!). Do cook with the kosher salt, but don’t add extra after cooking.
**Want to impress? Stir in a little truffle oil to the mashed potatoes to taste. Here’s our favorite All Natural White Truffle Oil.





Another winner, thank you! LOVED IT!
So glad!
I followed the directions exactly (using cornstarch), the consistency was fine, the potatoes were delicious. The only reason I didn’t give it five stars is totally subjective. I have discovered I am not a huge fan of sage or fennel, or the combination. I am definitely going to try this recipe again, but experiment with the seasonings to get the flavor profile I prefer. If you love sage and fennel, you are going to love this recipe.
That totally makes sense! Thank you so much for letting me know — we love cooking with those spices, but I totally understand not loving those flavors! Thanks for trying it out!
Just made this for our first night of the Fast. It is super! Really “meaty” flavour and very satisfying. Keen to try some others now……thank you!
Really enjoyed this recipe! I had no trouble getting the gravy to thicken – I made a hot broth of boiling water and vegetable bouillon, used cornstarch, and added the broth in about 4 splashes of 1/2 c. each, stirring in between. Next time I might use a smaller dice for the portabellas and carrots so they are a similar size to the peas, but I liked the French cut onions and would keep those.
This dish is absolutely amazing. Everyone that I serve it to loves it! The seasoning is perfect and well balanced. Thanks for the recipe!
Can this be made without using oil when making the vegetables?
You could, but it does add some heartiness.