The spinach can look perfectly dry on the outside and still leave a puddle in the bottom of the skillet. That’s the part that turns homemade creamed spinach thin instead of spoonable. I squeeze thawed frozen spinach firmly before it goes near the sauce, and that simple prep keeps the Parmesan cream thick enough to cling to every piece.
Frozen chopped spinach is a good fit here because it’s already cut small and cooks into the sauce quickly. I build the sauce first with butter, onion, garlic, flour, milk, and cream, then stir in the spinach and cheese once it’s thickened. The nutmeg stays in the background, giving the creamy Parmesan sauce a gentle warmth without making the dish taste sweet. Each bite is smooth, savory, and full of tender spinach.

Kitchen Note
Whisk the milk and cream into the flour mixture gradually rather than pouring them in all at once. I keep whisking until the sauce is smooth, then give it time to thicken and start simmering before adding the spinach.
Save this homemade creamed spinach with Parmesan for a creamy, stovetop side that starts with frozen spinach and comes together in one skillet.
Why a Little Spinach Water Can Thin the Whole Skillet
Frozen spinach holds more water than it seems to, especially after thawing. If that liquid goes into the skillet, it loosens the sauce just as the Parmesan is melting, and the finished spinach can turn soupy instead of creamy. The flour thickens the milk and cream, but it can’t make extra spinach water disappear instantly.
Thaw the spinach completely, then squeeze it firmly until no liquid runs out. You don’t need to dry the leaves into a compact ball; just press out the excess moisture so the sauce stays in charge. This is also why I stir the spinach in after the sauce has thickened and begun to simmer. The spinach warms through while the sauce keeps its body, rather than adding moisture before the base has had a chance to set up.
Chopped spinach also gives the finished dish a more even texture than large leaves. It spreads through the sauce instead of sitting in separate clumps, so each spoonful gets spinach and Parmesan cream together. Once the spinach is hot and the cheese has melted, take the skillet off the heat rather than letting it bubble away longer than needed.
What the Spinach, Cream, and Parmesan Each Bring

- Frozen chopped spinach — Choose plain chopped spinach, not a seasoned or sauced variety. Thaw it fully and squeeze it dry before cooking; this prep has more impact on the finished texture than the brand does. Fresh spinach isn’t a direct swap here because it starts at a different volume and releases moisture differently.
- Unsalted butter, onion, and garlic — Butter carries the softened onion and garlic into the sauce, while the onion adds a mild savory base. Finely chopped yellow onion softens within the short cooking time; a finely chopped shallot can stand in for it if that’s what you have, with a slightly sweeter result. Mince the garlic finely so it cooks quickly without leaving large sharp pieces.
- All-purpose flour — Flour thickens the milk and cream into a sauce that can coat the spinach. Stir it into the butter and softened aromatics and cook it for a minute before adding liquid; that brief cooking removes the raw-flour taste. For a gluten-free version, use a cup-for-cup gluten-free flour blend in the same amount.
- Whole milk and heavy cream — Whole milk gives the sauce enough body without making it heavy, and cream brings the richness that makes this a proper creamed side. Both should be plain and unsweetened. Lower-fat milk can work, but the sauce will taste less rich and may be a little thinner.
- Freshly grated Parmesan — Parmesan supplies saltiness and a savory edge as it melts into the sauce. Grate it finely so it disperses instead of leaving larger chewy shreds; a wedge grated at home gives the smoothest result. A well-aged wedge matters more than an expensive label, but skip flavored or shelf-stable cheese powders.
- Ground nutmeg — Nutmeg adds a quiet warmth that rounds out the dairy without taking over. Use a light hand and keep it finely ground so it blends evenly. It’s optional if you don’t care for that classic warm note.
Building a Smooth Parmesan Sauce Before the Spinach Goes In
Soften the onion without browning it
Melt the butter in a 12-inch skillet over medium heat, then add the finely chopped onion. Cook for 3 to 4 minutes, stirring occasionally, until it’s softened. You’re looking for tender, translucent pieces, not browned edges. If the onion starts to color, lower the heat so it softens before the butter gets too hot.
Cook the garlic and flour briefly
Stir in the minced garlic and cook for 30 seconds, stirring so it doesn’t sit against the pan. Add the flour and keep stirring for 1 minute; the mixture will look thick and paste-like. That minute cooks the flour while keeping the garlic from scorching. If the flour sticks in dry patches, keep stirring it into the butter mixture before adding any liquid.
Whisk the sauce until it thickens
Gradually whisk in the whole milk and heavy cream until the mixture looks smooth. Cook for 3 to 5 minutes, whisking often, until the sauce thickens and begins to simmer. Watch for a creamy consistency that coats the whisk rather than a thin milk-like liquid. Keep whisking around the edges of the skillet, where flour can cling and form lumps.
Fold in the spinach and finish with Parmesan
Stir in the squeezed-dry spinach, Parmesan, nutmeg, kosher salt, and black pepper. Cook for 3 to 5 minutes, stirring often, until the spinach is hot and the cheese has melted. The sauce should cling to the chopped leaves, with no separate pool of liquid collecting around the edge. Stop cooking once everything is hot; extended simmering can make the spinach lose its fresh, tender texture.
Easy Swaps for a Different Spin on Creamed Spinach
Make the skillet gluten-free
Replace the all-purpose flour with the same amount of a cup-for-cup gluten-free flour blend designed for baking and thickening. Whisk it into the butter mixture just as you would regular flour, then add the milk and cream gradually. The sauce may feel a touch less silky, but it still thickens and coats the spinach.
Use Pecorino Romano for a sharper finish
Swap the Parmesan for the same amount of finely grated Pecorino Romano. It melts into the sauce, but it tastes sharper and saltier, so the finished dish will have a more assertive cheese flavor. Taste before adding the full amount of kosher salt.
Make a dairy-free version
Use plant-based butter, unsweetened oat milk, an unsweetened oat-based cooking cream, and dairy-free Parmesan-style cheese in place of the dairy ingredients, using the same amounts. The flour still thickens the liquid, though plant-based cheeses vary in how they melt. Expect a milder, less buttery sauce than the original.
Storage and Reheating
- Refrigerator: Store covered for 3 to 4 days. The sauce will firm up as it chills, then loosen as it warms.
- Freezer: Freeze in an airtight container for up to 2 months for best quality. The cream sauce may separate and the spinach may release water after thawing, so the texture won’t be quite as smooth.
- Reheating: Warm it in a skillet over low heat, stirring often, until it reaches 165°F throughout. Avoid a hard boil, which can make the dairy sauce separate.
Questions That Come Up With Homemade Creamed Spinach

Homemade Creamed Spinach with Parmesan Cheese
Ingredients
Equipment
Method
- Melt the butter in a 12-inch skillet over medium heat.
- Add the onion and cook for 3 to 4 minutes, stirring occasionally, until softened.
- Add the garlic and cook for 30 seconds, stirring.
- Stir in the flour and cook for 1 minute.
- Gradually whisk in the milk and heavy cream until smooth.
- Cook for 3 to 5 minutes, whisking often, until the sauce thickens and begins to simmer.
- Stir in the spinach, Parmesan, nutmeg, salt, and pepper.
- Cook for 3 to 5 minutes, stirring often, until the spinach is hot and the cheese has melted.