
Creamy Chicken Ricotta Meatballs with Spinach Alfredo tastes rich, cheesy, and garlicky with tender meatballs that stay juicy in a silky cream sauce. This recipe works well for busy weeknights or cozy date nights and takes about 45 minutes from start to finish. I tested this on my picky neighbor’s kids and they asked for seconds before I even sat down.
Why You Should Try This Creamy Chicken Ricotta Meatballs with Spinach Alfredo
These chicken ricotta meatballs stay soft and moist, not dry or rubbery like some poultry meatballs. The ricotta and Parmesan add a mild, cheesy flavor that pairs perfectly with the creamy spinach Alfredo sauce.
You cook everything in one skillet, so cleanup stays easy and weeknight friendly. Leftovers reheat beautifully, so you get a great lunch the next day without extra effort.
“These Creamy Chicken Ricotta Meatballs with Spinach Alfredo taste like restaurant comfort food but come together on a random Tuesday night. ★★★★★”
Ingredients You’ll Need
For the chicken ricotta meatballs
- 1 ½ pounds ground chicken (use ground chicken thigh for extra tenderness, or a 50/50 mix of breast and thigh)
- ¾ cup whole milk ricotta cheese (avoid fat free, it tastes chalky and dries out the meatballs)
- ½ cup finely grated Parmesan cheese (Parmigiano Reggiano or a good domestic brand, skip the green can if possible)
- ½ cup plain breadcrumbs (panko or regular; use gluten free crumbs if needed)
- 1 large egg
- 3 cloves garlic, finely minced or grated
- 2 tablespoons finely chopped fresh parsley (or 1 tablespoon dried parsley)
- 1 teaspoon Italian seasoning
- ¾ teaspoon kosher salt (use ½ teaspoon if your Parmesan tastes very salty)
- ½ teaspoon black pepper
- 2 tablespoons olive oil, for browning
For the spinach Alfredo sauce
- 3 tablespoons unsalted butter
- 3 cloves garlic, minced
- 2 tablespoons all purpose flour (use a 1:1 gluten free blend if needed)
- 2 cups chicken broth (low sodium so you control the salt)
- 1 ½ cups heavy cream (or half and half for a slightly lighter sauce)
- 1 cup finely grated Parmesan cheese
- 3 cups fresh baby spinach, roughly chopped (or 10 ounces frozen spinach, thawed and squeezed dry)
- ½ teaspoon kosher salt, plus more to taste
- ¼ teaspoon black pepper
- ¼ teaspoon red pepper flakes (optional, for a little heat)
Pasta and garnish
- 12 ounces fettuccine, linguine, or your favorite pasta (short cuts like penne work great with meatballs)
- Extra grated Parmesan for serving
- Fresh parsley or basil, chopped, for garnish
Pantry shortcuts and substitutions
- Use store bought chicken meatballs in a pinch and simmer them in the sauce until hot.
- Swap spinach with chopped kale or Swiss chard and simmer a few extra minutes until tender.
- Use pre minced garlic from a jar if that fits your schedule, though fresh garlic gives brighter flavor.
- Replace heavy cream with evaporated milk for a lighter but still creamy sauce.
Equipment list
- Large mixing bowl
- Sheet pan or plate for shaping meatballs
- Large nonstick or stainless skillet, at least 12 inches wide
- Tongs or a spatula
- Medium saucepan for pasta
- Whisk
- Measuring cups and spoons
Tips & Tricks
- Chill the meatball mixture for 15 minutes so it firms up and shapes easily.
- Oil your hands lightly when you roll the meatballs to prevent sticking and keep them smooth.
- Keep meatballs small, about 1 to 1 ½ inches, so they cook through quickly and stay tender.
- Brown the meatballs in batches so you avoid crowding the pan and get better color and flavor.
- Use low heat when you add Parmesan to the sauce so it melts smoothly and does not clump.
- Thin the Alfredo sauce with a splash of hot pasta water if it looks too thick.
- Salt the pasta water generously so the noodles taste seasoned before they hit the sauce.
- Fold the spinach in at the end so it stays bright and does not overcook.
How to Make Creamy Chicken Ricotta Meatballs with Spinach Alfredo
Mix the meatball mixture
- Add ground chicken, ricotta, Parmesan, breadcrumbs, egg, garlic, parsley, Italian seasoning, salt, and pepper to a large bowl.
- Stir gently with a fork or your hands until everything combines, but stop before the mixture turns dense.
- Cover the bowl and chill the mixture for 15 to 20 minutes while you start the pasta water.
Shape the meatballs
- Line a plate or small tray with parchment or lightly oil it.
- Scoop about 2 tablespoons of mixture per meatball and roll into balls about 1 to 1 ½ inches wide.
- Set the meatballs on the tray and keep them in a single layer so they do not stick together.
Brown the meatballs
- Heat the olive oil in a large skillet over medium heat.
- Add half the meatballs in a single layer and cook 3 to 4 minutes per side until they turn golden and mostly cooked through.
- Transfer the browned meatballs to a plate and repeat with the remaining batch, adding a little more oil if the pan looks dry.
Cook the pasta
- Bring a large pot of salted water to a boil while the meatballs brown.
- Add the pasta and cook until al dente according to package directions.
- Reserve 1 cup of the starchy pasta water, then drain the pasta and set it aside.
Start the spinach Alfredo base
- Reduce the skillet heat to medium low and add the butter to the same pan you used for the meatballs.
- Stir in the garlic and cook about 30 seconds until it smells fragrant and just turns golden.
- Sprinkle in the flour and whisk for 1 minute to form a smooth paste that looks slightly bubbly.
Build the creamy sauce
- Slowly pour in the chicken broth while you whisk, smoothing out any lumps.
- Add the heavy cream and keep whisking until the sauce looks smooth and starts to thicken, about 3 to 5 minutes.
- Stir in the Parmesan, salt, black pepper, and red pepper flakes and keep the heat low so the cheese melts gently.
Add spinach and meatballs
- Stir the chopped spinach into the hot Alfredo sauce until it wilts and turns tender, about 2 minutes.
- Nestle the browned chicken ricotta meatballs into the sauce in a single layer.
- Cover the skillet and simmer on low heat for 5 to 7 minutes until the meatballs cook through and reach 165°F in the center.
Toss with pasta and finish
- Add the cooked pasta directly into the skillet with the spinach Alfredo and meatballs.
- Toss gently with tongs so the noodles coat in sauce and the meatballs stay intact.
- Splash in a little reserved pasta water if the sauce looks too thick, then taste and adjust salt and pepper.
- Top with extra Parmesan and fresh parsley or basil before serving.
What to Serve with Creamy Chicken Ricotta Meatballs with Spinach Alfredo
This dish already brings protein, carbs, and greens, so you only need a simple side. A crisp green salad with lemony dressing cuts through the richness and balances the creamy Alfredo. Garlic bread or warm baguette slices help scoop up every bit of sauce. A cold sparkling water with citrus or a light iced tea pairs nicely and keeps the meal kid friendly.
Storage Options
- Store leftover Creamy Chicken Ricotta Meatballs with Spinach Alfredo in an airtight container in the fridge for up to 3 days.
- Reheat gently on the stove over low heat with a splash of milk or broth, stirring often so the sauce turns smooth again.
- Freeze the cooked meatballs and sauce without the pasta for up to 2 months, then thaw in the fridge overnight.
- Cook fresh pasta when you reheat frozen meatballs and sauce so the texture stays firm and not mushy.

