A great savory bread pudding has a golden, crisp top and a soft, custardy interior. Made with simple ingredients and less than 30 minutes of active time, this dish is perfect for brunch, a cozy weeknight dinner, or using up stale bread and leftover cheese. This version—sourdough, Gruyère, mushrooms, and spinach—strikes a lovely balance of nutty, earthy, and savory flavors.

I began making this bread pudding when a stale loaf of sourdough was sitting on my counter. Toasting the bread first is a small but important step: it firms the cubes so they soak up the custard without breaking down, leaving a tender interior and a pleasingly crisp surface. Once you toast the cubes, assemble the filling, let it rest so the custard soaks in evenly, then bake until deeply browned on top and custardy beneath.
This recipe is forgiving and adaptable—swap cheeses or vegetables, add cooked meat, or use whatever sturdy loaf you have on hand. The version below is my favorite combination: crusty sourdough, melted Gruyère, sautéed mushrooms, wilted spinach, and a touch of thyme. It reheats well and is easy to make ahead, making it a reliable, crowd-pleasing main.
Table of Contents
- Why This Recipe Works
- Ingredients for Savory Bread Pudding
- How to Make Savory Bread Pudding
- Pro Tips
- Recipe Variations
- FAQ
- Making-Ahead, Storage and Reheating
- Make it a Meal
- Savory Bread Pudding with Spinach and Mushrooms Recipe
Why This Recipe Works
- Toasting the bread: Drying and toasting the cubes prevents them from turning to mush while allowing them to absorb the custard for a tender center.
- Balanced dairy: A mix of whole milk and half-and-half creates a rich but not overwhelming custard that sets to a smooth texture.
- Rest time: Refrigerating the assembled dish for at least an hour lets the custard soak evenly into the bread, producing consistent texture and easier slicing.
- Cook the vegetables first: Sautéing onions, mushrooms, and garlic removes excess moisture and intensifies flavor; adding spinach at the end keeps its color and bright taste.
Ingredients for Savory Bread Pudding

- Bread: 12 oz crusty sourdough, cut into 1-inch cubes. Any sturdy loaf (French bread, peasant loaf) works; avoid very soft sandwich bread.
- Eggs: 8 large eggs to form the custard base.
- Milk and cream: 2 cups whole milk plus 1 cup half-and-half (or heavy cream for a richer pudding).
- Cheese: 8 oz Gruyère, shredded (about 2 packed cups). Fontina, white cheddar, or mozzarella are suitable alternatives; add a little Parmesan for sharper flavor if desired.
- Aromatics and fat: 2 tablespoons butter and 2 tablespoons extra-virgin olive oil, 1 large yellow onion (thinly sliced), and 2 cloves garlic.
- Mushrooms and spinach: 8 oz button mushrooms (coarsely chopped) and 10 oz baby spinach. Swap cremini mushrooms or baby kale as preferred.
- Herbs and seasoning: 1 tablespoon fresh thyme (or 1 teaspoon dried), 1 1/4 teaspoons fine sea salt (divided), and 1 teaspoon freshly ground black pepper (divided).

How to Make Savory Bread Pudding
Prep the bread: Cut the loaf into 1-inch cubes and spread them on a rimmed baking sheet. Toast in a preheated oven for 5–7 minutes, just until the edges dry and begin to brown. Let cool.


Make the custard: Whisk 8 eggs until smooth. Add 2 cups whole milk, 1 cup half-and-half (or cream), 3/4 teaspoon of the salt, and 1/2 teaspoon of pepper. Whisk until combined and set aside.



Cook the vegetables: In a wide skillet, heat 2 tablespoons butter and 2 tablespoons olive oil over medium-high heat. Add the sliced onion with a pinch of salt and cook about 5 minutes until softened. Stir in the chopped mushrooms, minced garlic, thyme, the remaining 1/4 teaspoon salt, and remaining 1/2 teaspoon pepper. Cook 4–5 minutes until the mushrooms release moisture and begin to brown. Add the spinach in batches, stirring until just wilted. Remove from heat and let cool slightly for a few minutes.





Assemble and rest: In a buttered 9×13-inch (3-quart) baking dish, combine the toasted bread cubes, the cooled vegetable mixture, and 8 oz shredded Gruyère. Spread evenly, pour the custard over the top, and press down so the bread soaks up the liquid. Cover tightly with foil and refrigerate for at least 1 hour or up to overnight for best texture.


Bake, rest, and serve: Preheat oven to 350°F. Bake covered for 35 minutes (or 40 minutes if chilled overnight), then remove the foil and bake 20–25 minutes more until puffed and deeply golden. A knife inserted in the center should come out mostly clean. Let the dish rest 10–15 minutes to allow the custard to set, then cut into squares and serve warm.


