Crave-Worthy High-Protein Turkey Meatballs with Zucchini Noodles
Juicy turkey meatballs in a light cherry tomato sauce, served over garlicky zucchini noodles. 40g of protein, ready in 30 minutes — and you won’t miss the pasta.
This is the low-carb dinner that doesn’t feel like a compromise. Lean ground turkey meatballs are seasoned with Parmesan, garlic, and fresh herbs, then pan-seared until golden. Simmered in a quick cherry tomato sauce with basil, then served over tender zucchini noodles (zoodles) that soak up all the delicious flavors. With 40g of protein per serving, it’s satisfying, nutritious, and ready faster than takeout.
Why You’ll Love This Recipe
Ingredients & Substitutions
Simple ingredients, incredible flavor. Here’s what you’ll need — and easy swaps.
| Ingredient | Why It Matters | Easy Swap |
|---|---|---|
| Lean ground turkey (500g / 1.1 lb) Lean protein base | 93/7 blend keeps meatballs moist without excess fat.判 | Ground chicken, lean ground beef (90/10), or plant-based crumbles.判 |
| Parmesan cheese (50g / ½ cup) Flavor & moisture | Adds umami and helps keep meatballs tender. | Pecorino Romano, nutritional yeast (vegan), or extra breadcrumbs. |
| Panko breadcrumbs (30g / ¼ cup) Texture binder | Light, airy crumbs keep meatballs tender, not dense. | Almond flour (keto), crushed pork rinds, or gluten-free panko. |
| Zucchini (4 medium, about 800g) The “noodles” | Spiralized into low-carb pasta alternative. | Yellow squash, pre-spiralized zoodles from store, or spaghetti squash. |
| Cherry tomatoes (300g / 2 cups) Quick sauce | Sweet, burst-in-your-mouth tomatoes make a light sauce. | Canned crushed tomatoes (1 cup), or chopped fresh Roma tomatoes. |
| Fresh basil + garlic Aromatics | The foundation of Italian flavor. | Dried basil (1 tsp) and garlic powder (½ tsp) in a pinch. |
Step-by-Step Instructions (30 minutes)
Make the meatballs first, then the sauce, then the zoodles — they all come together beautifully.
- 1Spiralize the zucchini. Use a spiralizer or julienne peeler to create zucchini noodles. Place them in a colander, sprinkle with salt, and let sit for 10 minutes. Then squeeze out excess moisture (this prevents soggy zoodles).Tip: No spiralizer? Use a vegetable peeler to make wide ribbons, or buy pre-spiralized zucchini from the store.
- 2Make the turkey meatballs. In a large bowl, combine ground turkey, grated Parmesan, panko, egg, minced garlic (2 cloves), dried oregano, salt, and pepper. Mix gently with your hands until just combined — don’t overmix or meatballs will be tough. Form into 20-24 small meatballs (about 1.5 inches).
- 3Brown the meatballs. Heat 1 tablespoon olive oil in a large skillet over medium-high heat. Add meatballs in a single layer (work in batches if needed). Cook for 2-3 minutes per side, until golden brown. They don’t need to be cooked through yet — they’ll finish in the sauce. Remove and set aside.
- 4Make the cherry tomato sauce. In the same skillet, add 1 more tablespoon olive oil. Add 3 minced garlic cloves, sauté for 30 seconds. Add cherry tomatoes, salt, and pepper. Cook for 3-4 minutes, stirring occasionally, until tomatoes start to burst and release their juices. Crush some tomatoes with the back of a spoon.
- 5Simmer the meatballs in sauce. Return meatballs to the skillet. Add ¼ cup water or chicken broth, and a handful of fresh basil. Cover and simmer for 5-7 minutes, until meatballs are cooked through (165°F / 74°C internal temperature) and sauce has thickened slightly.
- 6Cook the zucchini noodles. While meatballs simmer, heat a separate dry skillet over medium-high heat. Add the squeezed zucchini noodles and cook for 1-2 minutes, tossing constantly, just until heated through but still slightly crisp. Do not overcook — zoodles get watery and limp quickly.
- 7Assemble and serve. Divide zucchini noodles among bowls. Top with turkey meatballs and cherry tomato sauce. Garnish with fresh basil, extra Parmesan cheese, and a drizzle of olive oil. Serve immediately.Pro tip: For the juiciest turkey meatballs ever, don’t skip the panko and egg — they’re essential for moisture. Also, use your hands to gently mix the ingredients (overmixing = tough meatballs). For extra flavor, add a pinch of red pepper flakes to the sauce for a subtle kick. And remember: zoodles cook in 1-2 minutes — any longer and they become watery.
Storage & Meal-Prep Tips
Refrigerator: Cooked meatballs and sauce keep for up to 4 days in an airtight container. Store zucchini noodles separately (uncooked is best) — cook them fresh when serving. Reheat meatballs and sauce in a skillet or microwave, then toss with freshly cooked zoodles.
Freezer: These meatballs freeze beautifully! Place cooked, cooled meatballs on a baking sheet and freeze until solid, then transfer to a freezer bag. Freeze for up to 3 months. Thaw overnight in the refrigerator and reheat in the sauce. Do not freeze zucchini noodles — they’ll become mushy.
Meal-prep strategy: Make a double batch of meatballs and freeze half. Prep your sauce and store it separately. Spiralize zucchini at the beginning of the week and store in an airtight container with a paper towel to absorb moisture. When ready to eat, cook zoodles fresh (it takes 2 minutes!).
Serving Suggestions & Variations
This dish is delicious on its own, but here are some ways to change it up.
Add red pepper flakesA pinch of heat takes this dish to the next level.Make it creamyStir in ¼ cup heavy cream or coconut milk at the end.Add spinachToss in 2 cups of fresh spinach when simmering the sauce.Over real pastaServe over regular spaghetti if you’re not low-carb.Pesto twistAdd 2 tablespoons of pesto to the sauce for extra flavor.Mushroom loversSauté sliced mushrooms with the garlic before adding tomatoes.Turkey Meatballs with Zucchini Noodles15 minPrep15 minCook30 minTotal4ServingsIngredients (Meatballs)- 500g (1.1 lb) lean ground turkey
- ½ cup (50g) grated Parmesan cheese
- ¼ cup (30g) panko breadcrumbs
- 1 large egg
- 2 cloves garlic, minced
- 1 tsp dried oregano
- Salt and pepper to taste
Ingredients (Sauce & Zoodles)- 4 medium zucchini (about 800g)
- 300g (2 cups) cherry tomatoes
- 3 cloves garlic, minced
- 2 tbsp olive oil, divided
- ¼ cup water or chicken broth
- Fresh basil, extra Parmesan for garnish
Instructions- 1 Spiralize zucchini. Salt, let sit 10 min, then squeeze out excess moisture.
- 2 Mix turkey, Parmesan, panko, egg, garlic, oregano, salt, pepper. Form 20-24 meatballs.
- 3 Brown meatballs in oil (2-3 min per side). Remove and set aside.
- 4 Sauté garlic, add tomatoes. Cook until tomatoes burst (3-4 min).
- 5 Return meatballs to skillet, add water/broth and basil. Simmer 5-7 min.
- 6 In dry skillet, cook zoodles 1-2 min until just heated through.
- 7 Divide zoodles, top with meatballs and sauce. Garnish with basil and Parmesan.
Nutrition (per serving)Notes & VariationsGluten-free: Use gluten-free panko or almond flour in the meatballs. Skip the Parmesan or use a gluten-free version — most aged Parmesan is naturally gluten-free.
Dairy-free: Omit the Parmesan or use nutritional yeast. The meatballs will still be delicious with just panko and egg. Add 1 tbsp of tomato paste to the sauce for extra umami.
Make it spicy: Add ½ teaspoon red pepper flakes to the sauce along with the garlic.
Higher protein: Add ½ cup of ricotta cheese to the meatball mixture — it adds 10g more protein and makes them extra tender.
Frequently Asked Questions
How do I prevent my turkey meatballs from being dry?The secret is moisture — don’t skip the egg and panko (they act as binders and retain moisture). Also, avoid overmixing the meat (mix just until combined) and don’t overcook them (use a meat thermometer: 165°F/74°C is perfect). Adding grated Parmesan also adds fat and flavor that keeps them juicy. For even moister meatballs, add 2 tablespoons of grated onion or zucchini — the extra moisture works wonders.Can I bake the meatballs instead of pan-frying?Absolutely! Place formed meatballs on a parchment-lined baking sheet. Bake at 400°F (200°C) for 12-15 minutes, until browned and cooked through. Then add them directly to the simmering sauce. Baking is great for meal-prep since you can cook a large batch at once.Why are my zucchini noodles watery?The salt-drain step is crucial! After spiralizing, toss zoodles with salt, let them sit in a colander for 10 minutes, then squeeze out as much liquid as possible using paper towels or a clean kitchen towel. Also, cook them very quickly (1-2 minutes maximum) over high heat — any longer and they release more water. Don’t crowd the pan; cook in batches if needed.Can I use regular pasta instead of zucchini noodles?Yes! This recipe is delicious over regular spaghetti, linguine, or any pasta you love. Cook the pasta according to package directions and toss with the meatballs and sauce. The nutrition values will be different (higher carbs), but the flavor is still incredible.How do I spiralize zucchini without a spiralizer?Use a vegetable peeler to create wide, fettuccine-like ribbons. You can also use a julienne peeler or a mandoline with a julienne blade. In a pinch, slice the zucchini very thinly lengthwise with a knife, then stack the slices and cut into thin strips. Pre-spiralized zucchini is also available in most grocery stores — look for “zoodles” in the produce section.What readers are saying (3 reviews)JJessica R.May 5, 2025★★★★★These are the best turkey meatballs I’ve ever made — so juicy and flavorful! The zoodles were surprisingly satisfying. My husband didn’t even miss the pasta. Definitely going into our regular rotation.MMichael T.May 2, 2025★★★★★As someone on a low-carb diet, dinners like this are a lifesaver. 40g of protein, only 12g carbs, and it actually tastes amazing. The cherry tomato sauce is so fresh and delicious. I’ll make a double batch next time.SSophia L.April 29, 2025★★★★★Great recipe! The meatballs were perfect. I found the zoodles a bit watery even after salting — next time I’ll cook them even less, maybe just 30 seconds. The sauce is incredible though, and my kids ate everything. Will make again!
Leave a reviewThank you! Your review has been added below.