I grew up thinking scalloped potatoes were something you only ordered at fancy restaurants or got from a box with powdered sauce. My mom made mashed potatoes, baked potatoes, and sometimes those frozen potato wedges, but scalloped potatoes seemed too complicated for a weeknight dinner.
Then I realized scalloped potatoes are basically just sliced potatoes swimming in a creamy cheese sauce—and when you add bacon to the mix, you’ve got something that makes everyone at the table happy. It’s not fancy cooking. You’re making a simple sauce, layering everything in a dish, and letting the oven do most of the work. The hardest part is waiting for them to finish baking when your kitchen smells amazing.

Why You’ll Love These Scalloped Potatoes
- Bacon makes everything better – The crispy, smoky bacon adds incredible flavor to the creamy potatoes and takes this classic side dish to the next level.
- Perfect for feeding a crowd – This recipe makes a generous portion that’s ideal for family dinners, potlucks, or holiday gatherings.
- Simple ingredients – You probably have most of these staples in your kitchen already – just potatoes, bacon, cheese, and a few pantry basics.
- Comforting and satisfying – The creamy cheese sauce coating tender potato slices makes this the kind of dish everyone goes back for seconds.
What Kind of Potatoes Should I Use?
For scalloped potatoes, you’ll want to reach for starchy potatoes like Russets or Yukon Golds. Russets are the classic choice because they absorb the creamy sauce beautifully and become tender without falling apart. Yukon Golds are another great option – they have a naturally buttery flavor and hold their shape a bit better while still soaking up all that cheesy goodness. I’d avoid waxy potatoes like red potatoes or fingerlings for this recipe, as they don’t absorb the sauce as well and can end up feeling a bit dense. Whatever you choose, try to slice them evenly (about ⅛ inch thick) so they cook at the same rate.

Options for Substitutions
This recipe is pretty forgiving when it comes to swaps, so here are some options if you need to make changes:
- Bacon: If you want to skip the bacon or make it vegetarian, you can leave it out entirely or use smoked paprika (about 1 teaspoon) to add that smoky flavor. Ham or pancetta also work well as alternatives.
- Milk: Whole milk gives the creamiest results, but you can use 2% milk if that’s what you have. For a richer dish, swap half the milk with heavy cream. Non-dairy milk like oat or almond milk can work too, though the sauce might be slightly thinner.
- Cheese: Cheddar is classic, but gruyere, swiss, or monterey jack all melt beautifully. You can even mix a couple types together for more complex flavor.
- Potatoes: Russet potatoes are traditional for scalloped potatoes and shouldn’t be substituted – they have the right starch content to create that creamy texture as they cook. Yukon golds can work in a pinch, but avoid waxy red potatoes.
- Butter and flour: These create the roux that thickens your sauce, so they’re pretty important to keep as is. If you’re gluten-free, you can use a gluten-free flour blend in the same amount.
Watch Out for These Mistakes While Baking
The biggest mistake with scalloped potatoes is slicing them too thick, which leads to undercooked, crunchy potatoes – aim for slices about 1/8 inch thick using a mandoline or sharp knife for even cooking.
Another common error is skipping the resting time after baking, as those 10 minutes allow the sauce to thicken up and make serving much cleaner instead of a runny mess on your plate.
To avoid a grainy or separated sauce, make sure your roux (the butter and flour mixture) cooks for the full 2 minutes and whisk constantly when adding the milk to prevent lumps from forming.
Finally, don’t forget to season your potato layers with salt and pepper as you build the casserole, not just the onions, since potatoes need plenty of seasoning to taste their best.

