Vegan Lentil Shepherd’s Pie

Jump to Recipe
This is the best vegan shepherd’s pie you’ll try! A hearty, flavor-packed lentil and sticky onion filling meets fluffy mashed potatoes and cauliflower in this protein-rich plant-based dinner. The perfect healthy comfort food for winter!
Prep 15 mins
Cook 1 hr 30 mins
Total 1 hr 45 mins
5 from 365 votes

One of my favorite cozy winter recipes is this Vegan Lentil Shepherd’s Pie. I came up with this recipe when I realized that the shepherd’s pie recipe from my cookbook, The Vegan Instant Pot Cookbook was so popular.

It’s hearty winter comfort food that is packed with bold and rich flavors but is sneakily healthy. It’s impressive enough to serve as a holiday main dish, but works great for any cold weather dinner.

This lentil shepherd’s pie starts with a sticky, umami-packed lentil and onion filling. It gets topped with a buttery mashed potato-cauliflower topping, then baked in the oven until perfectly golden brown. It’s a community favorite adored by both vegans and omnivores alike!

In this post:
1. Ingredients in Lentil Shepherd’s Pie
2. Step-by-step Instructions
3. Tips for making this recipe
4. Frequently Asked Questions
5. Video: How to make Vegan Shepherd’s Pie

healthy vegan lentil shepherd's pie - flat lay in skillet

Ingredients in Lentil Shepherd’s Pie

A traditional shepherd’s pie fillings contain onions, carrots, celery, peas, and of course meat (typically lamb).

My plant-based version starts with brown (or green) lentils and onions, which get cooked down until beautifully browned, alongside plenty of garlic. These ingredients pack in so much savory depth of flavor that there’s no need for carrots and celery. Also, I hate mushy peas.

A few other ingredients help take this recipe over the top:

  • Tomato Paste gets cooked down, bringing a subtle tangy sweetness and amping up the umami.
  • Red wine enhances the meaty earthiness of the lentils (see FAQ below for substitutes if you can’t have red wine).
  • Tamari (or soy sauce) and vegan Worcestershire sauce (optional) add additional bold savoriness.
  • Balsamic vinegar brings a slight sweet tang that balances everything out.
  • And tahini adds a nutty creaminess that pulls the filling together

As for the mashed potato-cauliflower topping, I prefer Russet Potatoes because their high-starch content makes for the fluffiest mashed potatoes. This is especially useful to balance the cauliflower, which is not starchy.

Step-by-step Instructions

Heat the olive oil in a 12-inch ovenproof sauté pan over medium to medium-high heat. Cook the onions until nicely browned, 8-10 minutes. Then add the garlic and fresh herbs and cook for 2 minutes.

Add the tomato paste and cook until darkened (2-3 minutes), then stir into the onions.

Deglaze the pan with the red wine. Cook for 3-4 minutes until the mixture is jammy.

Add the vegetable broth, lentils, bay leaves, and paprika. Simmer for 30 minutes until lentils are al dente.

Finish the lentil filling by stirring in tahini, balsamic vinegar, tamari, vegan Worcestershire sauce (optional), and salt and pepper.

Stir well until the lentils are creamy and thickened.

While the lentils are cooking, make the mashed potato-cauliflower topping. Boil the cauliflower florets and potatoes in boiling salted water with rosemary for 15 minutes until fork tender. Drain and dry thoroughly.

Add the vegan butter, plant milk, nutritional yeast, salt and pepper to the boiled cauliflower and potatoes. Use a potato masher or ricer (or an electric mixer on low speed) to mash until smooth.

Spoon the mashed potato-cauliflower topping on the lentil filling and gently spread out out with an offset or silicone spatula. Drizzle the top with extra virgin olive oil, fresh thyme leaves, and black pepper.

Bak for 20 minutes at 375°F/190°C. Afterwards, pop under the broiler for a few minutes for extra browning on top.

In the mood for even more cold weather vegan comfort food? Give these a try:

