Main Courses
Joanna Gaines' shepherd's pie recipe delivers that comforting, golden-topped perfection we all crave—where tender ground beef, hearty vegetables, and rich gravy disappear beneath a flaky, buttery mashed potato crust.
This dish became a staple in my home after years of perfecting the balance between savory filling and crispy topping, inspired by Joanna's signature homestyle elegance. The secret lies in browning the meat properly and using a mix of butter and milk in the mashed potatoes for that signature texture.
What makes this recipe special is its ability to transform simple ingredients into a restaurant-worthy meal that feels like home. The filling cooks down slowly, allowing flavors to meld together while the mashed potato topping develops that irresistible golden-brown crust.
With just 45 minutes of active prep and 30 minutes of baking, you'll have dinner on the table without sacrificing quality or presentation.
The result is a dish that's as beautiful as it is delicious—golden, bubbling edges that contrast perfectly with the creamy, savory filling beneath. Each bite delivers tender meat, caramelized onions, and potatoes that stay flaky on top while remaining creamy inside.
This is comfort food at its finest, with a presentation that feels both rustic and refined.
Serve with a simple green salad or crusty bread to complete the meal. Whether you're feeding a family or hosting dinner guests, this shepherd's pie delivers the warmth and satisfaction of a home-cooked masterpiece. Let's get cooking!
Ingredients for joanna gaines shepherd's pie
Pantry staples meet Joanna's signature flaky perfection—just 13 ingredients for golden-topped comfort.
| Ingredient | Amount | Notes |
|---|---|---|
| Ground Beef 🥩 | 1 ½ lb | Lean-to-medium fat ratio preferred |
| Yellow Onions 🧅 | 1 whole | Medium size, diced finely |
| Carrots 🥕 | 3 whole | Medium size, peeled and chopped |
| Russet Potatoes 🥔 | 2 lb | Yukon gold works too |
| All-Purpose Flour 🌾 | 2 tbsp | For thickening gravy |
| Beef Broth 💧 | 1 ½ cups | Low-sodium preferred |
| Whole Milk 🥛 | ½ cup | Full-fat for creaminess |
| Unsalted Butter 🧈 | ½ cup | Cold, cubed for potatoes |
| Fresh Thyme 🌿 | 1 tbsp | Leaves only, chopped |
| Garlic Cloves 🧄 | 4 cloves | Minced for filling |
| Salt 🧂 | 1 ½ tsp | Kosher or sea salt |
| Ground Black Pepper 🌶️ | ½ tsp | Freshly ground preferred |
| Diamond Crystal Kosher Salt 🧂 | ¼ tsp | For topping only |
The ground beef is where flavor starts. 80/20 lean-to-fat ratio gives you juiciness without grease—Costco or local butchers usually have the best quality. Carrots and onions should be bright orange and crisp, not limp or bruised. Russet potatoes are ideal for crispiness, but Yukon gold keeps things creamy inside. Fresh thyme from the grocery store's produce section (not the dried aisle) makes all the difference—Trader Joe's often has great bundles for cheap. For the beef broth, low-sodium is key unless you're adding extra salt later.
No fresh thyme? Dried at one-third the amount works, but you'll miss that bright aroma. Subbing beef with ground turkey? Use extra seasoning—it's leaner. Short on carrots? Peas or green beans add color and texture. The flour for thickening? All-purpose works fine, but if you've got arrowroot powder, it makes the gravy silkier. For the potatoes, microwave for 5 minutes first to speed up boiling—no one wants to wait for these to soften. And that Diamond Crystal kosher salt? It dissolves better than table salt for seasoning the topping.
This reheats beautifully—just 10 minutes at 375°F until bubbly. Store leftovers covered for 4-5 days in the fridge or freeze for 3 months. I double the recipe and freeze half—weeknight dinners solved. For extra crispiness when reheating, broil for 2-3 minutes at the end. The filling tastes even better the next day as flavors meld, so always make extra. That golden crust? Worth the extra 5 minutes in the oven.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this recipe because it’s one pan—no fussing with multiple dishes. The onions and carrots caramelize right in the beef while the potatoes roast on top, turning golden and fluffy without a single extra bowl to wash.
- Rich, Earthy Depth: That ground beef gets simmered with onions until it’s almost a paste—deep, savory, and packed with flavor. The flour thickens it just enough to make every bite feel hearty, like a hug in a dish.
- Lunchbox Hero: Between us, this is my go-to for meal prep. The leftovers reheat beautifully—crispy top, tender filling—and my kids actually ask for it in their lunches. (Yes, even on a Tuesday.)
- Budget Stretch: Honestly, this recipe costs me less than takeout for four. Russets are cheap, beef stretches far, and the carrots add sweetness without breaking the bank. It’s the kind of meal that makes grocery day feel like a win.
Step-by-step instructions for Joanna Gaines' shepherd's pie
Here's how to build that signature flaky potato crust over rich, savory filling—just like Joanna makes it.
Cook the Potatoes Until Fork-Tender
Peel and cut the 2 lb russet potatoes into 1-inch chunks. Place them in a large pot and cover with cold water by 1 inch. Add 1.5 tsp salt and bring to a boil over high heat. Once boiling, reduce to a gentle simmer and cook for 15-18 minutes until a knife slides in easily with just light resistance.
Drain the potatoes thoroughly in a colander, then return them to the pot. Add the 0.5 cup cold unsalted butter and 0.5 cup whole milk. Mash until completely smooth—no lumps—and season with 0.5 tsp ground black pepper. This creamy base is what creates that signature flaky crust. Spread the mashed potatoes on a baking sheet and refrigerate for 30 minutes to firm up slightly before topping.
Build the Savory Filling
In a large skillet over medium-high heat, crumble the 1.5 lb ground beef and cook until browned, breaking it apart with a wooden spoon. Drain excess fat, leaving about 1 tablespoon in the pan. Add the finely diced 1 whole yellow onion and cook for 3-4 minutes until softened.
Stir in the chopped 3 whole carrots and minced 4 cloves garlic, cooking for another 3 minutes until the carrots begin to soften. Sprinkle the 2 tbsp all-purpose flour over the mixture and stir vigorously for 1 minute to remove any raw flour taste. Slowly pour in the 1.5 cups beef broth while stirring constantly to prevent lumps. Bring to a simmer and cook for 5 minutes until slightly thickened.
Remove from heat and stir in the chopped 1 tbsp fresh thyme. The filling should be rich and flavorful, with just enough moisture to hold the vegetables together. Spread this mixture evenly into a 9x13-inch baking dish, pressing down gently to compact it.
Assemble and Bake to Golden Perfection
Preheat your oven to 425°F. Remove the chilled mashed potatoes from the refrigerator and spread them evenly over the filling in the baking dish. Use a fork to create decorative ridges in the top—this helps create that signature flaky texture. Sprinkle the 0.25 tsp diamond crystal kosher salt evenly over the surface.
Bake for 20-25 minutes until the top is golden brown and crispy, with edges pulling away slightly from the sides. The filling should be bubbling hot underneath. If the top browns too quickly, tent loosely with foil for the last 5 minutes of baking.
Let the shepherd's pie rest for 10 minutes before serving—this allows the filling to set slightly and makes slicing cleaner. The result should be a perfectly flaky potato crust over a rich, savory meat and vegetable filling that holds together beautifully.
Pro Tips For Making Joanna Gaines Shepherd'S Pie
- Brown the Beef Properly: Joanna Gaines’ recipe relies on deep flavor from the beef, so don’t just toss it in raw—break it into small pieces and sear them in batches over medium-high heat until they’re no longer pink inside. I used to rush this, and the filling always tasted flat. Take your time; crispy edges make all the difference.
- Parboil Potatoes First: Skip the raw potato topping—it’ll turn gluey. Instead, parboil the peeled potatoes for 7–8 minutes until fork-tender, then drain and mash while hot. Cold potatoes steam the filling instead of crisping up. (Yes, even if you’re impatient like me.)
- Don’t Overwork the Mash: The secret to a light, fluffy topping is to mash the potatoes just until smooth, then fold in butter and milk gently. Lumpy? Good. Overmixed? You’ve ruined the texture. A fork works—no food processor needed.
- Preheat the Oven High: Joanna’s recipe calls for a golden crust, so crank the oven to 425°F before baking. Cold pans delay browning, and that means a sad, pale topping. Slide the dish in right away—no waiting. (Your future self will thank you.)
Common mistakes when making great joanna gaines shepherd's pie
Overcooking the Meat
One of the biggest mistakes is letting the ground beef dry out while browning. I’ve ruined many pies by walking away from the skillet, only to return to rubbery meat.
Keep the heat at medium-high and break the beef apart with a wooden spoon every 30 seconds—this ensures even cooking and juicy results. 🔥
Skipping the Fat Drain
Leaving too much fat in the pan after browning the beef can make your filling greasy rather than rich. Drain all but 1 tablespoon of fat—this small amount helps build flavor, but excess fat will make the mashed potato topping soggy.
Use a slotted spoon or paper towels to remove excess grease.
Underseasoning the Filling
The filling is where all the flavor lives, so don’t skimp on salt and pepper. Taste the filling before adding the mashed potatoes—it should be seasoned like a well-made stew.
I often add an extra ¼ teaspoon of salt and ⅛ teaspoon of black pepper at this stage to ensure it’s bold enough. Fresh thyme is non-negotiable for that herby depth.
Using Hot Mashed Potatoes
Assembling the pie with hot mashed potatoes is a recipe for a soggy top. Always chill the mashed potatoes for 30 minutes before spreading them over the filling.
This firming-up step is what creates that signature flaky crust. If you’re short on time, spread them on a baking sheet and refrigerate while you finish the filling.
Baking at the Wrong Temperature
Setting the oven too low (375°F) or too high (450°F) can ruin the texture. 425°F is the sweet spot—hot enough to crisp the potatoes but gentle enough to keep the filling tender.
If your oven runs hot, tent the pie with foil for the last 5 minutes to prevent over-browning.
Not Resting Before Serving
Cutting into the pie immediately after baking causes the filling to spill out and the crust to collapse. Always let it rest for 10 minutes—this allows the filling to set and the juices to redistribute. I’ve seen even Joanna Gaines emphasize this step in her cooking demos. 💡
Nutrition facts
Frequently asked questions
Can I make this shepherd's pie ahead of time?
This dish actually tastes even better the next day as flavors meld together. Assemble it completely (including the mashed potato topping) and refrigerate uncovered for 1-2 hours before baking. For make-ahead meals, assemble the pie, cover tightly, and refrigerate for up to 24 hours before baking. You can also freeze the unbaked pie for 3 months—just thaw overnight in the fridge before baking.
What if I don't have fresh thyme?
Use 1 teaspoon dried thyme instead, but remove any stems first. For extra flavor, add ¼ teaspoon of dried rosemary as well. If you're completely without herbs, a pinch of garlic powder and onion powder can help compensate, though fresh thyme gives that signature Joanna Gaines aroma.
How do I make this vegetarian?
Swap the ground beef for 1 lb lentils (cooked) or 1.5 lbs mushrooms (finely chopped and sautéed). Use vegetable broth instead of beef broth, and add 1 teaspoon soy sauce or Worcestershire sauce for depth. The mashed potato topping and baking process remain exactly the same—just adjust seasoning to taste since mushrooms absorb flavors differently.
Why did my potato topping turn out soggy?
This usually happens when the mashed potatoes are too hot when assembled or the filling isn't properly drained. Always chill the mashed potatoes for 30 minutes before topping, and make sure your filling is just moist—not soupy. For extra insurance, sprinkle 1 tablespoon breadcrumbs on top before baking to create a crisp barrier.
Can I use a different type of potato?
Russet potatoes give the best flaky crust, but Yukon Gold or Idaho potatoes work well too. Avoid waxy potatoes like red potatoes—they won't mash smoothly enough for that signature texture. If you must use them, boil them 5 minutes longer** and mash with extra butter to compensate.