What to Serve With Scalloped Potatoes?
Scalloped potatoes with bacon are pretty rich and filling, so they pair best with simple proteins that won’t compete for attention. A basic roasted chicken, grilled steak, or baked ham all work great alongside this dish since the potatoes can basically act as your main side. If you want to add some freshness to balance out all that creamy, cheesy goodness, a crisp green salad with a tangy vinaigrette or some roasted green beans with lemon are solid choices. These potatoes are also perfect for holiday meals – they go with pretty much any main course you’d serve at Thanksgiving or Christmas dinner.
Storage Instructions
Store: Leftover scalloped potatoes taste amazing the next day! Just cover the baking dish tightly with foil or transfer to an airtight container and keep in the fridge for up to 4 days. The flavors actually get even better as they sit together.
Freeze: You can freeze scalloped potatoes for up to 2 months, though the texture of the potatoes might change slightly when thawed. Let them cool completely first, then wrap the dish really well in plastic wrap and foil, or portion into freezer-safe containers.
Reheat: Cover with foil and warm in a 350°F oven for about 20-30 minutes until heated through. You can also microwave individual portions, though the oven keeps them creamier. If they seem a bit dry, drizzle a splash of milk over the top before reheating.
| Preparation Time | 20-30 minutes |
| Cooking Time | 90-100 minutes |
| Total Time | 110-130 minutes |
| Level of Difficulty | Medium |
| Servings | 8 servings |
Estimated Nutrition
Estimated nutrition for the whole recipe (without optional ingredients):
- Calories: 4300-4800
- Protein: 120-140 g
- Fat: 270-310 g
- Carbohydrates: 340-370 g
Ingredients
For the base layers:
- 3 tbsp olive oil (I prefer Bertolli for sautéing)
- 2 onions (thinly sliced into 1/8-inch rings)
- 12 oz bacon (diced into 1/2-inch pieces and browned)
- 3 lb potatoes (peeled and sliced into 1/4-inch rounds)
- 10 oz cheese
For the white sauce:
- 4 tbsp butter (I use Kerrygold unsalted for extra richness)
- 4 tbsp flour
- 3 cups milk
For seasoning:
- salt
- pepper
- 1 tsp garlic powder
Step 1: Prep Ingredients and Start the Bacon
- 3 lb potatoes
- 12 oz bacon
- 2 onions
- 10 oz cheese
Peel the potatoes and slice them into 1/4-inch rounds, placing them in a bowl of cold water to prevent browning—this keeps them looking fresh and prevents oxidation.
Dice the bacon into 1/2-inch pieces and place in a cold skillet over medium heat.
As the bacon cooks slowly from a cold start, it will render its fat gradually and crisp evenly, which takes about 8-10 minutes.
While the bacon cooks, thinly slice the onions into 1/8-inch rings and grate or chop the cheese.
Preheat your oven to 350°F and lightly grease a 9×13 inch baking dish or similar size.
Step 2: Caramelize Onions and Finish Bacon
- onions from Step 1
- bacon fat from Step 1
- 3 tbsp olive oil
- salt
- pepper
Once the bacon is crispy, transfer it to a paper towel-lined plate, leaving about 2 tablespoons of bacon fat in the skillet.
If needed, add the olive oil to reach about 3 tablespoons total fat in the pan.
Add the sliced onions and cook over medium-high heat for about 10-12 minutes, stirring occasionally, until they’re deeply golden and caramelized.
Season with a pinch of salt and pepper as they cook.
I like to let the onions get really brown at the edges—this creates deeper, sweeter flavor that elevates the entire dish.
Step 3: Build the Creamy Sauce Base
- 4 tbsp butter
- 4 tbsp flour
- 3 cups milk
- 1 tsp garlic powder
- salt
- pepper
In a separate saucepan, melt the butter over medium heat.
Once melted and foaming, whisk in the flour to create a smooth paste (called a roux), stirring constantly for 2 minutes to cook out the raw flour taste.
Gradually add the milk while whisking continuously to prevent lumps from forming.
Simmer for 2-3 minutes, stirring frequently, until the sauce thickens enough to coat the back of a spoon.
Season with 1 teaspoon garlic powder, salt, and pepper to taste.
The sauce should be creamy and pourable—if it’s too thick, thin it slightly with a splash more milk.
Step 4: Layer and Assemble the Casserole
- 3 lb potatoes from Step 1
- caramelized onions from Step 2
- crispy bacon from Step 2
- 10 oz cheese from Step 1
- cream sauce from Step 3
Drain the potatoes from the cold water and pat them dry with paper towels—drying them helps them cook evenly and prevents excess water in the dish.
Begin layering in the prepared baking dish: start with half of the potatoes in an even layer on the bottom, then scatter half of the caramelized onions, half of the crispy bacon, and half of the grated cheese over the potatoes.
Pour half of the cream sauce from Step 3 evenly over this layer.
Repeat with the remaining potatoes, onions, bacon, and cheese, finishing with the final half of the cream sauce poured over the top.
Step 5: Bake Covered, Then Finish Uncovered
- assembled casserole from Step 4
Cover the casserole dish tightly with aluminum foil and place it in the preheated 350°F oven.
Bake for 1 hour covered—this allows the potatoes to steam and become tender while the sauce stays creamy.
After 1 hour, carefully remove the foil and bake for an additional 30 minutes uncovered, until the top is golden brown and the edges are bubbling.
I like to tent the foil loosely for the last 10 minutes of cooking if the top seems to be browning too quickly.
Step 6: Rest and Serve
- baked casserole from Step 5
Remove the casserole from the oven and let it rest at room temperature for 10 minutes before serving.
This resting period allows the sauce to set slightly, making each portion hold together better when scooped, and gives the flavors a moment to meld together.
Serve warm, scooping from the sides and bottom of the dish to ensure everyone gets layers of creamy potatoes, bacon, and cheese.