Creamy Mushroom and Black Beluga Lentil Stew
The Best Vegan Mashed Potatoes
Thai Butternut Squash Chickpea Curry

Tips for making this recipe

How to avoid a watery mashed potato-cauliflower topping.

  1. Once the cauliflower and potatoes are done boiling, drain them thoroughly in a colander. Let the potatoes sit in the colander to dry out while you work on the cauliflower.
  2. Transfer the cauliflower to a fine-mesh sieve, and place a bowl on top of the boiled cauliflower. Push down and squeeze out as much water as you can. There will be a lot more water than you think! Or wrap the cauliflower in a clean dish towel and tie it up. Then squeeze it into a ball and wring out all of the excess water.

How to make this recipe more indulgent (great for a holiday meal).

  1. If you taste the mashed potato filling and think it needs a bit more buttery goodness, add some more a little more vegan butter!
  2. Or just use all potatoes and skip the cauliflower. My Miso Butter Mashed Potatoes take this recipe over the top.

How to make this recipe as efficiently as possible.

  • First, prep the lentil filling ingredients. Second, prep the topping ingredients.
  • Third, start cooking the lentil filling. While that’s simmering, boil the potatoes and cauliflower + preheat the oven.
  • Next, drain and dry the potatoes & cauliflower. And make the mashed potato-cauliflower topping.
  • Assemble the shepherd’s pie and bake it off.
slice of vegan lentil shepherd's pie on plate

Frequently Asked Questions

Can you substitute the red wine?

If you do not consume alcohol, skip the step of deglazing the pan with red wine. Instead, just start deglazing the pan with the vegetable broth. It helps to use a vegetable broth that is quite flavorful and rich (a homemade one, or my favorites are Imagine Organic and this vegan “chicken” broth seasoning).

While I do think the wine adds something special, many readers have made this recipe without the wine with great results.

What kind of potatoes do you recommend for the topping?

I recommend Russet potatoes when I make the topping with cauliflower. They are fluffier and work better with the cauliflower than, say, Yukon Golds. But if you make a mashed potato-only topping, either variety works great.

Are my lentils cooked through?

30 minutes should be enough time to cook your lentils al dente, but not overdone or soft. It’s okay if the lentils feel firmer than you’d expect, as they’ll also cook again in the oven.

What if I don’t have a 12-inch ovenproof skillet?

Make the Lentil Filling in the largest skillet you have and then transfer it to a large (3 quart/3 liter) baking dish. Spread the topping on and bake as instructed.

How do you store and reheat shepherd’s pie? Can you freeze it?

Store leftovers in an airtight container in the fridge for up to 4 days. Or, in the freezer, for up to 3 months.

To reheat, transfer portioned out leftovers to an ovenproof dish and tent with foil. Heat at 325°F/163°C until lentils and potato-cauliflower topping are both warmed through.

If frozen, I recommend allowing the shepherd’s pie to thaw before reheating (otherwise, the potato-cauliflower topping can be a bit icy and lend watery results).

What should I serve this shepherd’s pie with?

A hunk of rustic multigrain bread or sourdough
A fall or winter salad like this Roasted Butternut Squash Kale Salad or this Kale and Brussels Sprouts Salad
Steamed or lightly sauteed broccoli or green beans

closeup of vegan shepherd's pie in a skillet

Watch! How to make Lentil Shepherd’s Pie

My YouTube video is packed with tips so give it a look if you’re interested in learning more!

A perfect vegan meal for cold winter days ❄️
A perfect vegan meal for cold winter days ❄️

If you love this Lentil Shepherd’s Pie recipe, be sure to rate and review the recipe below :)

The Best Vegan Lentil Shepherd’s Pie

5 from 365 votes
This is the best vegan shepherd’s pie you’ll try! A hearty, flavor-packed lentil and sticky onion filling meets fluffy mashed potatoes and cauliflower in this protein-rich plant-based dinner. The perfect healthy comfort food for winter!
Prep Time: 15 mins
Cook Time: 1 hr 30 mins
Total Time: 1 hr 45 mins
Course: Dinner
Cuisine: English
Diet Vegan
Serving size: 8


