This Bacon Spinach Breakfast Casserole with Gruyère is perfect for your next holiday gathering, feeding a crowd, or meal prep for the week.

Bacon Spinach Breakfast Casserole
This spinach, bacon, and Gruyère breakfast casserole is a tasty and healthy option for your Christmas morning breakfast spread, and it’s perfect for those following the Weight Watchers plan. The Gruyère cheese (a classic traditional Swiss cheese) takes this savory egg casserole over the top. It pairs beautifully with bacon and spinach and provides a nutty, salty flavor that will make your taste buds sing. For more healthy breakfast casseroles, try this Tex-Mex Breakfast Casserole, this Vegetarian breakfast casserole with spinach and feta, and Veggie, ham, egg and cheese casserole.
What is breakfast casserole made of?
- Bacon: Chop eight slices of bacon
- Shallots: Dice half a cup of shallots.
- Baby Spinach: You’ll cook the spinach with the shallots in bacon grease.
- Cheese: Swap Gruyère with Swiss or fontina.
- Eggs: I used 12 whole eggs, which always taste best, in my opinion, but you can lighten it by swapping some of the eggs for egg whites if you wish.
- Milk: If you don’t have nonfat, 2% milk will work.
How to Make This Bacon Spinach Breakfast Casserole
- Bacon: Cook the bacon over medium heat in a large skillet. With a slotted spoon, transfer the bacon to a paper towel-lined plate, and discard all but two tablespoons of the grease from the pan.
- Veggies: Sauté the shallots in the bacon grease for two minutes, stir in half the spinach, and then add the rest. Cook for a few minutes until the spinach wilts.
- Eggs and Cheese: Whisk the eggs in a large bowl. Add all but one cup of the cheese to the eggs, followed by the milk, salt, pepper, spinach, and bacon. Pour the egg mixture into a greased 9” x 13” dish and sprinkle with the remaining cheese.
- Bake the egg casserole for 35 minutes. Next, move the oven rack to the second spot closest to the top, switch the oven to broil, and cook for another two minutes until browned. Let it cool, and cut it into eight pieces.
How to Meal Prep Breakfast Casserole
This make-ahead spinach egg casserole is perfect for meal prep or serving at a party. You can make the filling the day before and bake it right before serving. Store leftovers in the refrigerator for up to four days and reheat them in the microwave.
What to Serve with a Breakfast Casserole
If you want to make this a meal for brunch, serve it alongside a green salad or fruit salad for a complete meal. When planning a holiday brunch, I like to include several dishes. I usually do an egg casserole for protein, a bagel bar, baked oatmeal, and some sweet recipes, like these sheet-pan pancakes and overnight French toast.
More Egg Recipes You’ll Love:
- Breakfast Strata with Sausage and Mushrooms
- Sausage, Cheese, and Veggie Breakfast Casserole
- Crustless Ham and Cheese Quiche
- Cottage Cheese Egg and Sausage Frittata
- Crustless Broccoli Cheddar Quiche
Your comments are helpful! If you’ve tried this healthy Bacon Spinach Breakfast Casserole recipe or any other on Skinnytaste, don’t forget to rate the recipe and leave me a comment below. And if you took a photo of it, share it with me on Instagram so I can reshare it on my Stories!
Bacon Spinach Breakfast Casserole with Gruyère

Ingredients
- Cooking spray
- 8 slices center-cut bacon, chopped
- ½ cup finely diced shallots
- 5-ounce package baby spinach
- 8 ounces shredded Gruyère cheese, 2 cups total (I like Finlandia)
- 12 large eggs
- 1 cup nonfat milk
- ½ teaspoon kosher salt
- Freshly ground black pepper, to taste
Instructions
- Preheat oven to 350 degrees F. Spray a 9” x 13” casserole dish with cooking spray and set aside.
- In a large skillet, cook the bacon over medium heat until cooked through. Using a slotted spoon, transfer the bacon to a paper towel lined plate.
- Remove and discard all but 2 tablespoons of the bacon grease then add the shallots.
- Sauté the shallots until fragrant and they start to brown on the edges, about 2 minutes.
- Add half the spinach and toss to mix with the shallots then add the rest and toss again.
- Cook, stirring and tossing for about 3 minutes, until spinach is wilted. Remove the pan from heat and set aside.
- In a large bowl, whisk the eggs.
- Set aside 1 cup of the cheese then add the remainder to the eggs. Add the milk, salt, pepper, cooked spinach mixture and bacon then mix to thoroughly combine.
- Pour egg mixture into the prepared dish then sprinkle remaining cheese evenly over the top.
- Bake for 35 minutes, then move the oven rack to the second slot closest to the top, switch the oven to broil and cook an additional 2-3 minutes, until browned, watching closely to make sure it doesn’t burn.
- Allow to cool for 10 minutes then cut into 8 pieces and serve immediately.







