Dairy Free Shepherd’s Pie

Hearty and wonderfully cozy, this dairy free shepherd’s pie is the perfect dinner for colder weather! Featuring a savory meat and veggie filling topped with a dreamy mashed potato crust, it’s comfort food at its finest. Egg free and gluten free.

A serving of Dairy Free Shepherd's Pie in a white bowl.

Grab those cozy blankets because today we talk about classic comfort food with a dairy free twist!

In the form of this dreamy shepherd’s pie that’s made without a lick of butter, milk or cheese.

It’s a hearty, stick-to-your-ribs kind of meal that’s delightful for a regular weeknight dinner OR a special occasion. 

And is totally impossible to resist.

There’s a meat and veggie packed filling that’s simmered in a dreamy savory sauce … topped with a layer of fluffy dairy free mashed potatoes to form the perfect golden crust. 

i.e it’s basically the kind of meal that makes you feel like you’ve been wrapped up in a giant hug.

Chopped veggies in a white dish.

How To Make

So, let’s talk about how this cozy dish goes down:

Prepare mashed potatoes. First up, we’ll boil some yukon gold potatoes and then mash with olive oil, almond milk and spices. 

Cook meat and veggies. Next, we’ll brown some ground lamb (or beef) in a large skillet, before sauteing some veggies and herbs in the remaining grease. 

Simmer sauce. We’ll add the meat back to the skillet, along with some broth, worcestershire and peas, and let cook for about 5 minutes until reduced slightly. 

Assemble casserole. We’ll gently flatten the mixture into an even layer, before spreading the mashed potatoes over top. 

Bake until golden. Finally, we’ll pop the pie into the oven for about 20 minutes, until lightly golden in color. 

The hardest part? Letting it rest for a few minutes before diving on in!

Meat and veggies in a skillet and then topped with mashed potatoes.

Tips & Tricks 

  1. First up, you can absolutely peel your potatoes if desired – I just prefer the added texture from the skins plus all the extra nutrients (not to mention it’s easier!).
  2. You can also use russet potatoes instead of the yukon golds … although I’d argue that yukon golds make for the creamiest mashed potatoes.
  3. Don’t be afraid to salt your potatoes – it will really bring out all the flavor. I’ve included how much extra salt I typically add down in the recipe.
  4. Moving along, you can certainly substitute ground turkey, chicken or even pork for the beef or lamb. The pie won’t be as traditional but will certainly still be delicious. 
  5. And finally, if you don’t have fresh herbs you can use dried herbs instead. If going this route, I’d suggest using ½ teaspoon each of dried rosemary and thyme (as dried herbs are much more potent than fresh).

A skillet with Dairy Free Cottage Pie with a scoop removed.

How To Store

Fridge: Let the pie cool to room temperature then transfer to an airtight container. It will keep in the refrigerator for up to 4 days. 

Freezer: Allow leftovers to cool completely then transfer to an airtight container. Store in the freezer for up to 3 months. Thaw in the fridge when ready to enjoy. 

A serving of Gluten Free Dairy Free Shepherd's Pie in a bowl.

Additional Dairy Free Dinner Recipes:

Did you make this recipe? Rate and review it down below! I’d love to hear from you.

A serving of Dairy Free Shepherd's Pie in a white bowl.

Dairy Free Shepherd’s Pie

Yield: about 6 to 8 servings
Prep Time: 20 minutes
Cook Time: 1 hour
Total Time: 1 hour 20 minutes

Hearty and wonderfully cozy, this dairy free shepherd’s pie is the perfect dinner for colder weather! Featuring a savory meat and veggie filling topped with a dreamy mashed potato crust, it’s comfort food at its finest. Egg free and gluten free.


For the potato topping:

  • 2 ½ pounds yukon gold potatoes, sliced ½ inch thick
  • 1 teaspoon fine sea salt, divided
  • ⅓ cup olive oil
  • ⅔ cup unsweetened plain almond milk
  • ¼ teaspoon pepper
  • ¼ teaspoon garlic powder

For the filling:

  • 1 ½ pounds ground beef or ground lamb*
  • 1 medium onion, diced
  • 3 medium carrots, diced (peeled if desired)
  • 3 medium stalks celery, diced
  • 3 large cloves garlic, minced
  • 1 ½ teaspoons minced fresh rosemary
  • 1 ½ teaspoons minced fresh thyme
  • 3 tablespoons tomato paste
  • ¾ cup low-sodium beef broth
  • 1 tablespoon worcestershire sauce**
  • ¾ cup frozen peas
  • ½ teaspoon fine sea salt
  • ¼ teaspoon pepper


For the potato topping:

  1. Add the sliced potatoes and ½ teaspoon of the salt to a large stockpot. Add in enough cold water to cover the potatoes, then bring the water to a boil.
  2. Reduce the heat slightly and simmer for about 15 minutes, or until the potatoes are tender. Drain the potatoes and return to the pot. 
  3. With the pot set on the warm burner (with the heat turned off), add in the remaining ½ teaspoon salt, olive oil, almond milk, pepper and garlic powder. 
  4. Use a potato masher to mash the potatoes until smooth and creamy, then taste and adjust any of the flavors as desired (I usually add about ½ to ¾ teaspoon more salt and another good drizzle of olive oil). 

For the filling:

  1. Meanwhile, preheat the oven to 400ºF. 
  2. Set a large oven safe saute pan over medium heat.*** When hot, add in the ground meat and cook for about 5 to 7 minutes, breaking it up with a wooden spoon, until browned and cooked through. Use a slotted spoon to transfer the meat to a bowl, leaving behind the fat / grease.
  3. With the skillet still over medium, add the onion, carrots and celery to the pan (if there is no fat / grease, add in about 1 tablespoon of olive oil). Cook the veggies for about 6 to 8 minutes, until tender. Stir in the garlic, rosemary, thyme and tomato paste and cook for 1 minute.
  4. Add in the cooked meat, the broth, worcestershire, peas, salt and pepper, then let the mixture cook over medium for about 5 minutes, until the broth has reduced slightly. Remove from the heat. Taste and adjust the salt / pepper as desired (I add about ¼ to ½ teaspoon more salt).
  5. Use the back of a spatula to gently flatten / press the mixture into an even layer, then dollop the mashed potatoes over top. Use a spoon or spatula to spread the potatoes out to the edges (making sure that you fully cover the meat layer). If desired, use a fork or spoon to create texture in the topping.
  6. Bake for 20 minutes, until the potato topping is lightly golden in color. Then turn on the broiler and broil for about 1 to 3 minutes to brown / crisp up the topping even further (just keep an eye on it so it doesn’t burn!). 
  7. Let the pan rest for 10 minutes, then serve as desired. 


*Note that traditional shepherd’s pie is made with ground lamb while cottage pie is made with ground beef. Since I can never find ground lamb at local stores I use ground beef, but either will work! 

**If you are gluten free, be sure to check the ingredients on your worcestershire sauce as many brands contain wheat.

***If you don’t have an oven safe saute pan, you can cook the filling in any large skillet then transfer to a casserole dish to bake.

Nutrition Information:
Yield: 8 Serving Size: 1
Amount Per Serving: Calories: 482Total Fat: 24gSaturated Fat: 7gTrans Fat: 1gUnsaturated Fat: 15gCholesterol: 76mgSodium: 593mgCarbohydrates: 38gFiber: 5gSugar: 5gProtein: 28g

Nutrition data shown is an estimate provided by an online calculator and is for informational purposes only. It should not be considered a substitute for a medical professional’s advice.