Imagine slicing into a golden-topped casserole and finding layers of creamy ricotta swirled with wilted spinach, roasted cauliflower, and a velvety cream cheese base — all blanketed under a bubbling crust of melted mozzarella and parmesan. This Italian-inspired bake is the kind of dinner that makes you forget you are eating low-carb. Every forkful delivers rich, savory satisfaction with a whisper of garlic and Italian herbs that ties everything together beautifully.
With 46 grams of fat and only 8 grams of net carbs per generous serving, this casserole is a keto powerhouse. The combination of whole-milk ricotta, cream cheese, and mozzarella creates a fat-forward profile that keeps you in ketosis while delivering 26 grams of protein for sustained satiety. At roughly 74% of calories from fat, this dish hits the ideal ketogenic macro ratio without any tricks or unusual ingredients.
Best of all, this bake is specifically designed for meal prep. Assemble it on a Sunday evening, bake it once, and you have four hearty dinners ready to reheat throughout the week. It stores beautifully in the fridge for up to five days, and the flavors actually deepen as the ricotta and herbs meld together overnight. If you are looking for a hands-off, batch-friendly Italian dinner that satisfies like comfort food, this is your new go-to.
Ingredients (serves 4)
For the ricotta-spinach filling:
- 1 cup (250g) whole-milk ricotta cheese
- 4 oz (113g) cream cheese, softened
- 2 large eggs, lightly beaten
- 10 oz (285g) fresh baby spinach
- 2½ cups (285g) cauliflower florets, cut into small pieces
- 4 cloves garlic, minced
- 1 tbsp (3g) Italian seasoning
- ¼ tsp red pepper flakes
- ½ tsp fine sea salt
- ¼ tsp freshly ground black pepper
For cooking and topping:
- 3 tbsp (45ml) extra-virgin olive oil, divided
- 2 tbsp (28g) unsalted butter
- 1 cup (112g) shredded whole-milk mozzarella
- ½ cup (45g) finely grated Parmigiano-Reggiano
- 6–8 fresh basil leaves, for garnish
Instructions
Preheat and prep. Position a rack in the center of your oven and preheat to 375°F (190°C). Lightly grease a 9×9-inch (23×23cm) baking dish with 1 tablespoon of the olive oil and set aside.
Roast the cauliflower. Spread the cauliflower florets on a rimmed baking sheet, toss with 1 tablespoon of olive oil and a pinch of salt, and roast for 15 minutes until just tender and lightly golden on the edges. Remove and set aside. Keep the oven at 375°F.
Wilt the spinach. While the cauliflower roasts, heat the butter and remaining 1 tablespoon of olive oil in a large skillet over medium heat. Add the minced garlic and sauté for 30 seconds until fragrant — do not let it brown. Add the fresh spinach in batches, tossing with tongs until fully wilted, about 3–4 minutes. Season with the red pepper flakes and a pinch of salt. Transfer the spinach to a fine-mesh sieve or clean kitchen towel and press out as much liquid as possible. This step is critical — excess moisture will make the bake watery.
Make the ricotta filling. In a large mixing bowl, combine the ricotta, softened cream cheese, beaten eggs, Italian seasoning, salt, and pepper. Stir vigorously with a spatula until smooth and well blended. Fold in the squeezed spinach and the roasted cauliflower florets, distributing them evenly throughout the mixture.
Assemble the bake. Transfer the ricotta-spinach mixture into the prepared baking dish, spreading it into an even layer with the back of a spatula. Scatter the shredded mozzarella evenly across the top, then sprinkle the grated parmesan over the mozzarella in an even layer.
Bake until golden. Place the dish on the center rack and bake for 30–35 minutes, until the cheese topping is deeply golden and bubbling and the filling is set — a knife inserted into the center should come out clean. If you want extra browning on top, switch the oven to broil for the final 2 minutes, watching closely to prevent burning.
Rest and serve. Remove from the oven and let the bake rest for 10 minutes before slicing. This resting time allows the filling to firm up so slices hold together. Tear fresh basil leaves over the top just before serving. Cut into 4 equal portions.
Nutrition per Serving
| Nutrient | Amount |
|---|---|
| Calories | ~550 kcal |
| Fat | ~46g |
| Protein | ~26g |
| Total Carbs | ~11g |
| Fiber | ~3g |
| Net Carbs | ~8g |
Nutrition values are approximate and based on the stated ingredients using whole-milk ricotta, full-fat cream cheese, and whole-milk mozzarella.
Tips & Variations
Squeeze that spinach dry. This is the single most important step in the entire recipe. Watery spinach will turn your bake into a soggy mess. After wilting, place the spinach in a clean kitchen towel, roll it up, and wring it out over the sink. You should be able to extract at least 2–3 tablespoons of liquid. The drier your spinach, the firmer and more sliceable your finished bake will be.
Meal-prep and storage. Let the bake cool completely to room temperature, then slice into 4 portions and store in individual airtight containers in the fridge for up to 5 days. Reheat individual portions in the microwave for 2–3 minutes or in a 350°F (175°C) oven for 10–12 minutes until heated through. The casserole also freezes well — wrap portions tightly in plastic wrap and foil, then freeze for up to 2 months. Thaw overnight in the fridge before reheating.
Swap the vegetables. You can replace the cauliflower with diced zucchini (squeeze out moisture after salting for 10 minutes) or chopped artichoke hearts for a more Mediterranean twist. Chopped roasted red peppers also work beautifully, though they will add approximately 1–2 grams of net carbs per serving, so factor that into your daily count.
Watch for hidden carbs in ricotta. Not all ricotta is created equal on keto. Some brands add stabilizers or fillers that increase the carb count. Always check the label — look for whole-milk ricotta with no more than 2–3 grams of carbs per quarter-cup serving. Brands that list only milk, whey, vinegar, and salt are your best bet. Avoid any ricotta labeled "part-skim," which typically has more carbs and less fat.
Make it more indulgent. For an even richer version, stir 2 tablespoons of basil pesto into the ricotta filling before assembling. This adds healthy fats from olive oil and pine nuts while amplifying the Italian flavor. You can also replace the cream cheese with an equal amount of mascarpone for a silkier, slightly sweeter filling that feels downright luxurious.