Pro Tips
- Cool the vegetables first: Let the sautéed filling cool a few minutes before adding so it doesn’t melt the cheese or start cooking the eggs prematurely.
- Ensure the custard soaks in: Press gently on the bread after pouring the custard so each cube absorbs liquid. If a few areas look dry, drizzle a little extra milk there.
- Know when it’s done: The pudding should be puffed, set, and golden. A knife inserted into the center should be mostly clean and the internal temperature about 175 °F (80 °C).
- Let it rest: A short rest makes slicing neater because the custard firms up as it cools slightly.
Recipe Variations
- Add protein: Stir in 8–10 ounces of cooked, crumbled sausage or shredded roasted chicken with the cooled vegetables.
- Swap the vegetables: Replace mushrooms and spinach with 1 cup diced leeks and 1/2 cup chopped sun-dried tomatoes for a different flavor profile.
- Make it spicy: Add red pepper flakes when sautéing the onions or use Pepper Jack in place of half the Gruyère.
FAQ
A strata is usually assembled and baked immediately; a bread pudding benefits from a resting period that lets the custard soak in, producing a creamier center and crisper top.
Sturdy, crusty loaves—sourdough, French bread, or rustic peasant loaves—hold up best to the custard and provide texture contrast.
Toast the bread, avoid too much liquid, and chill the assembled dish for at least an hour before baking so the custard soaks in evenly.
Yes. Assembling and chilling overnight often improves the texture. Add a few extra minutes to the covered bake time if it’s very cold from the fridge.
Making-Ahead, Storage and Reheating
This dish is ideal for making ahead. Cover the assembled casserole and refrigerate for up to 24 hours. After baking, cool completely, then wrap and refrigerate for up to three days, or freeze for up to three months. To reheat, thaw overnight if frozen, then warm individual portions in a 350°F oven, lightly covered with foil, for about 12 minutes to revive the crisp edges.
Make it a Meal
- Serve with a bright green salad dressed with a sharp vinaigrette to cut through the richness.
- Roasted asparagus or lemony green vegetables make a light, complementary side.
- Finish the meal with a simple fruit-based dessert for a balanced menu.
Savory Bread Pudding with Spinach and Mushrooms

Ingredients
- 12 oz crusty sourdough bread, cut into 1-inch cubes
- 8 large eggs
- 2 cups whole milk
- 1 cup half-and-half (or heavy cream)
- 2 tablespoons butter
- 2 tablespoons extra virgin olive oil
- 1 large yellow onion, quartered and thinly sliced (about 2 cups)
- 8 oz button mushrooms, coarsely chopped
- 2 cloves garlic, minced
- 1 tablespoon fresh thyme, or 1 teaspoon dried
- 10 oz baby spinach
- 1 1/4 teaspoons fine sea salt, divided (plus a pinch for the onions)
- 1 teaspoon freshly ground black pepper, divided
- 8 oz Gruyère cheese, shredded (about 2 packed cups)
Instructions
- Prep the dish: Butter a 9 × 13-inch (3-quart) baking dish or spray with cooking spray.
- Toast the bread: Spread the bread cubes in a single layer on a rimmed baking sheet and toast 5–7 minutes, until dry and beginning to brown. Remove and cool.
- Make the custard: In a large bowl, whisk the eggs. Add the milk, half-and-half, 3/4 teaspoon salt, and 1/2 teaspoon pepper; whisk to combine and set aside.
- Sauté the filling: Heat the butter and oil in a wide, high-sided skillet over medium-high heat. Add the onion with a pinch of salt and cook 5 minutes. Add mushrooms, garlic, thyme, remaining 1/4 teaspoon salt, and remaining 1/2 teaspoon pepper; cook 4–5 minutes until the mushrooms release moisture and brown. Add the spinach in handfuls, stirring until wilted, about 3 minutes total. Remove from heat and cool 5 minutes.
- Assemble and chill: Transfer toasted bread to the prepared dish. Add the slightly cooled vegetable mixture and shredded Gruyère; stir to combine and spread evenly. Pour the custard over the bread, pressing down so everything is soaked. Cover tightly and refrigerate at least 1 hour or up to overnight.
- Bake: Preheat oven to 350°F. Bake covered for 35 minutes (40 minutes if chilled overnight). Remove foil and bake 20–25 minutes more until puffed and golden and a knife inserted in the center comes out mostly clean (about 175°F internal).
- Rest and serve: Let stand 10–15 minutes to set, then cut into squares and serve warm.
Notes
- Make-ahead: The total time does not include an optional overnight chill, which improves texture. Aim for at least one hour of soak time.
- Leftovers: Cool completely, cover, and refrigerate up to 3 days. Reheat individual squares in a 350°F oven, lightly covered, for about 12 minutes to restore crisp edges.
Nutrition
Calories: 357 kcal per serving (approximate). Carbohydrates: 25 g | Protein: 18 g | Fat: 21 g.
Nutrition information is automatically calculated and should be used as an approximation.