This is our favorite egg bake!! I make follow the recipe as is. It’s just so good.
Can you substitute the cheese with Gouda cheese or cheddar or swiss or can use 2 or 3 cheese? Sounds good to me going to make it as a side dish for tonights dinner
I use shredded and it’s so good!
Shredded mozzarella!
Can you add shredded potatoes if you want, and if do, would you have to precook them or cook the casserole longer?
Do you have a proper substitute for milk? Will coconut (unsweetened) milk work?
Any dairy free milk that tastes like regular milk would work- I worry that coconut milk might change the taste.
Hi how much brocolli can I sub for the spinach?
I make this and use it for breakfasts for the week for my son. Cut it up into triangles and refrigerate. He can help himself in the morning and just heat up.
Absolutely delicious! It smells wonderful as I’m preparing it. I’ve made it several times and received rave reviews from all of my children and my husband. Thanks for an awesome recipe!
Fabulous! First, to answer those who asked, absolutely yes, perfect to prepare the night before and bake it in morning. Gina had indicated this in notes.
I prepared everything (minus the extra cup of cheese) and refrigerated it in my mixing bowl. Next morning, I poured it in a sprayed Pyrex baking dish and topped it with the extra cheese. It was sufficiently browned when the casserole was set. Only change was my cheese choice: Trader Joe’s Cheddar/Gruyère at $8/lb. instead of $15/lb. for Gruyère and just perfect for this. Guests raved.
I’ve made this recipe several times and it always turns out great! Even my kids who don’t usually like breakfast casserole gobble this up. Great for our low carb diets.
Love this recipe! Made it several times! Recently started doing it in oversized muffin tin to go ahead and portion out the 8 servings.
I made this for a Christmas brunch for our family and it was a huge hit as anything from SkinnyTaste is! 10 out of 10
I’m thinking of making this the night before. Do you think the raw eggs sitting in the fridge overnight will be ok?
I added minced garlic when I sautéed the spinach, and swapped in shredded swiss instead of gruyere. Absolutely delicious! This also reheated really well throughout the week for easy breakfast.
Should the bacon be crispy or soft when added to the mixture?
I made this but used swiss cheese. It tasted great! Would definitely make again.
Hi. Has anyone tried or know if this freezes well? I want to try it but it’s just me. I can’t eat 8 servings fast enough. Thanks!
I have the same problem (only me). From reading other comments I think the best plan is to cut the recipe in half. I’m going to try that anyway.
I love this recipe. It is awesome.
Very good- made it for Father’s Day brunch and used turkey bacon.
Everyone loved it!
This recipe is delicious and so easy to make!
I ended up using some Mexican blend shredded cheese with the Gruyère just because my block was only 6 oz. Instead of 8, and I used unsweetened cashew milk instead of regular milk.
Thank you for a delicious addition to our breakfast ideas!
Excellent! Have made multiple times for multiple people. Always a fav!!
I needed a last-minute dinner that had bacon, spinach, and eggs and that didn’t take too long to make. I didn’t have Gruyère, so I had to substitute cheddar and Parmesan, but it still turned out spectacularly. 4 out of 4 kids loved it and asked me to make it again—a winner!
I’m so glad!
Has anyone made this in single serve style? (cupcake pan).
This is so delicious! Great way to sneak some veggies into my breakfast. I also added some sun dried tomatoes after reading your egg, sausage and spinach casserole!
I have made this numerous times and it is always a hit!
Has anyone substituted cottage cheese for milk?
This is absolutely my family’s favorite egg casserole. I always make two and any leftovers get taken home by my grown children. I have subbed Gouda and sharp cheddar. Easy and yummy!
Excellent! Everyone enjoyed this on Christmas morning. I used turkey bacon. Next time I might add more spinach, and may sub a leek for the shallot.
Delicious! Whole family (even 3yr old) loved it! Subbed in Gouda bc Google said I could when my grocery store was out of Gruyère. Will make again!
Made this for Christmas morning-easy and delicious! I will definitely make again!
Can the bacon/spinach dish be made with lactose-free milk?
Of course. I use Lactaid fat free.
Yummy
10/10 will make this again for breakfasts, brunches, potlucks.
The shallots add the right flavor and it’s soooo cheesy. Perfect!
This is so good! Made it ahead and froze to take to family for quick easy breakfast over the holiday weekend. It’s delicious!
Was the texture good after freezing, thawing, and reheating? I’d love to make ahead if it was successful for you!
Delicious! It was so good. Made it for a crowd on the fly. Everyone enjoyed it! It was satisfying and filling. I even was asked for the recipe. Thank you so much for all the delicious recipes.
came out perfect
Would frozen spinach work? Plan on defrosting it ahead so it doesn’t make watery.
Made for girls trip to NYC, and all loved it!!
So easy and quick to make and the flavors are delicious!
Made a smaller portion and was abler to have 2 potions in my 6” casserole dishes.. I thought I had Gruyère cheese , NO! So I used mozzarella cheese & added some grape tomatoes It was delicious. Will definitely make again
It was easy to make , doesn’t need salt , it was delicious will make it again !
Has anyone assembled this the day before and baked day of? Trying to get as much done in advance as possible before a weekend with a house full of guests:)
When you say make the filling ahead and bake right before serving, do you mean that we can just prepare it through step 9 and then put it in fridge overnight until ready to bake the next morning?
Absolutely delicious!
I love this recipe!! Used turkey sausage crumbles instead of bacon and added sauteed red pepper, too. Cut into eight pieces wrapped individually and froze. Thaw a piece overnight for a fab morning breakfast. Thank you Gina for easy, tasty, and healthy recipes.
I used the shredded Alpine cheese mix with Swiss and Gruyere but otherwise made as is and it was so delish! Hard not to have a 2nd piece. Looking forward to this weeks breakfasts!
Easy and delicious. Served to several people and everyone loved it. Really good cold! I served fresh homemade salsa to add a little zip
A little bland. Not worth the expensive Gruyère.
Loved this recipe. I make it and eat it through the week. It is my new favorite breakfast casserole.
Thanks Dina!
Can you make this the day before? I used the 4 blend Mexican cheese
Haven’t made this yet but what would the overnight crockpot directions be 8 hours on low?
Delish! I halved the recipe and baked in an 8×8 pan for dinner. I subbed broccoli for the spinach too. The Gruyère is so good! I’ll definitely be making this again!
I made this for my family this morning and we loved it! I made a few changes. I did not have shallots so I used a yellow onion and I also added red bell pepper and minced garlic when cooking the veggies. And I used sharp cheddar cheese because I didn’t have gruyere. This will be our new go-to breakfast casserole. Thanks Gina!
Loved this recipe! Just curious if anyone has tried making out with frozen spinach.
Meal prepping this week. I made this easy casserole around noon for breakfasts this week. I used a Swiss and gruyere mix I found at Aldi. My husband pressed we have it for lunch. My picky guy loved it! So good! This is a keeper. And now we have breakfast for the rest of the week! Thanks, Gina!
A note about freezing: I made this for my book group brunch and everybody loved it. But I didn’t think the frozen leftovers did as well. I wrapped pieces individually in plastic wrap to freeze. I unwrapped 2 pieces and placed them on a plate in the microwave for one minute and then 30-second increments until they felt hot (which took about 2.5 minutes). Even then they weren’t hot inside, but the texture got rubbery and watery. If anyone has a better idea for reheating I’d love to hear it. But I think next time I will just try to eat it all while it’s fresh!
I haven’t made this re pie yet, but I have found that most things reheat better in the Instant Pot than the microwave – it’s a gentler, more even heating process so foods stay moist. I do PIP on the steam setting (on the trivet); most things in the 15-18 minute range, depending on the density of food.
Love this. Whether it’s gruyere, mozzarella, cheddar. Great grab and go breakfast
I made this for a group breakfast and loved it.
This wasn’t as delicious as I expected. The bacon flavor got kind of washed out. Sorry, Gina. This didn’t make the cut for me.
I make this almost every weekend so we have breakfast through the week. I bake the bacon so there’s less mess on the stove then use some of the drippings to saute the shallot and spinach.
I cannot give this casserole enough stars! I made this because my nephew and a friend were visiting and I wanted easy breakfasts. It was such a huge hit! I thought it would last the weekend, but they ate it in one sitting. My S.O. even had second helpings, which he never does! He just kept saying how good it was. Thank you so much for an amazing recipe. I am going to make it again this weekend, so we have it for camping.
Great Recipe but 10 minute prep time is a joke.
Really delicious, definitely a keeper! My whole family loved it. We stored the leftovers in the fridge and reheated for breakfasts later in the week.
Made this for company and it was a hit with the adults (the kids didn’t want the veggies). I used precooked turkey bacon since I hate cooking bacon. Otherwise I made the recipe as indicated and it was perfect- maybe an extra 5 minutes in the oven due to my oven always taking longer).
Perfect! Have made this a few times. So easy and serves a crowd!
Made this for Mother’s Day brunch at my sisters house. It was a huge hit!! I replaced regular bacon with turkey bacon that i cooked in the air fryer to crisp it up and it turned out fantastic.
Super yummy and easy to make! Definitely a repeat weekend breakfast.
Awesome breakfast casserole, will definitely make again.
Made this today actually and it was awesome!! I sprinkled on sharp cheddar at the end before broiling. 5 stars!!!
I agree with all the other ratings. This was delicious. I did the recipe in 1/2 since it was just to the two of us. I had some left over mushrooms and roasted potatoes and broccoli from the night before that I added so it all didn’t go to waste. It was really good. The shallots and the salt/pepper add the perfect amount of flavor.
I want to half this recipe too. What size dish did you use? 8 X 8?
We just used an 8×8 and the result was thin.
This was easy to make and tasted SO good. I cut it into squares and kept it for breakfast during the week and it tasted fantastic every day. I would not change a thing about this recipe.
Made this last weekend for a gluten free guest. It was delicious! Leftovers reheated beautifully.
This is SO GOOD!!!!!!! Thank you for this recipe. I live on a cattle ranch and made this for our hungry cowboys. They loved it, and didnt even know how healthy it is!
Made this for Easter brunch as a vegetarian dish to accompany the ham, etc. Substituted red peppers and mushrooms for the bacon – it was delicious and got rave reviews from the guests. Great, easy, make-ahead recipe. Thank you.
Added green peppers and mushrooms to increase the veggies. Very yummy and easy!
Have made this several times. It’s easy to make and has been a crowd favorite each time. So nice to have a carb-free egg casserole!
Made this for breakfast but cut the recipe in half since there is just me. It was very delicious.
Hi. What would you think about substituting mild Italian sausage for the bacon? Would the flavors all still go together well? Thank you.
I’m getting ready to try this! Can I swap out bacon for turkey bacon? How about almond milk instead of regular? I’m still in active weight loss, so still trying to lower cals and fat a bit more.
I made this with turkey bacon, unsweetened almond milk and swiss. Absolutely delicious.
My family loves it but I am allergic to dairy. What milk substitute will work better with this recipe? Thanks love all your recipes
Coconut milk works great
Sounds so good! Is it possible to half the recipe?
This recipe is great! I make it once every week or two. Definitely a hit in our house!
This is an amazing recipe. I made it at Christmas for the first time and it was a hit. I’ve made it numb times since, switching up the cheese for different varieties. You can’t go wrong with this recipe!
This turned out really well for me! Can’t wait to make it again.
Can you make this the night before? Would you par bake it?
Geeze, Louise. Is it the shallots? Bacon? Cheese? Gina, I know you’re amazing but yet you outdid yourself again. I’m one of your original followers but you always surprise me!!! For those reading this, make this ASAP!
And also make the zucchini crustless quiche!!
Thanks Jennifer!!
Do you think you can add shredded potatoes to this?
Great flavor! Will definitely make again!
Great Recipe! Subbed swiss since I had that in the fridge. Added tomatoes too!
Made this this morning & it is great! Made half the recipe in a 8×8 pan, turned out so good I’m glad I have it to eat this week for breakfast…
Delicious and worked well with a little less bacon!
Do you remember how long you cooked it for?
I would make this again with less bacon, no added salt and reduced cooking time.
If you are trying to reduce processed meats, could you replace all or part of the bacon with mushrooms or something else?
Sure or use turkey bacon
Excellent recipes!
Thanks
oops forgot to Rate it on first comment, adding my 5 star rating now
I made this for family over the holidays and we loved it! my mom said it was one of the best egg bakes she has ever had! I also added cherry tomatoes into the bake- just threw them in without sauteeing. I loved the added flavor of that. Today I am making another version of this with the bacon and gruyere, but in a quiche form!
I love this recipe!! Very tasty and full of protein. I think one of my favorite egg bakes!
Absolutely delicious! I have made it twice now – using a Gruyère/Swiss blend I found and unsweetened cashew milk. Perfection!
Delicious recipe!!! I also added in cherry tomatoes to include more veggies! So good!
Delicious! Definitely planning on making again. I subbed swiss for the Gruyere since I couldn’t find Gruyere at my limited grocery store, and added some mushrooms. 5 stars.
This was a HUGE hit at Christmas with everyone having a second helping! Absolutely delicious!!!
Absolutely delicious! II could not find Guyere cheese, so I had to substitute Swiss, and was a little light, so also put in cheddar. Really really tasty..
Made exactly as instructed … so easy and delicious! Portioned and put in freezer for quick healthy workday breakfast. May add red bell pepper per another reviewers suggestion just because I like bell peppers. Thank you!
This looks and sounds delicious. Since it is just me, do you think I can half the recipe successfully?
Hi Barbara – when I make breakfast casseroles, I will cook the casserole and freeze them in portions. They freeze well. 😊
How do you re-heat this after frozen? Oven at 300?
I halved it; it turned out great!
Made this for Christmas morning – it was a big hit.
LOVED this! It warms up BEAUTIFULLY in the microwave, if you have leftovers.
I made this for Christmas morning and it was delicious. Everyone commented on how much they liked it. My only change was adding a red bell pepper to complement the green spinach. Thank you for a great recipe!
This was fabulous! Made it for Christmas morning breakfast. But gruyere cheese is expensive–$24.99 lb. in the Midwest!!
Hi Rhonda, If you have an Aldi near you, I can usually find a gruyere cheese there, cheaper than the other grocery store!! Aldi has good cheese.
Made this for Christmas morning brunch and it was well received! The flavor combination of the bacon, shallots, and Gruyère cheese can’t be beat! Instead of spinach, I used baby kale. Next time I will try adding cooked diced potatoes. Thank you for this awesome recipe!
Awesome recipe. Amazing flavor. Easy to assemble day ahead.
Just made this and it is easy and delicious. Will definitely make again.
This is delicious!! Definitely making many more times.
Can you use almond milk instead of FF milk?
sure although the cheese has dairy
Delicious! The whole family loved it
Great!!
Do you think I can make it ahead and store it for 2 nights in the fridge before baking or is that too long to sit? I’d love to do it today before my guests arrive but bake Christmas morning! Thanks!!
I think it would be fine!
Delicious! I just made this this morning to have hot breakfast on hand for upcoming busy days. I added some tomatoes as well. The cheese gives it some amazing flavors.
Question – you say to set aside a cup of the cheese, but the recipe calls for just one cup. So how much in the mix and how much on top? And if cooking the next morning, wait to add the cheese on top before baking? Will be serving this Christmas morning. Thanks!
8 ounces of cheese is more than one cup, this is weight not volume. It’s 2 cups cheese. And yes, I would wait so it doesn’t drop to the bottom.
This breakfast casserole is so good!!!
So glad you liked it!
I enjoyed this recipe
Can I add a layer of shredded hashbrowns to the bottom?
Sure!
Would this work with using vegan cheese?
Yes!
Loved this. Delicious and easy to make. Calorie count seems a bit low though. MyFitness pal claims it is 429 Cal, 41 carbs, 22 fat, 22 protein 15 fiber. Quite a difference but seems more aligned to the cheese, bacon and eggs. Will make it again.
Great! Let me double check!
Appreciate your double checking. I love your recipes and want to be sure to log my food correctly.
I use MyFitnessPal too and I couldn’t find it, so I added based on your measurements.
I made this for my staff and it turned out great. I decided to add a cup and a half of frozen cubed hash browns to it.
Hi has anyone made this with turkey bacon?
Should be fine!
I live alone…and would like to convert this recipe by using muffin tins instead of a baking pan to make individual little servings, where I can freeze the extras, and then just take them out to be microwaved when a quick breakfast is required. Is this doable? Do you have any suggestions or recommendations on changing how this can be converted to individual servings?
Thank you!
I don’t see why not! Use some of my muffin tin eggs to get the baking time and temp.
Do you know how many points a serving would be on WW?
Is that one five-ounce package of spinach, or is it fifteen ounces of spinach? And do you think these can be frozen and reheated? T.
5 oz, just fixed so its not confusing! I have not tried freezing this so not sure if the texture will change. You can also make half the recipe in an 8 x8 baking dish.
Can I make it the day before and bake it the next morning?
Sure! Just cover tight and leave it in the fridge.
What do you think about adding in chopped mushrooms?
Sure!
Can this be prepared the night before and cooked in the morning?
Sure
what do you suggest if wanting to make day before to then have xmas day bfast? Do I make and bake it, cool, place in fridge, and reheat in AM?
You can! Or have it ready to bake.