Cozy Shepherd’s Pie
Shepherd’s pie recipe with a beefy, savory gravy filling and a golden mashed potato topping. A cozy, one-dish ground beef dinner the whole family eats.
This post may contain affiliate links. As an Amazon Associate I earn from qualifying purchases.

This post may contain affiliate links. See our disclosure policy.
Shepherd’s Pie is the dinner I make when it’s cold out and everyone wants something warm and filling. A beefy, gravy-thick filling gets topped with a layer of buttery mashed potatoes and baked until the top turns golden in spots.
A quick note before we start: a true shepherd’s pie is made with ground lamb, and the beef version is technically called cottage pie in the UK. Almost everyone in the US calls the beef version shepherd’s pie too, so that’s what we’re making here, and it’s every bit as good.
The gravy is what separates this from a plain pile of beef and potatoes. Tomato paste, a spoonful of flour, and a splash of Worcestershire sauce turn the pan drippings into something rich and thick enough to hold the vegetables together under that potato topping.
Why You’ll Love This Recipe
- A rich, beefy gravy. Tomato paste and a flour-thickened broth make a filling that’s savory, not watery.
- A golden potato topping. Buttery mashed potatoes bake up crisp in spots and soft underneath.
- One dish, start to finish. The filling and topping bake right in the same skillet.
- Great make-ahead meal. Assemble it the night before and bake it fresh the next day.
Shepherd’s Pie Ingredients
Tomato paste adds more than tang. Cooked briefly in the pan before the liquid goes in, it deepens the color and flavor of the gravy the same way it does in a good stew.
- 2 lbs russet potatoes, peeled and cubed
- 4 tbsp butter, divided
- 1/2 cup milk
- 1 1/2 lbs ground beef (80/20)
- 1 yellow onion, diced
- 2 carrots, diced
- 2 cloves garlic, minced
- 2 tbsp tomato paste
- 2 tbsp all-purpose flour
- 1 cup beef broth
- 1 tbsp Worcestershire sauce
- 1 cup frozen peas
- 1 tsp salt, plus more for the potatoes
- 1/2 tsp black pepper
- Chopped fresh parsley, for serving (optional)

Recipe Variations
- Swap the ground beef for ground lamb for a version closer to the traditional dish.
- Stir 1/2 cup shredded cheddar into the mashed potatoes before topping the filling.
- Add a cup of corn along with the peas for extra color and sweetness.
How to Make Shepherd’s Pie
- Boil the potatoes: Place the cubed potatoes in a large pot, cover with cold water, and add a pinch of salt. Bring to a boil and cook for 15-20 minutes until fork-tender. Drain.
- Mash: Return the potatoes to the pot and mash with 2 tablespoons of the butter and the milk until smooth. Season with salt to taste.
- Brown the beef: While the potatoes cook, heat a large oven-safe skillet over medium-high heat. Brown the ground beef with the onion and carrots, breaking up the meat as it cooks, about 8 minutes. Drain off the excess grease.
- Build the gravy: Stir in the garlic and tomato paste and cook for 1 minute. Sprinkle the flour over the beef and stir to coat, then slowly pour in the beef broth and Worcestershire sauce, stirring until the gravy thickens, about 3-4 minutes.
- Add the peas: Stir in the peas, salt, and pepper. Remove from heat.
- Top and bake: Preheat the oven to 400°F. Spread the mashed potatoes evenly over the beef filling right in the skillet, and dot with the remaining 2 tablespoons of butter. Bake for 20-25 minutes until the potatoes are golden in spots.
- Rest and serve: Let it sit for 5-10 minutes before serving.


Recipe FAQs
Is This Actually Cottage Pie, Not Shepherd’s Pie?
Technically yes, shepherd’s pie is traditionally made with lamb and the beef version is called cottage pie. In everyday American use, though, shepherd’s pie usually means the beef version, so that’s what this recipe is.
I Don’t Have an Oven-Safe Skillet. What Do I Do?
Cook the filling in any skillet, then transfer it to a greased 9×13 baking dish before topping with the potatoes and baking.
Can I Assemble This Ahead of Time?
Yes. Assemble the whole dish, cover, and refrigerate up to a day ahead. Add about 10 extra minutes to the bake time since it’ll go in cold.
Why Is My Filling Too Runny Under the Potatoes?
It usually needs another minute or two on the stove before the potatoes go on top; the flour needs time to fully thicken the broth. Simmer it until a spoon dragged through leaves a trail.
Can I Double This, and What Goes Well with It?
Yes, use a 9×13 baking dish and add about 10 minutes to the bake time. It doesn’t really need a side, though a simple green salad rounds out the meal.
Cooking Tips
- Cut the potatoes into even, small cubes so they all finish boiling at the same time.
- Don’t skip browning the tomato paste for a minute before adding liquid. It deepens the flavor of the whole gravy.
- Run a fork over the top of the potato layer before baking to create ridges that turn extra golden and crisp.
Storage and Freezing
To store: Keep covered in the fridge for up to 4 days.
To freeze: Freeze the fully baked and cooled dish, tightly covered, for up to 3 months. Thaw overnight in the fridge before reheating.
To reheat: Reheat covered in a 350°F oven for about 20 minutes, or microwave individual portions until hot.
How to Serve Shepherd’s Pie

Shepherd’s Pie doesn’t need much alongside it since the potatoes and vegetables are already built in, though a simple green salad is a nice add. This is one of the recipes in our 30 Easy Ground Beef Dinners collection, and more quick, budget-friendly ground beef dinners for busy weeknights are on the way.
Loved This Recipe?
Shepherd’s Pie is the kind of dinner that makes a cold night feel a little warmer, gravy and potatoes and all.
Leave a star rating in the comments below, it helps other people find this recipe. Made it? Tag @allwellfed on Instagram, I love seeing this one in other people’s kitchens.

Shepherd’s Pie
Equipment
Ingredients
- 2 lbs russet potatoes peeled and cubed
- 4 tbsp butter divided
- 1/2 cup milk
- 1 1/2 lbs ground beef 80/20
- 1 yellow onion diced
- 2 carrots diced
- 2 cloves garlic minced
- 2 tbsp tomato paste
- 2 tbsp all-purpose flour
- 1 cup beef broth
- 1 tbsp Worcestershire sauce
- 1 cup frozen peas
- 1 tsp salt plus more for the potatoes
- 1/2 tsp black pepper
- chopped fresh parsley for serving, optional
Instructions
- Boil the potatoes: Place the cubed potatoes in a large pot, cover with cold water, and add a pinch of salt. Bring to a boil and cook for 15-20 minutes until fork-tender. Drain.
- Mash: Return the potatoes to the pot and mash with 2 tablespoons of the butter and the milk until smooth. Season with salt to taste.
- Brown the beef: While the potatoes cook, heat a large oven-safe skillet over medium-high heat. Brown the ground beef with the onion and carrots, breaking up the meat as it cooks, about 8 minutes. Drain off the excess grease.
- Build the gravy: Stir in the garlic and tomato paste and cook for 1 minute. Sprinkle the flour over the beef and stir to coat, then slowly pour in the beef broth and Worcestershire sauce, stirring until the gravy thickens, about 3-4 minutes.
- Add the peas: Stir in the peas, salt, and pepper. Remove from heat.
- Top and bake: Preheat the oven to 400°F. Spread the mashed potatoes evenly over the beef filling right in the skillet, and dot with the remaining 2 tablespoons of butter. Bake for 20-25 minutes until the potatoes are golden in spots.
- Rest and serve: Let it sit for 5-10 minutes before serving.