Best Scalloped Potatoes with Bacon
Ingredients
For the base layers::
- 3 tbsp olive oil (I prefer Bertolli for sautéing)
- 2 onions (thinly sliced into 1/8-inch rings)
- 12 oz bacon (diced into 1/2-inch pieces and browned)
- 3 lb potatoes (peeled and sliced into 1/4-inch rounds)
- 10 oz cheese
For the white sauce::
- 4 tbsp butter (I use Kerrygold unsalted for extra richness)
- 4 tbsp flour
- 3 cups milk
For seasoning::
- salt
- pepper
- 1 tsp garlic powder
Instructions
- Peel the potatoes and slice them into 1/4-inch rounds, placing them in a bowl of cold water to prevent browning—this keeps them looking fresh and prevents oxidation. Dice the bacon into 1/2-inch pieces and place in a cold skillet over medium heat. As the bacon cooks slowly from a cold start, it will render its fat gradually and crisp evenly, which takes about 8-10 minutes. While the bacon cooks, thinly slice the onions into 1/8-inch rings and grate or chop the cheese. Preheat your oven to 350°F and lightly grease a 9x13 inch baking dish or similar size.
- Once the bacon is crispy, transfer it to a paper towel-lined plate, leaving about 2 tablespoons of bacon fat in the skillet. If needed, add the olive oil to reach about 3 tablespoons total fat in the pan. Add the sliced onions and cook over medium-high heat for about 10-12 minutes, stirring occasionally, until they're deeply golden and caramelized. Season with a pinch of salt and pepper as they cook. I like to let the onions get really brown at the edges—this creates deeper, sweeter flavor that elevates the entire dish.
- In a separate saucepan, melt the butter over medium heat. Once melted and foaming, whisk in the flour to create a smooth paste (called a roux), stirring constantly for 2 minutes to cook out the raw flour taste. Gradually add the milk while whisking continuously to prevent lumps from forming. Simmer for 2-3 minutes, stirring frequently, until the sauce thickens enough to coat the back of a spoon. Season with 1 teaspoon garlic powder, salt, and pepper to taste. The sauce should be creamy and pourable—if it's too thick, thin it slightly with a splash more milk.
- Drain the potatoes from the cold water and pat them dry with paper towels—drying them helps them cook evenly and prevents excess water in the dish. Begin layering in the prepared baking dish: start with half of the potatoes in an even layer on the bottom, then scatter half of the caramelized onions, half of the crispy bacon, and half of the grated cheese over the potatoes. Pour half of the cream sauce from Step 3 evenly over this layer. Repeat with the remaining potatoes, onions, bacon, and cheese, finishing with the final half of the cream sauce poured over the top.
- Cover the casserole dish tightly with aluminum foil and place it in the preheated 350°F oven. Bake for 1 hour covered—this allows the potatoes to steam and become tender while the sauce stays creamy. After 1 hour, carefully remove the foil and bake for an additional 30 minutes uncovered, until the top is golden brown and the edges are bubbling. I like to tent the foil loosely for the last 10 minutes of cooking if the top seems to be browning too quickly.
- Remove the casserole from the oven and let it rest at room temperature for 10 minutes before serving. This resting period allows the sauce to set slightly, making each portion hold together better when scooped, and gives the flavors a moment to meld together. Serve warm, scooping from the sides and bottom of the dish to ensure everyone gets layers of creamy potatoes, bacon, and cheese.