Lentil Filling

  • 1 tablespoon olive oil
  • 3 large yellow onions, diced
  • 8 cloves garlic minced (use less if you’re not a huge fan of garlic)
  • 1 tablespoon fresh thyme leaves, roughly chopped
  • 2 teaspoons fresh rosemary leaves, roughly chopped
  • 3 tablespoons tomato paste
  • 1/2 cup (120 mL) dry red wine (such as Pinot Noir or Malbec)*
  • 1 1/2 cups (10 ounces / 285g) green lentils (or brown lentils)
  • 3 3/4 cups (900 mL) vegetable broth
  • 2 bay leaves
  • 1 1/2 teaspoons sweet or hot paprika
  • 1/4 cup (56g) smooth tahini**
  • 1 tablespoon tamari (or soy sauce)***
  • 1 tablespoon good-quality balsamic vinegar
  • 2 teaspoons vegan Worcestershire sauce (optional)****
  • Plenty of kosher salt or sea salt (I used 1 1/2 – 2 teaspoons kosher salt)
  • Freshly cracked black pepper to taste

Mashed Potato Topping

  • 20 ounces (680g) Russet potatoes
  • 16 ounces (454g) cauliflower, cut into large florets
  • 1 1/2 teaspoons kosher salt, plus more to taste
  • 1 rosemary sprig (optional)
  • 4 tablespoons vegan butter, softened at room temperature (or olive oil)
  • 1/2 cup (120 mL) “lite” coconut milk*****
  • 1 tablespoon nutritional yeast
  • Freshly cracked black pepper to taste

Optional finishes and garnishes

  • Extra virgin oil for baking and finishing
  • Flaky sea salt and black pepper
  • Fresh thyme leaves
  • Chopped flat-leaf parsley


  • Make the Lentil Filling. Heat the olive oil in an ovenproof 12-inch skillet over medium to medium-high heat until hot. If you don’t have an ovenproof skillet, you’ll need to transfer the cooked lentil filling to a baking dish when it’s time to bake.
  • Add the onions with a couple pinches of salt and sauté for 8-10 minutes, or until most of the onions are browned. Stir occasionally to prevent burning, but not too often so that they can brown. Add the garlic, thyme and rosemary and cook for 2 minutes, stirring frequently to prevent burning.
  • Push the onions to the edges of the pan so there’s an empty space in the middle of the pan. Add the tomato paste into the empty space and stir for 2-3 minutes, or until it darkens in color. Reduce the heat to medium, as needed.
  • Pour in the red wine and deglaze the pan, stirring up any browned bits, until the liquid has mostly evaporated and the smell of alcohol has dissipated, about 3-4 minutes.
  • Add the vegetable broth, along with the lentils, bay leaves, and paprika. Stir to combine and increase the heat to bring to a boil. Once boiling, reduce heat to maintain a rapid simmer, and simmer until the lentils are just tender and most of the liquid has been absorbed, 25-30 minutes.
  • Turn the heat to low. Add the tahini, tamari, balsamic vinegar, and vegan Worcestershire sauce (if using). Stir until well incorporated. Taste for seasonings, adding a generous amount of salt (I used about 1 teaspoon kosher salt) and black pepper. Set aside.
  • Make the Mashed Potato Topping. Peel the Russet potatoes and then rinse them under cold water. Chop the potatoes into eighths.
  • Place the potatoes and cauliflower florets in a large saucepan or Dutch oven and add just enough water to cover. Add 1 1/2 teaspoons kosher salt and stir to combine. Place the rosemary sprig on top. Bring to a boil and cook until both potatoes and cauliflower are fork-tender and are very soft when poked, about 15 minutes.
  • Thoroughly drain the potatoes and cauliflower in a colander and discard the rosemary sprig. For the potatoes, pat them dry with paper towels or a clean dish towel. For the cauliflower, you’ll need to squeeze out the excess water or it’ll be very watery.
    NOTE: See the “tips” section in the post for details on how to squeeze out the excess water.
  • Return the vegetables to the saucepan or transfer them to a large bowl. Add in the softened vegan butter, lite coconut milk, nutritional yeast, along with salt and black pepper to taste. You can mash everything together using a handheld potato masher, but I use an immersion blender. Taste for seasonings, adding more salt as needed (I used about 1 teaspoon kosher salt).
  • Assemble the Shepherd’s Pie. Preheat the oven to 375°F/190°C. If your skillet is ovenproof and has enough space, leave the Lentil Filling in there. If not, transfer it to a large (3 quart/3 liter) baking dish. Smooth the Lentil Filling out. Then, spoon and carefully spread out the Mashed Potato Topping on top, covering the whole surface. For more flavor, drizzle the top with extra virgin olive oil and some extra pinches of salt, pepper, and fresh thyme leaves.
  • Bake for 20 minutes, or until the lentil filling starts to bubble up. Remove from the oven and turn on your oven’s broiler. Place the pan under the broiler for a few minutes until the crust is golden brown. To finish, drizzle with more olive oil and garnish with fresh parsley, if desired.
  • Note: if you want the pie to solidify more, allow it to rest for at least 20 minutes in the pan.
    Store any leftovers in an airtight container in the fridge for up to 4 days.


