Breakfast & Brunch
This bacon egg cheese potato casserole recipe transforms a lazy Sunday morning into a hearty, restaurant-worthy brunch that requires just one pan and 45 minutes of hands-off baking. The secret lies in the layers: crispy bacon and golden potatoes form the foundation, while a rich egg-cheese custard melts into creamy perfection when baked. I developed this recipe after years of testing—it’s the kind of dish that disappears faster than you can say "second helping," and it reheats beautifully for leftovers.
The magic happens in the baking process, where high heat creates a golden, crackly top while keeping the custard layer silky and warm.
You’ll need a 9x13-inch baking dish (no fancy equipment), and the prep is straightforward: layer shredded potatoes and cooked bacon first, then pour the egg-cheese mixture on top. The result is a casserole with crispy edges, tender potatoes, and eggs that stay custardy—not rubbery—even when reheated.
It’s the ultimate make-ahead brunch, perfect for feeding a crowd or meal prepping for the week.
What makes this recipe stand out is its versatility. Swap sharp cheddar for pepper jack for a spicy kick, or add diced ham and green onions for extra flavor. The dish serves 4–6 generously, making it ideal for family gatherings or brunch with friends.
The aroma alone will wake up your house—and your appetite—by the time it’s ready. Let’s get baking!
Pro tip: For an extra-crispy top, broil the casserole for 2–3 minutes at the end. And if you’re short on time, use pre-cooked bacon and instant potatoes to cut prep to just 15 minutes. This is comfort food at its finest—simple, satisfying, and impossible to resist.
Ingredients for bacon egg cheese potato casserole
Crispy bacon, shredded potatoes, and melty cheese layers—this one-pan brunch needs just 12 ingredients.
| Ingredient | Amount | Notes |
|---|---|---|
| Thick-Cut Bacon 🥓 | 12 oz | Cooked until crispy, drained |
| Russet Potatoes 🥔 | 3 lb | Shredded with peeler, not grated |
| Large Eggs 🥚 | 8 whole | Room temperature for best blend |
| Sharp Cheddar Cheese 🧀 | 2 cups | Shredded, block preferred |
| Whole Milk 🥛 | 1 ½ cups | Full-fat for creamiest custard |
| All-Purpose Flour 🌾 | ½ cup | For thickening custard |
| Salt 🧂 | 1 ½ tsp | Kosher or sea salt |
| Black Pepper 🌶️ | ½ tsp | Freshly ground preferred |
| Garlic Powder 🧄 | ½ tsp | For subtle depth |
| Butter 🧈 | ½ cup | Melted, unsalted preferred |
| Green Onions 🧅 | ¼ cup | Sliced, for garnish |
| Heavy Cream 🥛 | ½ cup | For extra richness |
The bacon is non-negotiable here. Thick-cut gives you the best crunch—skip the pre-cooked stuff from the deli counter. Cook it in batches if needed, but don't rush the crisping. Costco or Trader Joe's usually have the best quality at reasonable prices. For the potatoes, Russets are your best bet—they shred easily and hold up during baking. If you're short on time, instant potatoes work in a pinch, but fresh-shredded gives that restaurant-quality texture. The cheese? Block cheddar shreds better than pre-shredded and melts like a dream.
No cheddar? Pepper jack adds a nice kick, or swap for Gruyère if you want something nuttier. Running low on eggs? Add 2 tbsp milk per missing egg to keep the custard balanced. The custard mixture is where the magic happens—whisk it until smooth to avoid lumps. For extra flavor, add a pinch of smoked paprika to the cheese layer. And if you're feeling fancy, top with a sprinkle of crumbled bacon bits before baking for extra crunch. The green onions are optional but add a fresh pop of color.
This casserole reheats like a dream—just cover with foil and warm in the oven for 10 minutes. Keeps in the fridge for 4 days and freezes beautifully for 3 months. For freezing, bake as directed, then cool completely before wrapping tightly. Reheat from frozen by covering with foil and warming at 350°F for 30-40 minutes. Pro tip: Make a double batch—it disappears faster than you can say "second helping." The aroma alone will wake up your whole house by the time it's ready.
Why You'll Love This Recipe
- One-Pan Magic: I swear by this—just toss everything on a sheet pan, bake, and walk away. No chopping boards, no dirty pots, just crispy bacon edges and fluffy potatoes all in one go.
- Crispy-Creamy Obsession: That first bite? Crunchy bacon crumbles under a cloud of cheesy egg custard, with potatoes so tender they melt. Honestly, I’ve never met a casserole that delivers this kind of contrast.
- Leftovers? Please.: This dish actually tastes better the next day—if you can resist eating the whole pan. I portion it into containers before it cools; reheats in minutes, and my kids beg for it at school lunches.
- Budget Breakfast Hack: Sharp cheddar and thick-cut bacon stretch every dollar, while potatoes and eggs keep it affordable. Between us, this is my go-to when grocery money’s tight but I still want something ridiculously satisfying.
Step-by-step instructions for bacon egg cheese potato casserole
This one-pan wonder delivers crispy edges, creamy layers, and perfect texture every time.
Cook and Prepare the Bacon
Start by cooking the 12 oz thick-cut bacon in a large oven-safe skillet over medium heat until it reaches golden brown and crispy. This should take about 12-15 minutes, with the bacon rendering out its fat. Once done, remove the bacon from the skillet and transfer it to a paper towel-lined plate, leaving the rendered fat in the pan.
Here's the thing—don't drain that bacon fat. It's the secret to that crispy top layer we're after. While the bacon cools slightly, use a pair of tongs to chop it into ¼-inch pieces. Set these aside for later. The fat will stay warm in the skillet, ready to help create that perfect crust.
Shred and Sauté the Potatoes
While the bacon is cooling, shred the 3 lb russet potatoes using a peeler—this creates longer strands that hold together better than grated potatoes. Add the shredded potatoes to the skillet with the bacon fat and spread them out evenly. Cook over medium heat for 5-7 minutes, stirring occasionally, until the potatoes begin to soften slightly and take on a light golden color at the edges.
This step is crucial for building flavor. The potatoes will absorb some of that rich bacon fat, creating a delicious foundation. If you notice the potatoes sticking too much, add just 1 tablespoon of water to deglaze the pan. The goal is to get them tender but not fully cooked—they'll finish in the oven.
Create the Creamy Egg Mixture
In a large bowl, whisk together the 8 room-temperature large eggs, 1.5 cups whole milk, 0.5 cup all-purpose flour, 1.5 tsp salt, 0.5 tsp black pepper, 0.5 tsp garlic powder, and 0.5 cup heavy cream until fully combined. The mixture should be smooth and slightly thick—this will create that creamy custard texture we want in the middle of our casserole.
I like to use a whisk for this step to ensure everything is evenly incorporated. If you notice any lumps, strain the mixture through a fine-mesh sieve to achieve a silky consistency. This is where the magic happens—the blend of milk, eggs, and cream will create that perfect custardy layer when baked.
Assemble and Bake the Casserole
Preheat your oven to 375°F. Return the skillet with the potatoes to the stovetop and reduce the heat to low. Slowly pour the egg mixture over the potatoes, letting it seep down between the strands. Sprinkle the 2 cups shredded sharp cheddar cheese evenly over the top, followed by the chopped bacon pieces. The cheese will melt into the custard, creating that gooey, melty texture we all love.
Transfer the skillet to the preheated oven and bake for 40-45 minutes. Here's the key: the top should be deep golden brown with a crispy crust, while the center should still have a slight wobble—it'll firm up as it cools. If you're worried about the top browning too quickly, tent it loosely with aluminum foil after 20 minutes of baking.
Finish and Garnish
Once the casserole is out of the oven, let it rest for 5-10 minutes before serving. This resting period allows the custard to set slightly, making it easier to slice. Use a spatula to loosen the edges if needed, and transfer the casserole to a serving platter.
Garnish with the 0.25 cup sliced green onions and a drizzle of the remaining bacon fat from the skillet if desired. The contrast of the crispy top, creamy custard, and melty cheese layers is what makes this dish so irresistible. Serve immediately while still warm, and enjoy every bite of this comforting, one-pan masterpiece.
Pro Tips For Making Bacon Egg Cheese Potato Casserole
- CUT BACON THICKER THAN YOU THINK: Thick-cut bacon (½-inch slices or thicker) renders slower and stays crispier—don’t skimp on the size. If you’re using pre-sliced bacon, look for "thick-cut" labels or ask your butcher to slice it that way. I learned this the hard way when my first batch turned out greasy instead of crispy.
- BOIL POTATOES UNTIL FIRM, NOT SOFT: Russets should be boiled until just fork-tender (about 10-12 minutes for 1-inch cubes), not mushy. Overcooking turns them to mush when baked, and you’ll end up with a gluey casserole. Drain well and let them sit in a colander for 2 minutes to evaporate excess moisture—this makes all the difference.
- DON’T SKIP THE MILK SOAK: Toss the cooled potato cubes in a mix of whole milk and a pinch of salt (about ¼ cup milk per pound of potatoes) before baking. This step keeps them from drying out and adds a subtle creaminess that plain water can’t match. I was skeptical until I tried it—now it’s non-negotiable.
- BAKE AT 350°F, NOT HIGHER: Cranking the oven to 400°F might seem faster, but it’ll burn the top before the center cooks. 350°F gives the cheese time to melt evenly and the eggs to set properly without turning rubbery. If your top browns too quickly, tent it with foil for the first 20 minutes, then uncover to crisp.
Storing and reheating your bacon egg cheese potato casserole
Refrigerator Storage
Let your casserole cool completely before storing it in an airtight container—I use glass Pyrex with snap-on lids to keep it fresh. Store at 40°F or below for up to 4 days, but honestly, it tastes even better the next day as flavors meld.
The crispy top stays intact if you press plastic wrap directly on the surface before sealing. 🥔
Freezer-Friendly Tips
This casserole freezes beautifully for up to 3 months—just bake it as directed, then cool completely before wrapping tightly in heavy-duty aluminum foil or freezer bags. Leave 1 inch of headspace for expansion.
For reheating, thaw overnight in the fridge before warming in the oven at 350°F for 30-40 minutes, covered with foil. 🧊
Oven Reheating
My preferred method is reheating in the oven to preserve that crispy top and creamy texture. Cover the casserole with foil and warm at 350°F for 15-20 minutes, then uncover and broil for 2-3 minutes to restore crispiness.
Add 2 tablespoons of milk or water if it looks dry—this keeps the custard luscious. 🔥
Microwave Hack
For quick reheating, cover the casserole with a damp paper towel and microwave on 50% power in 1-minute intervals, stirring between each. Total time should be 3-4 minutes—just until it’s heated through.
Avoid high heat to prevent rubbery eggs. A splash of milk after reheating helps restore creaminess. ⏰
Make-Ahead Magic
Prep the casserole the night before and bake it in the morning—it’s the ultimate lazy brunch solution. Assemble all layers (except baking) in an airtight container and refrigerate overnight. Bake as directed, adding 5 extra minutes if starting cold. The flavors develop beautifully overnight, making it even more delicious. 💫
Leftovers Strategy
Slice the casserole into portions and store individually for easy grab-and-go breakfasts. Reheat in individual ramekins at 350°F for 10 minutes—this keeps the edges crispy while warming the center.
Pack extras for lunch with a side of crispy hash browns or a simple arugula salad. Trust me, leftovers taste just as good as day one! 🍽️
Nutrition facts
Frequently asked questions
Can I use pre-cooked bacon for this recipe?
Yes, but the texture won't be as crispy. Use 2 extra slices of pre-cooked bacon (about 4 oz) and place them on top of the casserole during the last 5 minutes of baking to restore crispiness. For best results, always cook your own bacon from scratch—it makes all the difference in flavor and texture.
How do I keep the top from getting soggy?
The secret is baking at the right temperature and timing. Preheat your oven to 375°F and bake for 40-45 minutes, then broil for 2-3 minutes at the end. For extra insurance, sprinkle 1/4 cup crushed cornflakes or panko breadcrumbs on top before baking—this creates a crispy barrier that protects the custard.
Can I make this casserole without dairy?
Swap the cheese for 2 cups shredded dairy-free cheddar and use unsweetened almond milk instead of whole milk. For extra richness, add 1/4 cup nutritional yeast to the egg mixture. The texture will be slightly different but still delicious—just make sure your dairy-free cheese melts well.
Why did my casserole come out rubbery?
Overbaking or using cold eggs are the most common culprits. Always use room-temperature eggs and bake until the center has a slight wobble (about 40-45 minutes). If it's still too soft, broil for 2 minutes at the end. For extra insurance, whisk the egg mixture until completely smooth—no lumps allowed!
What's the best way to serve this for a crowd?
Double the recipe and use two 9x13-inch baking dishes for even baking. Serve family-style with hot sauce, sour cream, and chopped chives on the side. For a buffet-style presentation, transfer to a large platter and garnish with extra bacon bits and green onions. This casserole reheats beautifully, so you can keep it warm in the oven while serving.
