This Shepherd's Pie has a richly satisfying beef and vegetable filling and is topped with the creamiest mashed potatoes that bake up perfectly golden. It's a true comfort food classic and absolutely worth making from scratch.

Having married a Brit, I've eaten my fair share of Shepherd's Pie over the years. I actually also have a Whole30 version and a tater tot-topped one that my kids love, so it only felt right to share a truly classic Shepherd's Pie recipe as well.
Now yes, technically because I use ground beef this would be called Cottage Pie, since traditional Shepherd's Pie is made with lamb. But most of us grew up calling the beef version shepherd's pie, so that's what I'm sticking with here. That said, this recipe works beautifully with ground lamb if you want to go the fully traditional route.
This version is hearty and comforting, reheats well, and freezes beautifully, which makes it great for meal prep or bringing to a friend. It's also perfect for St. Patrick's Day. My trick for that silky, creamy potato topping is adding egg yolks to the mash. It makes all the difference. I think you're going to love it!
Jump to:
More British and Irish recipes for you to enjoy.
Equipment
For this recipe you will need:
- Cutting board and sharp knife
- Measuring cups and spoons
- Large pot and colander
- Potato masher - I use a standard Kitchenaid potato masher, but you could use a potato ricer if you like an ultra smooth consistency.
- Large skillet - If you have a large, oven safe skillet (such as the 11.75 inch Le Creuset Cast Iron Skillet), you can simply leave the cooked meat mixture in. And then add the potato topping and bake right in that pan.
- Casserole baking dish - If your skillet isn't oven safe or large enough simply use a large casserole dish.

Ingredients & Substitutions
For the meat and vegetable filling.
- Onion - Any color of onion will work.
- Carrots
- Mushrooms (optional) - We love mushrooms in our pie but feel free to omit of they aren't your thing.
- Celery
- Ground beef - I like using 85/15 ground beef for the best flavor. But you could also use a leaner cut or substitute with ground lamb for a more traditional shepherd's pie.
- Fresh rosemary and thyme - I love using fresh herbs for this recipe but you can substitute with about half of the amount of dried herbs in a pinch.
- Tomato paste
- Flour
- Beef broth - You can substitute about ½ cup of beef broth with red wine for a richer dish.
- Worcestershire sauce - Gives great acidity and flavor so I do not recommend leaving this out. If you don't have any you can substitute with some balsamic vinegar.
- Frozen peas - I do not recommend using canned peas for this recipe. Fresh or frozen work best.
For the mashed potato topping.
- Potatoes - I highly recommend using Russet potatoes, but Yukon Gold will also work.
- Butter - You can use salted or unsalted butter. If you use salted then you may want to reduce the added salt slightly.
- Milk - I highly recommend using whole milk, but skim or 2% will also work in a pinch.
- Sour cream - Again, fully fat has the best flavor and texture but a lower fat version works if it's all you have.
- Egg yolks - Adding egg yolks to the potatoes gives them a creamy and silky texture and it helps them to set up in the over and get a nice golden brown color. Highly recommend not skipping these!
- Salt & pepper
- Parmesan cheese - You could also top it with a little sharp cheddar or even gruyere if preferred.
- Fresh parsley - Totally optional. For serving.
Step-by-Step Photos



Recipe FAQs
Yes. Traditional Shepherd's Pie is made with ground lamb, and this recipe works perfectly with it. Just swap it in for the beef with no other changes needed.
Absolutely. You can assemble the entire Shepherd's Pie, cover it, and refrigerate for up to 24 hours before baking. You may need to add 5-10 extra minutes to the bake time if it's going into the oven cold.
Yes. It freezes beautifully. Let it cool completely, wrap tightly, and freeze for up to 3 months. Thaw overnight in the fridge before reheating, or bake from frozen at a lower temperature until heated through.
If you want more color, broil for 1-2 minutes at the end. Just keep a close eye on it so it doesn't burn.

Made this Shepherd's Pie recipe? Let me know what you think in the comments!
Recipe

Shepherd's Pie
Ingredients
For the meat filling
- olive oil
- 1 small onion, diced
- 2 medium carrots, diced
- 1 stalk celery, diced
- 6 button mushrooms, diced
- 2 cloves garlic, minced
- 1 lb ground beef I recommend 85/15
- 2 teaspoon fresh rosemary, chopped
- 1 teaspoon fresh thyme leaves
- 3 tablespoon tomato paste
- 2 tablespoon all-purpose flour
- 1.5 cups beef broth You can substitute ½ cup with red wine if desired.
- 1 tablespoon Worcestershire sauce
- ½ cup frozen peas
- salt & pepper
For the potato topping
- 2.5 lb russet potatoes, peeled and cut into chunks
- 6 tablespoon unsalted butter
- ¼ cup whole milk
- ¼ cup sour cream
- 2 egg yolks
- 1 teaspoon salt
- 1 teaspoon black pepper
- ⅓ cup parmesan cheese, shredded
- fresh parsley, chopped Optional, for serving
Instructions
Cook the Potatoes.
- Preheat the oven to 375 F. Add the peeled and chopped potatoes to a large pot and cover with cold water. Bring to a boil and cook until fork tender and easy to mash, about 15–20 minutes. Drain well and set aside.
Make the beef filling while the potatoes cook.
- Drizzle olive oil into a large skillet and heat over medium-high. Add the onion, carrots, mushrooms, and celery. Cook for 4–5 minutes until softened.Add the garlic, rosemary, and thyme and cook for about 30 seconds until fragrant.Add the ground beef and cook for 4–5 minutes, breaking it up as it cooks, until browned.
- Stir in the tomato paste and flour and cook for 1 minute.Slowly pour in the beef broth and Worcestershire sauce, stirring to combine. Bring to a boil, then reduce to a simmer and cook for 1-2 minutes until slightly thickened.Then stir in the frozen peas and simmer for another 2 minutes. Remove from heat and set aside.
Mash the Potatoes.
- Add the butter to the drained potatoes while they are still wam and mash until the butter is melted and incorporated. Then stir in the sour cream, milk, salt, pepper, and egg yolks until smooth and creamy.
Assemble and bake.
- Transfer the beef mixture to a baking dish if needed and spread into an even layer. Spoon the mashed potatoes over the top and smooth them out. Sprinkle Parmesan cheese evenly over the top. Bake at 375°F for 30 minutes, until heated through and golden on top. If you’d like more color, broil for 1–2 minutes at the end, watching closely so it doesn’t burn.Let it set for about 5-10 minutes before cutting. Serve warm and enjoy!










Mari
This is a perfect shepherd's pie. Best I've ever had!
jamjarkitchen
yay! Love to hear that!
Frannie
I made this and it turned out so comforting and flavorful. The creamy mashed potatoes baked up perfectly golden over that rich filling.
Craig
Made this shepherd’s pie and it turned out great! Hearty, comforting, and perfect for a family dinner.
jamjarkitchen
Love to hear that!
Swathi
This shepherd's pie is delicious. I have made it for our dinner my family loved it.
Emily
You can't go wrong with shepherd's pie! It's on of our family's favorites!
jamjarkitchen
So glad you enjoyed it!
Pat Ridings
Excellent recipe but you do know it's a cottage pie not a shepherds.
jamjarkitchen
Haha yes, I mention that above. This recipe can technically can be made with either beef or lamb. I’m in the US so most people recognize it as shepherd’s pie, which is why I went with that name. But my husband is British and I’m sure his mom is rolling her eyes at me calling it that, lol. So glad you enjoyed it!