* If you do not consume alcohol, just skip this step and start deglazing the pan with the vegetable broth instead of wine. 
** The tahini brands I regularly use are Soom Tahini, Seed + Mill, and the Whole Foods 365 brand. If you typically refrigerate your tahini, try to bring it to room temperature, as it’ll be easier to stir into the lentils.
*** To keep this dish soy-free, omit the tamari and just add a bit more salt to taste.
**** Vegan worcestershire sauce brands: Annie’s Homegrown, Whole Foods 365, Sprouts, Simple Truth, O Organics. 
***** If allergic to coconut, use full-fat unsweetened oat milk. 
Tip: If using golden potatoes instead of Russets, do NOT use an immersion blender – the potatoes will get gummy. Use a potato masher or ricer instead. 

Calories: 360kcal | Carbohydrates: 49g | Protein: 15g | Fat: 12g | Saturated Fat: 2g | Polyunsaturated Fat: 4g | Monounsaturated Fat: 5g | Trans Fat: 1g | Sodium: 1432mg | Potassium: 1040mg | Fiber: 15g | Sugar: 7g | Vitamin A: 842IU | Vitamin C: 41mg | Calcium: 79mg | Iron: 5mg

Did you make this recipe?

Tag @rainbowplantlife and hashtag it #rainbowplantlife

Leave a Comment & Rating

If you enjoyed this recipe, please consider giving it a star rating along with your comment! It helps others discover my blog and recipes, and your comments always make my day :) Thank you for your support!

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

Rate this recipe

