When I don’t know what everyone is in the mood for, shepherd’s pie is one of the safest dinners I can make.
It has the things people usually want from comfort food: browned beef, gravy, vegetables, and a layer of mashed potatoes that turns golden in the oven. It also reheats well, which means tomorrow’s lunch is usually taken care of too.

The challenge is getting all those layers to work together. A filling that’s too thin makes the pie fall apart when served, while a pale potato topping can leave the whole dish looking unfinished.
This version focuses on those details so the finished casserole looks as good on the plate as it does coming out of the oven. It lives in the same weeknight rotation as my meatloaf, the ground beef dinners nobody in my home argues about.
One quick note before anyone heads for the comments:
I make this with ground beef, which technically makes it a cottage pie to a purist. I am keeping the shepherd’s pie name because that is what most in the United States grew up calling it, lamb or not.
Ingredient Notes

- Beef broth and bouillon cube: These work together to create the deep, meaty flavor in the filling. During testing, a red wine version tasted good but leaned more traditionally British. The broth-and-bouillon version produced the fuller beef flavor that was preferred in side-by-side testing.
- Ground beef: I call for a lean blend on purpose. If the only beef in your fridge is fattier, brown it first, then spoon off all but about 2 tablespoons of the fat before the tomato paste goes in. Skip that and you get a slick of grease sitting on top of the gravy under the potatoes.
- Potatoes: Yukon gold potatoes make a wonderful substitute for the russet potatoes. They are less starchy and have a rich buttery texture that pairs really well with the richness of the ground beef and gravy.
Keep Servings From Falling Apart
If you’ve ever scooped into shepherd’s pie and watched the filling spill out around the edges, the fix starts long before it goes into the oven.
A few small choices keep the filling thick enough to stay put and help the potato topping act like a lid instead of floating on top:
#1 – Get Filling Right
Get the filling thick before it goes into the baking dish. The oven browns the potatoes, but it won’t reduce a thin gravy underneath them. Whatever consistency the filling has when you spread it into the dish is very close to the consistency it will have when you serve it.

I let the filling simmer until a spoon dragged across the bottom of the skillet leaves a clear path that slowly closes back in. If the gravy rushes back immediately, keep cooking. If it holds the line for several seconds before settling, it’s ready for the potatoes.

#2 – Use Potatoes To Create A Seal
Use the back of the spoon to press the potatoes firmly against the sides of the baking dish so there are no visible gaps. During redevelopment testing, bubbling gravy breaking through the potato layer was the biggest unresolved issue.

If gaps are left around the edges, the gravy can find those weak spots and bubble up through the topping while it bakes.

#3 – Have A Little Patience
Let the finished pie rest before serving. Cutting into it immediately is one of the fastest ways to end up with a loose filling that won’t hold its shape on the plate.

How To Know It’s Done
The potatoes should be deep golden brown across the ridges, with a few darker tips where the broiler catches the high spots. If the top is still pale, give it another minute or two under the broiler, but stay close. The color changes quickly at this stage.
Look at the edges of the dish. The gravy should be bubbling slowly around the rim, which tells you the filling underneath is hot all the way through. If you’re unsure, slide a knife into the center and leave it there for a few seconds. When you pull it out, the blade should feel hot to the touch.

Make-Ahead
Shepherd’s pie is one of the recipes I love to make ahead, the same way I do with my chicken pot pie casserole. You can assemble the whole pan, potatoes and all, cover it, and keep it in the fridge for up to a day before baking. Bake it straight from the fridge and give it a few extra minutes, since it is going in cold.

Storage
The filling thickens noticeably after refrigeration, so day-two portions hold together and slice cleaner than they do fresh out of the oven because the gravy has had additional time to set.
If you’re reheating leftovers, let the portion sit at room temperature briefly before warming so the center heats more evenly.
Freezing
This recipe is a good candidate for freezing because both the filling and potato topping hold up well after baking.
Freeze fully cooled portions individually so you can reheat only what you need. The potato topping can turn slightly grainy after thawing, so reheat it covered to bring some of the softness back.
Recipe Test Notes
This post was originally published in 2021 and it was updated in June 2026.
The first thing I settled was the flavor I wanted for the base. I tested one batch made with dry red wine in place of the bouillon, and while it was good, it leaned more English pub-style. The bouillon version had a deeper beef flavor and was closer to the shepherd’s pie my family expects, so that became the final recipe. The wine variation still works if that’s the direction you prefer.
The part that took the most testing was controlling the gravy. Across four separate batches, every one developed at least one spot where the filling bubbled up through the potatoes during baking. What surprised me was that greasing the baking dish made the problem worse. The potatoes slid away from the sides as they baked, creating gaps where the gravy could escape. Leaving the dish ungreased and pressing the potatoes firmly against the edges produced the cleanest results.
I also increased the oven heat and added a short broil at the end because earlier versions tasted right but looked pale. The higher heat gave the potatoes better color, and the mandatory rest after baking gave the gravy time to settle and thicken before serving instead of spreading across the plate.

