Here is my favorite mushroom frittata recipe, with fluffy eggs, earthy mushrooms, fresh spinach, and a hint of feta cheese and rosemary that makes it perfect for breakfast or brunch.
This frittata is what I make when I want something filling but don’t have a lot of time in the morning. It’s easy to throw together, and you can use whatever vegetables you have in the fridge. Plus, it tastes just as good the next day cold, which makes it great for meal prep.

Why You’ll Love This Mushroom Frittata
- Quick and easy – This frittata comes together in under 35 minutes, making it perfect for busy mornings or when you need a fast dinner solution.
- High-protein breakfast – With 8 eggs as the base, you’re getting a protein-packed meal that’ll keep you full and energized throughout the morning.
- Versatile for any meal – Whether you’re serving it for breakfast, brunch, lunch, or a light dinner, this frittata works any time of day and tastes great hot or at room temperature.
- Healthy and nutritious – Loaded with spinach, mushrooms, and onions, you’re getting plenty of vegetables in every slice without even trying.
- Simple ingredients – Everything you need is probably already in your fridge and pantry, so no special shopping trip required.
What Kind of Mushrooms Should I Use?
The great news about making a mushroom frittata is that pretty much any mushroom variety will work well here. Button mushrooms or cremini mushrooms are the most common choices and they’re usually the most budget-friendly option at the grocery store. If you want to get a bit fancier, shiitake or oyster mushrooms add a deeper, earthier flavor that really takes this dish up a notch. You can even use a mix of different mushrooms if you want more complexity in taste and texture. Just make sure to slice them evenly so they cook at the same rate, and don’t skip the step of cooking them until they release their moisture – nobody wants a watery frittata!
Options for Substitutions
This frittata is super forgiving and works well with different ingredients you might have on hand:
- Eggs: Eggs are the base of a frittata, so you’ll want to stick with them for this recipe. However, you can use a mix of whole eggs and egg whites if you’re looking to cut calories – try 5 whole eggs plus 6 egg whites.
- Milk: Any milk works here – whole, 2%, skim, or even non-dairy options like almond or oat milk. Heavy cream will make it richer, while water can work in a pinch though it won’t be quite as creamy.
- Mushrooms: Use whatever mushrooms you like or have available – button, cremini, shiitake, or portobello all work great. Just slice them to similar sizes so they cook evenly.
- Spinach: Fresh kale, arugula, or Swiss chard make good swaps for spinach. If using frozen spinach, thaw and squeeze out excess water first – you’ll need about 1 cup frozen to replace the fresh.
- Feta cheese: Goat cheese, shredded cheddar, gruyere, or parmesan all work nicely here. Each will give you a slightly different flavor profile but will be just as tasty.
- Rosemary: Fresh thyme, oregano, or basil can replace rosemary if that’s what you have. Use about the same amount, or try 1 teaspoon of dried herbs instead.
Watch Out for These Mistakes While Cooking
The biggest mistake when making frittata is cranking the heat too high on the stovetop, which causes the bottom to burn before the eggs are fully set – keep it at medium heat and be patient during that initial 4-5 minute cook time.
Another common error is skipping the resting period after baking, but those 5 minutes are crucial for letting the eggs finish cooking through and making the frittata much easier to slice cleanly.
Don’t forget to use an oven-safe skillet (cast iron works great), and if your mushrooms are releasing too much water, cook them a bit longer before adding the eggs to avoid a watery frittata.
For extra flavor, try sautéing your vegetables until they’re slightly caramelized rather than just softened, which adds a deeper taste to the final dish.
What to Serve With Mushroom Frittata?
A mushroom frittata is perfect for breakfast, brunch, or even a light dinner, and it pairs really well with a simple side salad dressed with lemon vinaigrette to balance out the richness of the eggs and feta. I love serving it with some crusty bread or toasted baguette slices on the side for scooping up any extra bits. If you’re making it for brunch, roasted potatoes or hash browns make a great addition, and fresh fruit like berries or melon adds a nice sweet contrast to the savory frittata. You can also serve it alongside some crispy bacon or breakfast sausage if you want to make it a heartier meal.
Storage Instructions
Store: Leftover frittata keeps really well in the fridge for up to 4 days in an airtight container. I actually think it tastes great cold straight from the fridge for a quick breakfast or lunch, but you can definitely warm it up if you prefer.
Freeze: You can freeze individual slices of frittata for up to 2 months. Just wrap each piece in plastic wrap, then put them all in a freezer bag. This way you can grab just what you need for a quick meal without thawing the whole thing.
Reheat: Warm up your frittata in the microwave for about 30-45 seconds, or pop it in a 350°F oven for 10 minutes if you want to heat up multiple slices. The oven method keeps it from getting rubbery, which sometimes happens in the microwave.
| Preparation Time | 15-20 minutes |
| Cooking Time | 10-15 minutes |
| Total Time | 25-35 minutes |
| Level of Difficulty | Easy |
| Servings | 4 servings |
Estimated Nutrition
Estimated nutrition for the whole recipe (without optional ingredients):
- Calories: 520-600
- Protein: 35-40 g
- Fat: 34-38 g
- Carbohydrates: 20-25 g
Ingredients
For the egg mixture:
- 8 eggs (I always use Eggland’s Best for the most vibrant yolks)
- 1/3 cup milk (at room temperature to ensure even baking)
- 3/4 tsp salt
- 1/2 tsp pepper
- 1/4 cup feta cheese
- 1/8 tsp ground nutmeg
For the vegetable base:
- 1 tbsp olive oil
- 2 cups mushrooms (sliced into 1/4-inch thick pieces for uniform browning)
- 1/2 cup red onion
- 1 garlic clove (freshly minced for best aroma)
- 3 cups spinach
- 2 tsp rosemary (I prefer Morton & Bassett for the best flavor and aroma)
- 1/4 tsp smoked paprika
Step 1: Prepare the Egg Mixture and Preheat
- 8 eggs
- 1/3 cup milk
- 3/4 tsp salt
- 1/2 tsp pepper
- 1/8 tsp ground nutmeg
- 1/4 tsp smoked paprika
Preheat your oven to 425°F.
While it heats, crack the eggs into a bowl and whisk together with room temperature milk, salt, pepper, nutmeg, and smoked paprika until well combined and slightly frothy.
This ensures the eggs cook evenly and creates a lighter, more tender frittata.
Set the egg mixture aside at room temperature.
Step 2: Sauté the Vegetables and Build Flavor
- 1 tbsp olive oil
- 2 cups mushrooms
- 1/2 cup red onion
- 1 garlic clove
Heat olive oil in a 10-inch oven-safe skillet over medium-high heat.
Add the sliced mushrooms and minced garlic, cooking for 2-3 minutes until the mushrooms begin to brown and release their moisture—I like to let them get a little color on the edges for deeper flavor.
Add the diced red onion and cook for another 1-2 minutes until softened.
The mushrooms should be golden and the aromatics fragrant.
Step 3: Wilt the Spinach and Finish the Filling
- 3 cups spinach
- 2 tsp rosemary
Add the spinach and rosemary to the skillet and stir constantly for 30-60 seconds until the spinach is just wilted but still bright green.
This quick cooking preserves the spinach’s color and nutrition while infusing the dish with the rosemary’s aromatic oils.
Once wilted, distribute the vegetables evenly across the skillet to create a uniform base for the eggs.
Step 4: Set the Eggs on the Stovetop
- egg mixture from Step 1
- sautéed vegetables from Step 3
- 1/4 cup feta cheese
Reduce heat to medium and pour the egg mixture from Step 1 evenly over the sautéed vegetables from Step 3.
Let it cook undisturbed for 4-5 minutes until the edges and bottom begin to set but the center is still slightly wet.
You should see the edges pulling away from the sides of the skillet.
Sprinkle the feta cheese over the top once the edges start to set.
Step 5: Finish Baking and Rest
Transfer the skillet to the preheated 425°F oven and bake for 5-7 minutes until the top is set but still slightly moist in the very center—the residual heat will continue cooking it as it rests.
Remove from the oven and let the frittata rest for 5 minutes before slicing.
This resting period allows the eggs to set completely and makes serving much cleaner.

