This overnight croissant breakfast casserole is a weekend or holiday breakfast game changer. Cheesy bacon vibes take this hearty breakfast over the top!

I am crazy for breakfast casseroles. But I’m also very, very picky about them.

I detest soggy bread and lackluster flavor. But give me a breakfast casserole that has just the right texture and tons of savory goodness, and I’m won over.

This overnight croissant breakfast casserole is just that. It’s easy, decadent, and AMAZING.

Overnight croissant breakfast casserole baked in white 9X13-inch pan with one serving removed.

It Starts with Croissants

The base and heart of this breakfast casserole starts with croissants.

And because croissants are tender, flaky, and not the sturdiest of all bread forms, they need to be toasted in order to maintain the structure of the casserole.

This is not optional! Don’t justify skipping it (even if you enjoy soggy bread, also, who even are you??).

Toast the bread, friends. Toast the bread.

Halved croissants toasted on parchment lined baking sheet.

Assembling the Croissant Breakfast Casserole

The toasted and torn croissants pile into the bottom of a 9X13-inch pan. Followed by:

  • crisp, cooked bacon
  • sautéed shallots or red onions
  • and cheese, lots and lots of cheese

For the cheese, I prefer using half sharp cheddar and half gruyere. You can use all cheddar, change it up to white cheddar, use a combo of half cheddar/half Swiss. Cheese options are flexible.

The most important thing to remember is to grate the cheese yourself. Preshredded cheese in the bag doesn’t melt as well (it’s coated with a powdery substance to keep it from clumping). This breakfast casserole will be cheesier, creamier and dreamier if you shred the cheese yourself. |Mel steps down from cheese soap box now|

Torn toasted croissants in white 9X13-inch pan; cheese, bacon and onions on top of toasted croissants.

A Simple Custard

After all the ingredients are layered in the baking dish, a simple egg custard is poured over the top. Kind of like this epically popular tater tot breakfast casserole.

The custard consists of:

  • eggs (nine of them, to be exact)
  • milk (don’t use skim)
  • heavy cream (just enjoy life and go with it)
  • salt and pepper
Pouring egg and milk mixture over croissant ingredients in white 9X13-inch pan.

Let it Rest

The breakfast casserole needs to go into the fridge, covered, and hang out for at least four hours. Or up to 12 hours. Any longer than that and the croissants will break down to the point of disintegration, and we don’t want that.

So try to stick with the 4-12 hour window here.

Once baked, it is golden, puffy, and your house is going to smell like there are definitely good things to come.

Puffy baked croissant casserole in white 9X13-inch pan.

No Soggy Bread

As I’ve mentioned many times on this blog, I am mentally allergic to all things soggy bread. I am not a fan of classic bread pudding and other soggified bread dishes. I can’t do them. I just can’t.

But I tested this breakfast casserole out several times to get the consistency just right, and I can honestly and proudly say that the end result is perfect.

The croissants are soft with a firm custard-like texture. And the golden cheesy crust on the top of the casserole is about the most delightful thing to ever happen to breakfast casseroles every where.

This overnight croissant breakfast casserole is a splurge, to be sure. But if you’re looking for a hearty, soul- and tummy-pleasing savory egg casserole to win weekend and holiday mornings, this is the one.

Cheese strings pulling as fork takes bite from breakfast casserole on white plate.

One Year Ago: A Lazy Girl’s Guide to Sourdough
Two Years Ago: Apple Cranberry Pie {My Favorite Thanksgiving Pie}
Three Years Ago: Slow Cooker Tortellini Sausage Potato Soup
Four Years Ago: Turkey {or Chicken} and Brown Rice Soup {Instant Pot or Stovetop}
Five Years Ago: 5-Minute Cranberry Sauce {Pressure Cooker}
Six Years Ago: Make-Ahead Buttermilk Dinner Rolls
Seven Years Ago: Apple Cheesecake Pie
Eight Years Ago: Slow Cooker Turkey with No-Fuss Gravy
Nine Years Ago: Chocolate Chip Cookie Dough Fudge 
Ten Years Ago: Black Bean & Pumpkin Chili 

cheese strings pulling as fork takes bite from breakfast casserole on white plate

Overnight Cheesy Bacon Croissant Breakfast Casserole

5 stars (79 ratings)


  • 1 pound (454 g) croissants, halved lengthwise (about 5-7 small/medium croissants), see note
  • 8 to 10 slices bacon, chopped (I use thick-sliced)
  • ½ cup diced shallot or red onion
  • 2 cups shredded cheddar, gruyere or swiss cheese (see note)
  • 9 large eggs
  • 2 cups milk (see note)
  • 1 cup heavy cream
  • 1 ½ teaspoons salt
  • ¼ teaspoon black pepper


  • Preheat the oven to 350 degrees F. Spread the halved croissants, cut side up, on a parchment lined half sheet pan and toast in the oven until golden, 10-12 minutes, checking often so they don't burn. Let the croissants cool.
  • Tear the croissants into large bite-size pieces and place evenly in the bottom of a 9X13-inch baking dish.
  • In a 10- or 12-inch skillet set over medium heat, cook the bacon until crisp. Remove the bacon with a slotted spoon to a paper-towel lined plate. Drain all but 1 tablespoon of the bacon grease and return the skillet to medium heat.
  • Add the shallot (or red onion) and a pinch of salt and pepper, and cook for 3-5 minutes, until translucent.
  • Sprinkle the cooked bacon and onions over the torn croissants followed by the shredded cheese. At this point, you can lightly toss the ingredients together to distribute the cheese/bacon/onion throughout or leave as is (I usually don't toss).
  • In a medium bowl, whisk together the eggs, milk, heavy cream, salt and pepper until very well-combined. Pour the egg mixture evenly over the casserole.
  • Cover the baking dish and refrigerate for at least 4 hours or up to 12 hours (any longer than 12 hours and the croissants can start to break down and disintegrate).
  • When ready to bake, preheat the oven to 350 degrees F. Remove the cover from the casserole and place the baking dish on a foil-lined sheet pan (to catch any spillovers). Bake for 45-50 minutes until the casserole is golden, puffy, and firm to the touch. Let stand 10-15 minutes before serving.


Croissants: if you don’t have a scale to weigh the 1 pound croissants, use about 5-7 small/medium croissants or about 4 large (Costco-sized) croissants. The torn croissants should evenly cover the bottom of a 9X13-inch baking dish with no gaps (and might even be double layered in some spots).
Milk: the texture and consistency of the casserole will turn out best using 2% or whole milk. You could also sub in three cups of half-and-half for the milk and heavy cream.
Cheese: my preference is to use one cup shredded sharp cheddar and one cup shredded gruyere cheese, but you can use all cheddar or half cheddar/half Swiss or a combination of your choosing. Freshly grated cheese (as opposed to shredded cheese in the bag) will melt better and the breakfast casserole will be creamier and cheesier.
Serving: 1 serving, Calories: 403kcal, Carbohydrates: 23g, Protein: 17g, Fat: 27g, Saturated Fat: 14g, Cholesterol: 220mg, Sodium: 697mg, Fiber: 1g, Sugar: 7g

Recipe Source: inspired by this NYT recipe (I changed up almost everything: liquid to croissant ratios, number of eggs, flavors, etc)