504 comments on Vegan Lentil Shepherd’s Pie

  1. Destiny

    5 stars
    GIRLFRIEND!!! This recipe slays!!!! I made this for thanksgiving for myself while everyone else was suppose to eat turkey. The whole family LOVED it. It must be eaten with cranberry sauce. Hands down- one of the best things I’ve ever made. Thanks so much!

    1. Kaitlin @ Rainbow Plant Life

      Thanks for the lovely review, Destiny! So lovely to hear you’re such a fan of the Shepherd’s Pie!

  2. Andrea

    5 stars
    Wow! Just wow! I’m not a confident cook (I usually cook “20 minute” meals and I’m guilty of saving a dozen good looking recipes without actually following through) but when I saw all the positive reviews on this dish I just had to give it a try. I followed the instructions methodically. My only substitute was Maggi Jugo seasoning in place of Worcestershire vegan sauce. I was blown away by the result! So rich, warming and delicious. My family thought the same and I was proud of myself for trying something new. Thank you so much for the video and written notes, they are really clear and easy to follow. I’m finally out of my dinner rut and I can’t wait to try the moussaka next!

    1. Kaitlin @ Rainbow Plant Life

      So lovely to hear you are a big fan of the recipe, Andrea! And we just know you’re going to love the Moussaka!

  3. Debbie

    5 stars
    The great part of this recipe is the author explains the seasonings and thickening ingredients, so it’s easy to customize it to what you have in hand. I made it with mushrooms. So freaking good! Thank you

    1. Kaitlin @ Rainbow Plant Life

      Perfect, Debbie! Thanks for sharing :)

  4. SaraM

    5 stars
    Just made this AGAIN, and I went wild and crazy and added random carrots and celery that were past prime prettiness into the lentil filling. I also used your Miso Butter Mashed potatoes for the topping, using up some baby taters that were also past prime prettiness. It tasted great! For dessert, I made Chai Spiced Apple Crumble and it was great, too. This time I made extra chai spice so I can add it to tea and stuff. Thanks for helping to keep us happily fed and healthy! Since I discovered your YouTube videos, and IP cookbook, and dozens of recipes, my hubby’s doctor took him off blood pressure, cholesterol, and gout medications because his bloodwork is so good. Thanks for helping take great care of my favorite human!

    1. Rod

      5 stars
      Where can random carrots and random celery be bought?

    2. Kaitlin @ Rainbow Plant Life

      Thank you so much for the thorough review, Sara! Great to hear you were able to incorporate some veggies that would have otherwise gone to waste. The chai apple crumble sounds incredibly delicious!

      And we are beyond grateful to be able to help people like you and your husband eat more plants! It’s an understatement to say it warms our hearts knowing RPL is contributing to the health and happiness of many others. We wish both you and your husband health and prosperity for the rest of your lives, and thank you so much for making the recipes!

  5. Don Clees

    I don’t consume vinegars or nutritional yeast. Since many of your recipes call for these, can you recommend any substitutes? Thank you Nisha, you are doing a great job.
    Don Clees

    1. Kaitlin @ Rainbow Plant Life

      Hi Don, in many instances you can use citrus instead of vinegar. As for nutritional yeast, depending on the recipe, vegan parmesan could be a good replacement. Or you could add some other source of umami in some instances as well such as mushrooms, miso paste, soy sauce, tomatoes, onions, etc. It is definitely situational so let us know of any specific questions you may have!

  6. Priscilla Acevedo

    5 stars
    Soooooo delicious!!!

    1. Kaitlin @ Rainbow Plant Life

      Thanks for the lovely feedback, Priscilla!

  7. Jaynie

    5 stars
    Such a tasty and delicious dish!!! I’m super impressed. I would use a stick blender or similar to mash the potato and cauli. Hand masher does not cut it!

    1. Kaitlin @ Rainbow Plant Life

      So happy you loved it, Jaynie! And thanks for the tip!

  8. Kendall

    5 stars
    Love this recipe! I’ve made it with leftover veggies on top of the lentil layer such as pan fried green beans and it was great (: just recently remade a 3x batch for a large friends gathering and it was a hit even with the non-veg folk!

    1. Kaitlin @ Rainbow Plant Life

      Yum! So good to hear you love this recipe enough to share it with friends, Kendall :)

  9. Lindsey

    5 stars
    I added carrot and mushrooms to get some extra veggies in. This recipe was unusual but very lovely. My husband and I REALLY enjoyed all the flavours. I used canned lentils to save on cooking time.
    Absolutely delicious, will definitely make this again.

    1. Hannah @ Rainbow Plant Life

      That sounds tasty! Thanks for trying the recipe, we are so glad you liked it!

  10. Peg

    I couldn’t find the “tips” section for directions as to squeezing out the water from the cauliflower.

  11. Lisa

    5 stars
    Amazing recipe! I made this for the whole family even those that are anti vegan and they absolutely adored it!

    1. Support @ Rainbow Plant Life

      Lisa, So glad to hear everyone loved this recipe!

  12. Becky

    I can’t wait to try it! My daughters have given me grief every time I make “mashed potatoes” because I always made them with cauliflower (no potato) when they were little… they didn’t know the difference! Also your kitchen is so beautiful!

    1. Support @ Rainbow Plant Life

      We can’t wait for you to try it either, Becky! Funny story about your daughters :) And aw, thanks for the compliment!

  13. Sally

    5 stars
    Made as individual pies for grand final footy watching. Absolutely delicious! I steamed the cauliflower above the potatoes and found they didn’t get watery. A hit amongst the meat eaters too!!

    1. Support @ Rainbow Plant Life

      Awesome, Sally. Thanks for your comment and for taking the time to review!

  14. Emma

    Can this be made ahead of time? I want to make this for Thanksgiving to take to my family who live a day’s drive away. Made this for my husband’s birthday a few months ago and WOW… I can’t wait to eat some more!

    1. Support @ Rainbow Plant Life

      Hi Emma, yes! We suggest you make the lentil filling and the mash topping separately and combine them and bake them together right before you’re ready to serve it. Enjoy!

  15. Taylor Novak

    Okay, this has to be my new favorite recipe! So good! Everyone loved it. My toddler ate every last bite!

    1. Support @ Rainbow Plant Life

      That’s so great to hear, Taylor! Next time, would you mind leaving a rating alongside your review? Star ratings are big help to readers who are thinking of making the recipe. Thanks!

  16. Karen

    5 stars
    Easier to steam the potatoes and cauliflower and then no problems with the mash being too wet. Made the lentil part in the instant pot, took ten minutes, sautéed veggies first, deglazed with stitch and added a handful of barley too.

    1. Support @ Rainbow Plant Life

      Thanks for sharing, Karen!

    2. Carol A McCollum

      I like your comment about steaming potatoes & cauliflower… Not sure what you mean by ‘deglazed with stitch.’ What is ‘stitch’? I love barley! When did you add it & to what other ingredients did you add it to?

  17. Vanessa

    5 stars
    Have made this a few times with a few variations – lovely texture and mix of flavours

    1. Support @ Rainbow Plant Life

      Awesome, Vanessa. Thanks for your comment and for taking the time to review!

  18. Breid O'Carroll

    3 stars
    I enjoyed but didn’t soak the lentils so had terrible tummy ache – had to throw the rest out.

    1. Support @ Rainbow Plant Life

      Hmm, we haven’t had this problem ourselves but we are sorry to hear about the tummy ache! We hope you can try the recipe again to fit your needs and we are glad you enjoyed the recipe otherwise.

    2. Carol A McCollum

      Sorry you had a terrible tummy ache & had to throw out the rest of what you made. I’ve seen other recipes that suggest soaking the lentils at least 30mins, & then drain the lentils… AND rinse the lentils. Kinda like what I do when I soak beans & then drain & rinse before using them in recipe. Maybe try the soak/drain/ rinse & see if it works fo you. Enjoy!

  19. Carol

    5 stars
    I loved the recipe. My husband was not so keen, he found the lentils too crunchy- not sure what he meant as I definitely did not have same experience 😀.
    So lucky me I had the rest of this delicious meal for next two days. Yum

    1. Support @ Rainbow Plant Life

      Hi Carol, happy you did! If you want to try either soaking the lentils ahead of time or using red lentils instead, they’ll come out with a bit less of a bite.

  20. Clare

    5 stars
    This was the nicest base for a shepherds pie I have made. It was really nice and filling ,great flavor had a lovely umami flavor.
    Thanks Nisha this recipe will be made regularly now . Yum.

    1. Support @ Rainbow Plant Life

      Clare, So glad to hear you loved this recipe!

Development Alchemy + Aim