Classic Mushroom Frittata
Ingredients
Method
- Preheat your oven to 425°F. While it heats, crack the eggs into a bowl and whisk together with room temperature milk, salt, pepper, nutmeg, and smoked paprika until well combined and slightly frothy. This ensures the eggs cook evenly and creates a lighter, more tender frittata. Set the egg mixture aside at room temperature.
- Heat olive oil in a 10-inch oven-safe skillet over medium-high heat. Add the sliced mushrooms and minced garlic, cooking for 2-3 minutes until the mushrooms begin to brown and release their moisture—I like to let them get a little color on the edges for deeper flavor. Add the diced red onion and cook for another 1-2 minutes until softened. The mushrooms should be golden and the aromatics fragrant.
- Add the spinach and rosemary to the skillet and stir constantly for 30-60 seconds until the spinach is just wilted but still bright green. This quick cooking preserves the spinach's color and nutrition while infusing the dish with the rosemary's aromatic oils. Once wilted, distribute the vegetables evenly across the skillet to create a uniform base for the eggs.
- Reduce heat to medium and pour the egg mixture from Step 1 evenly over the sautéed vegetables from Step 3. Let it cook undisturbed for 4-5 minutes until the edges and bottom begin to set but the center is still slightly wet. You should see the edges pulling away from the sides of the skillet. Sprinkle the feta cheese over the top once the edges start to set.
- Transfer the skillet to the preheated 425°F oven and bake for 5-7 minutes until the top is set but still slightly moist in the very center—the residual heat will continue cooking it as it rests. Remove from the oven and let the frittata rest for 5 minutes before slicing. This resting period allows the eggs to set completely and makes serving much cleaner.