Creamy Chicken Ricotta Meatballs with Spinach Alfredo
Ingredients
Instructions
- Add the ground chicken, ricotta, Parmesan, breadcrumbs, egg, garlic, parsley, Italian seasoning, salt, and black pepper to a large mixing bowl.
- Gently mix with a fork or your hands just until combined, being careful not to compact the mixture.
- Cover and chill the mixture in the refrigerator for 15 to 20 minutes to firm up slightly.
- Line a plate or small tray with parchment paper or lightly oil it.
- Scoop about 2 tablespoons of the mixture for each meatball and roll into balls about 1 to 1 1/2 inches wide.
- Arrange the meatballs in a single layer on the prepared tray.
- Heat the olive oil in a large skillet over medium heat.
- Add about half of the meatballs in a single layer and cook for 3 to 4 minutes per side until golden and mostly cooked through.
- Transfer the browned meatballs to a plate and repeat with the remaining batch, adding a little more oil if needed.
- While the meatballs brown, bring a large pot of salted water to a boil.
- Add the pasta and cook according to package directions until al dente.
- Reserve about 1 cup of the starchy pasta water, then drain the pasta and set aside.
- Reduce the heat under the skillet to medium-low and add the butter to the same pan used for the meatballs.
- Stir in the minced garlic and cook for about 30 seconds until fragrant and just turning golden.
- Sprinkle in the flour and whisk for about 1 minute to form a smooth, slightly bubbly paste.
- Slowly pour in the chicken broth while whisking constantly to smooth out any lumps.
- Add the heavy cream and continue whisking until the sauce is smooth and begins to thicken, 3 to 5 minutes.
- Stir in the Parmesan, salt, black pepper, and red pepper flakes, keeping the heat low so the cheese melts gently.
- Stir the chopped spinach into the hot Alfredo sauce and cook until just wilted and tender, about 2 minutes.
- Nestle the browned chicken ricotta meatballs into the sauce in a single layer.
- Cover the skillet and simmer on low heat for 5 to 7 minutes, until the meatballs are cooked through and reach 165°F in the center.
- Add the cooked pasta directly into the skillet with the spinach Alfredo sauce and meatballs.
- Toss gently with tongs until the pasta is well coated and the meatballs stay intact.
- If the sauce seems too thick, loosen it with a splash of the reserved pasta water, then taste and adjust salt and pepper.
- Serve topped with extra grated Parmesan and chopped fresh parsley or basil.
Notes
Approximate per serving (1/6 of recipe): 710 calories; fat 42 g; saturated fat 20 g; carbohydrates 44 g; fiber 3 g; sugars 5 g; protein 39 g; sodium 980 mg. Values are estimates and will vary based on brands, exact ingredients, and portion size.
