Breakfast & Brunch
This bacon egg potato breakfast casserole transforms lazy mornings into effortless, crowd-pleasing brunch—ready in 30 minutes with just one pan. 💛 The secret lies in crispy bacon layered with tender potatoes and fluffy eggs, baking together into a golden, savory masterpiece that disappears faster than you can say "second helping." I perfected this recipe after years of testing, ensuring every bite delivers that perfect balance of smoky, creamy, and crispy textures.
The beauty of this dish is its simplicity: 6 slices of bacon, 8 eggs, and 4 cups of diced potatoes come together in a 9x13-inch baking dish with minimal prep. While the potatoes roast to golden perfection, the bacon renders its fat into the pan, creating a rich, flavorful base that infuses every layer. The eggs bind it all, turning this into a hearty, protein-packed meal that feels indulgent without the fuss.
What you’ll end up with is a restaurant-quality casserole that’s crispy on top, creamy in the middle, and packed with smoky bacon flavor. The aroma alone will have everyone gathering around the table, and the best part? It reheats beautifully for leftovers—ideal for meal prep or feeding a crowd. This is the kind of brunch that makes weekends feel special without the stress.
Whether you’re hosting a brunch gathering or just craving a satisfying morning meal, this foolproof recipe delivers. Garnish with fresh herbs or extra cheese for a touch of elegance, but honestly, it’s the combination of bacon, eggs, and potatoes that makes this dish truly irresistible. Let’s get cooking!
Ingredients for bacon egg potato breakfast casserole
Six crispy bacon slices, four cups of diced potatoes, and eight eggs—this one-pan brunch feeds six with minimal prep.
| Ingredient | Amount | Notes |
|---|---|---|
| Bacon Slices 🥓 | 6 slices | Thick-cut preferred for crispiness |
| Russet Potatoes 🥔 | 4 cups | Diced into 1/2-inch pieces |
| Large Eggs 🥚 | 8 whole | Room temperature for even baking |
| Shredded Cheddar Cheese 🧀 | 2 cups | Sharp cheddar for best flavor |
| Milk 🥛 | 1 cup | Whole milk for creaminess |
| Salt 🧂 | 1 ½ tsp | Kosher salt for seasoning |
| Black Pepper 🌶️ | ½ tsp | Freshly ground for flavor |
| Garlic Powder 🧄 | ½ tsp | For depth of flavor |
| Onion 🧅 | ½ cup | Finely diced yellow onion |
| Butter 🧈 | 2 tbsp | Unsalted for flavor control |
| All-Purpose Flour 🌾 | 2 tbsp | For thickening egg mixture |
| Fresh Chives 🌿 | 2 tbsp | Chopped for garnish (optional) |
| Heavy Cream 🥛 | ¼ cup | For extra richness (optional) |
The bacon is non-negotiable here—thick-cut slices from Oscar Mayer or Costco render the best fat for that smoky base. Russet potatoes are your best bet; they hold up to baking without turning mushy. Russets from Trader Joe's are my go-to—they're consistent and affordable. Dice them evenly (about 1/2-inch pieces) so they cook through without burning. For the eggs, room temperature makes all the difference—they'll bake more evenly and won't curdle. If you're prepping ahead, keep the eggs at room temp for 30 minutes before assembling.
No sharp cheddar? Pepper jack or Monterey Jack work too, but sharp cheddar gives that classic tang. Short on milk? Half-and-half or heavy cream adds richness, though whole milk keeps it simple. The optional heavy cream is worth it if you're serving this to a crowd—it makes the top layer extra luscious. For the onion, yellow or white both work, but yellow has a touch more sweetness. If you're in a rush, pre-cooked bacon from the deli section (like Hillshire Farm) saves time, though homemade bacon always tastes better. The flour is just for thickening the egg mixture—don't skip it if you want that perfect creamy texture.
This casserole reheats like a dream—just cover it with foil and warm at 350°F for 15 minutes. Keeps in the fridge for 4 days or freezes beautifully for 3 months. I always make a double batch on Sundays because it's gone by Tuesday. For leftovers, store in portions so you can grab and reheat single servings. The chives are optional but add a fresh pop of color—if you're skipping them, a sprinkle of Paprika gives a nice visual contrast. And trust me, the aroma baking in your house will have everyone thinking you slaved away for hours.
Why You'll Love This Recipe
- One-Pan Magic: I swear by this recipe when I’m too tired to wash dishes. Toss the pre-cooked potatoes, crispy bacon, and runny eggs onto one sheet pan, bake, and boom—cleanup’s basically nonexistent.
- Salty-Creamy-Crispy Trio: That first bite? Crunchy bacon, fluffy eggs, and melty cheddar all hitting your mouth at once. Honestly, I’ve never met a breakfast combo this satisfying—especially when the potatoes get that golden, buttery edge.
- Meal Prep Hero: I make two batches on Sundays and stash them in the fridge. Reheats like a dream—just pop in the oven for 15 minutes, and it’s ready for grab-and-go mornings or lazy weekend brunches. (Yes, even on a Tuesday night.)
- Budget Breakfast Win: Bacon and eggs feel fancy, but this recipe stretches them into a hearty meal for four (or five, if my kids are around). The potatoes and cheese bulk it up, so you’re not breaking the bank for a filling, protein-packed dish.
Step-by-step instructions for bacon egg potato breakfast casserole
This one-pan wonder comes together faster than you'd think—crispy bacon, fluffy eggs, and tender potatoes in one dish.
🔥 Step 1: Cook the Bacon and Prep the Potatoes
Preheat your oven to 375°F for perfect golden-brown edges. In a large oven-safe skillet, cook the 6 slices bacon slices over medium heat for 8-10 minutes, flipping once, until crispy. Remove the bacon from the skillet and set aside on paper towels to drain, leaving the rendered fat in the pan.
While the bacon cooks, dice the 4 cups russet potatoes into ½-inch pieces—uniform size ensures even cooking. Toss them in a bowl with ½ tsp salt, ½ tsp black pepper, and ½ tsp garlic powder. This seasoning will infuse into the potatoes as they bake, creating flavor in every bite.
👨🍳 Step 2: Sauté the Onion and Build the Base
In the same skillet (with bacon fat still in it), melt the 2 tbsp butter over medium heat. Add the ½ cup finely diced onion and cook for 3-4 minutes until softened and translucent. Here's the thing—don't let it brown, or you'll get bitter flavor. You want sweet, caramelized onions, not burnt bits.
Stir in the 2 tbsp all-purpose flour and cook for 1 minute to toast it lightly. This creates a light roux that will help thicken the egg mixture later. Pour in the 1 cup milk and ½ cup heavy cream (if using), whisking constantly until smooth. Let it simmer for 2 minutes until slightly thickened.
🥘 Step 3: Layer the Casserole for Perfect Texture
Spread half of the potato mixture evenly in the skillet, pressing down gently to create a solid base. This first layer is crucial—it prevents soggy bottoms and ensures the eggs bake evenly. Scatter half of the crispy bacon slices on top, then sprinkle half of the 2 cups shredded cheddar cheese.
Repeat with the remaining potatoes, bacon, and cheese. The cheese will melt into a creamy blanket during baking, binding everything together. For extra richness, pour the egg mixture evenly over the top, making sure it seeps down between the layers. Here's where it gets fun—use a fork to gently stir everything together just once or twice to distribute the eggs without breaking the potato pieces.
🔥 Step 4: Bake Until Golden and Set
Transfer the skillet to the preheated oven and bake for 40-45 minutes until the top is golden brown and the edges are bubbling. You'll know it's ready when the center is just set—no jiggly egg left. If the top browns too quickly, tent loosely with foil for the last 10 minutes to prevent over-browning.
Let the casserole rest for 5 minutes before serving. This resting time allows the cheese to fully set and the layers to meld together. Garnish with 2 tbsp chopped fresh chives right before serving for a pop of color and freshness. The result? A hearty, crowd-pleasing brunch that's ready in under an hour.
Pro Tips For Making Bacon Egg Potato Breakfast Casserole
- PARBOIL POTATOES FIRST: I learned this the hard way—skipping the parboil leaves you with a casserole that’s more glue than texture. Cut the russets into ½-inch cubes, boil them in salted water for 5 minutes until just tender, then drain. This keeps them from turning to mush while baking and ensures they absorb the egg-milk mixture evenly.
- CRISP THE BACON TWICE: Cook the bacon in batches until crisp, then drain on paper towels—but don’t stop there. Spread the cooked bacon on a wire rack to cool completely. Cold, crisp bacon holds its shape better in the casserole and won’t make the top layer soggy when you bake it.
- SALT THE CHEESE: This isn’t just about flavor—it’s about physics. Pre-season the shredded cheddar with ½ teaspoon of salt per cup before mixing it into the casserole. The salt draws out moisture from the cheese, which prevents a gummy layer on top and guarantees a crispy, golden crust.
- BUILD LAYERS LIKE A SANDWICH: Dumping everything in at once guarantees a sad, uneven casserole. Start with a thin layer of potatoes, then a sprinkle of cheese, then half the bacon—repeat. Top with the egg-milk mixture, then finish with another layer of cheese. This ensures every bite has that perfect ratio of cheesy, eggy, and smoky goodness.
Make-ahead tips for leftovers
Prep Ahead Strategy
Assemble the casserole the night before and refrigerate it uncovered for 8-12 hours—this creates a crispy top layer when baked. I always do this on Sunday nights so it's ready for Monday morning. The cold temperature also helps the flavors meld together beautifully. Just bake straight from the fridge at 375°F for 5-10 minutes longer to account for the chill. 🌟
Freezer-Friendly Assembly
For true make-ahead convenience, assemble the casserole completely (including the egg mixture) and freeze it in a 9x13-inch baking dish for up to 3 months. When ready to serve, thaw overnight in the fridge, then bake at 375°F for 50-55 minutes. The texture remains perfect—just add 5-10 extra minutes to ensure the center reaches 160°F. I use heavy-duty aluminum foil to prevent freezer burn and make reheating easier later.
Portion Control for Leftovers
Divide baked casserole into 6 individual portions before storing to reheat single servings perfectly. I use 1.5-cup glass ramekins for portioning—just cover tightly with plastic wrap and refrigerate. Reheat covered in the microwave for 2-3 minutes on high, or in a 350°F oven for 15 minutes for even warming. The glass containers also work beautifully for meal prep lunches all week long.
Bacon Prep Shortcut
Save time by cooking the bacon in advance and storing it in the fridge for up to 5 days. I line a baking sheet with paper towels, arrange the cooked bacon on top, and refrigerate. When ready to assemble, simply crumble the bacon directly into the casserole layers. This method keeps the bacon crispy longer and prevents soggy textures. For extra flavor, reserve 2 tbsp of bacon fat to mix into the egg mixture before pouring over the top.
Egg Mixture Prep
Prepare the egg mixture ahead of time and store it in an airtight container in the fridge for up to 24 hours. Whisk together the 8 eggs, 1 cup milk, ½ cup heavy cream, 1.5 tsp salt, and 0.5 tsp black pepper—this keeps everything ready to pour when you're ready to assemble. I like to add a splash of hot sauce or a pinch of smoked paprika to the mixture for extra depth of flavor. Just give it a quick whisk before using.
Potato Roasting Hack
Parboil the potatoes for 5 minutes before assembling to ensure they're fully cooked through during baking. Drain well and pat dry with a clean kitchen towel—this step prevents a watery casserole. I use a fine-mesh colander and shake vigorously to remove excess moisture. For even faster prep, use a mandoline slicer to dice the potatoes uniformly. The parboiled potatoes also help reduce the total baking time by 5-10 minutes—a game-changer for busy mornings. 💪
Nutrition facts
Frequently asked questions about bacon egg potato breakfast casserole
Can I make this casserole without a skillet?
Yes! Use a 9x13-inch baking dish instead. Cook the bacon on a separate baking sheet first, then transfer the potatoes and onions to the baking dish. Add the egg mixture last and bake at 375°F for 45-50 minutes, tenting with foil if it browns too quickly. The texture will be just as delicious—just slightly less crispy on the bottom.
Why did my casserole turn out watery?
This usually happens if the potatoes weren't dried properly or the egg mixture wasn't thick enough. Always pat potatoes completely dry after parboiling (if using) and ensure your egg mixture has enough flour to thicken it. For extra insurance, bake at 375°F for 5-10 minutes longer to evaporate any excess moisture.
Can I add other meats or veggies?
Swap bacon for sausage or ham, or add bell peppers, spinach, or mushrooms with the onions. For heartier portions, try ½ cup cooked ground beef or crumbled breakfast sausage. Just adjust baking time by 5-10 minutes if adding extra moisture-heavy ingredients like spinach.
How do I make this gluten-free?
Replace the flour with 2 tbsp cornstarch or gluten-free all-purpose flour to thicken the egg mixture. Use gluten-free bacon and check that your cheddar cheese is certified gluten-free. The texture will be slightly different but still delicious—just stir the cornstarch into the milk before adding to the eggs for smooth blending.
Can I use frozen hash browns instead of diced potatoes?
Yes, but with adjustments! Use 4 cups frozen hash browns (thawed and drained) and reduce the baking time by 10 minutes since they're pre-cooked. For extra crispiness, spread them in a single layer on a baking sheet and bake at 400°F for 10 minutes before assembling. The texture will be slightly different but still hearty and satisfying.
