Preheat the oven: Set to 375°F (190°C).
Use a 10-inch oven-safe skillet, preferably cast iron or stainless steel.
Crisp the bacon: Cook chopped bacon in the skillet over medium heat until crisp. Transfer to a plate and leave about 1 tablespoon of fat in the pan. If using sausage, crumble and cook until browned.
Sauté the vegetables: Add olive oil or butter if needed.
Cook onion (if using) for 2–3 minutes, then add bell pepper, zucchini, or mushrooms. Sauté until just tender, 3–5 minutes. Stir in garlic and cook 30 seconds.
Add spinach last and wilt briefly. Season with a pinch of salt and pepper.
Whisk the eggs: In a bowl, whisk eggs, heavy cream, salt, pepper, and smoked paprika until smooth and slightly frothy.
Combine in the skillet: Return bacon or sausage to the pan, scatter evenly. Pour the egg mixture over the vegetables.
Sprinkle cheese over the top, reserving a little for the last minute if desired.
Cook on the stove: Let the edges set over medium-low heat for 2–3 minutes without stirring. This helps the bottom firm up and prevents overcooking in the oven.
Bake: Move the skillet to the oven and bake for 10–14 minutes, until the center is just set and slightly wobbly. Avoid overbaking—it will continue to cook as it rests.
Finish and rest: Sprinkle with fresh herbs.
Let sit for 5 minutes before slicing into wedges. Serve warm or at room temperature.