Shepherd’s Pie
Ingredients
Potato Topping
- 5 large russet potatoes, peeled and cut into 1 to 1½-inch pieces (about 2½ pounds)
- ⅔ cup whole milk
- 6 tablespoons unsalted butter
- 1 teaspoon salt, plus additional 2 teaspoons for boiling water
- ¼ teaspoon black pepper
- ½ cup parmesan cheese, grated
Filling Mixture
- 1½ pounds lean ground beef (93%-7% blend)
- ¾ cup sweet yellow onion, diced
- 1 tablespoon garlic, minced
- ½ teaspoon dried thyme
- ½ teaspoon salt
- ¼ teaspoon black pepper
- 2 tablespoons tomato paste
- 2 tablespoons all-purpose flour
- 1½ cups beef broth
- 1 beef bouillon cube, broken into small crumbles
- 1 tablespoon worcestershire sauce
- 1 large bay leaf
- 2 cups frozen mixed vegetables (peas, carrots, and corn blend)
Optional Garnish
- Fresh thyme leaves
Instructions
Potato Topping
- Preheat the oven to 400°F.
- Add the diced potatoes to a large pot of cool salted water. Bring the water to a boil over high heat. Once the water reaches a boil, cook the potatoes for an additional 12-15 minutes or until fork tender.
- During the last 3-4 minutes of cook time, heat the milk and butter in a small saucepan just until the butter is melted and tiny bubbles start to form around the edges of the saucepan. Remove from the heat. Do not allow the milk to boil, or you will risk burning the milk.
- Drain the potatoes and return to the pot. Add the warmed milk, melted butter, salt, and black pepper to the potatoes and mash until the potatoes are smooth and fluffy.
- Stir in the parmesan cheese and set aside.
Filling Mixture
- While the potatoes are boiling, preheat a large (12-inch) nonstick skillet (or well-seasoned cast iron skillet) over medium-high heat. Add the ground beef, onion, garlic, dried thyme, salt, and black pepper and cook for 6-8 minutes or until the onions are translucent and no pink remains in the ground beef.
- Stir in the tomato paste until well incorporated, then sprinkle the all-purpose flour over the ground beef and stir to combine until no dry pockets of flour remain.
- Add the beef broth, beef bouillon, worcestershire sauce, bay leaf, and frozen mixed vegetables, stirring to combine. Bring the mixture to a boil, reduce the heat to low and simmer for 10-12 minutes or until the sauce has reduced and thickened.
- Remove and discard the bay leaf, then transfer the beef mixture to a 9×13 baking dish. Top with the mashed potato mixture being sure to get the mashed potatoes all the way up against the baking dish around the edges. This will help to seal the meat mixture under the mashed potatoes and will help keep the gravy from bubbling up too much when baked.
- Bake for 25-30 minutes or until the potatoes are golden brown. You can broil the potatoes for the last 3-4 minutes to deepen the color. Watch closely, as the topping can brown quickly depending on your oven’s broiler.
- Allow the shepherd’s pie to rest for 15 minutes before garnishing with a sprinkle of fresh thyme if desired. This allows the beef filling to cool slightly and thicken the gravy before serving.
Video
Notes
- You can rinse your diced potatoes under cool water, to remove the excess starches, prior to boiling. This is a great tip to help ensure your potatoes stay light and fluffy when mashed. It is not necessary, but has been found helpful.
- Starting your potatoes in a cool pot of salted water, then bring up to a boil, ensures the potatoes cook evenly.
- If using a low-sodium beef broth, you may want to taste the meat filling for seasoning prior to transferring to the prepared baking dish, then add more salt and black pepper if needed. The saltiness of different brands of broth and beef bouillon cubes can vary greatly, therefore you really need to taste your filling and adjust it accordingly.
- If you are using a blend of ground beef with a higher fat content, you will want to drain off all but about 2 tablespoons of the rendered fat from the browned ground beef, prior to adding the tomato paste in the recipe.













Comments
Jackie says
Very tasty, will make again. Had a previous recipe for the same thing but have now ditched that for this recipe. I did add a tspn of soy sauce that adds an extra bit of flavour.
Kirsten Dugan says
This is my go to for SP. The only thing I do is add an entire cup of beef broth if not a tad more. And depending on the fat in the beef, I won’t drain unless there is a lot of liquid after browning the meat. I often use venison that’s very lean so I leave any fat, if any in. The same if I use lamb.
But all in all, one of my favorites!
Erin says
This recipe is so simple and delicious, thank you!
Karen Bergmann says
I made this for a friend whose wife passed away. I followed the recipe, but I had to add a lot more stock because the flour kept thickening the gravy too much. The meat tasted delicious. I had three pounds of potatoes but found it was a very thin layer, so I added an additional two pounds. A lot of other recipes for cottage pie added cheese to the potatoes, so I did as well. The dish smells so delicious, I will make for my husband and me during these cold months in Texas. Thank you!
Carri says
I’ve made this and I’ve always put shredded cheese on each layer as well. You use a couple extra spices I can’t wait to try this version it sounds delicious. Thanks for sharing
Diane G. says
The absolute tastiest shepherds pie …and the only one I will ever make again, and again, and again🤩
Barb says
Since Shepherds Pie came from Europe I learned that this recipe is actually called Cottage Pie (made with ground beef). Shepherd’s Pie is made with lamb.