Preheat the oven: Set to 350°F (175°C).
Grease a 9x13-inch baking dish with butter or olive oil.
Prep the protein: Cook sausage in a skillet over medium heat until browned and crumbled. If using bacon, cook until crisp and chop. Drain excess grease if needed.
Sauté the veggies: In the same pan, add a little fat if needed and sauté chopped onion, bell pepper, and mushrooms until soft.
Add spinach last and cook just until wilted. Season lightly with salt and pepper.
Whisk the eggs: In a large bowl, whisk eggs with heavy cream. Add 1 teaspoon salt, 1/2 teaspoon black pepper, 1/2 teaspoon garlic powder, and 1/2 teaspoon onion powder.
For a little warmth, add 1/2 teaspoon smoked paprika or a pinch of red pepper flakes.
Layer the casserole: Spread the cooked sausage or bacon evenly in the greased dish. Top with the sautéed veggies. Sprinkle about two-thirds of the shredded cheese over the top.
Add egg mixture: Pour the egg and cream mixture evenly over the layers.
If using cream cheese, dot small cubes across the surface. Finish with the remaining shredded cheese.
Bake: Place the casserole in the oven and bake for 30–40 minutes, until the center is set and the top is lightly golden. A knife inserted in the center should come out mostly clean.
Rest and slice: Let it rest for 10 minutes before slicing.
This helps it set and makes serving cleaner.
Garnish and serve: Sprinkle with chopped chives or parsley. Serve warm with a side of avocado or a crisp green salad if you like.