Zucchini Meatballs Recipe
Aug 15, 2016, Updated Sep 10, 2024
This post may contain affiliate links. Please read our disclosure policy.
This melt-in-your-mouth zucchini meatballs recipe makes moist and flavorful vegetarian meatballs packed with fresh summer zucchini and melty ricotta cheese. Toss them with savory tomato sauce for a delicious meatless dinner!
For even more zucchini goodness, try my zucchini casserole or a fresh zucchini salad. And if you’re still craving homemade meatballs, try my original vegetarian meatballs next.

These vegetarian ricotta zucchini meatballs are an easy, meatless alternative to my juicy baked meatballs recipe! Prepared with freshly grated zucchini, creamy ricotta cheese, breadcrumbs, and herbs, these Italian-style “meatballs” are packed with flavor and super tender, perfect for tossing with tomato sauce for a quick and delicious dinner.
Why I Know You’ll Love These Meatless Zucchini Meatballs
- Melt-in-your-mouth texture. Fresh zucchini adds plenty of flavor and moisture to these vegetarian meatballs. They’re crispy outside, while ricotta makes the texture light and creamy inside.
- Made for Meatless Monday. I love serving ricotta zucchini balls over pasta as an alternative to traditional meatballs. Just add a side of garlic breadsticks and salad.
- Versatile. Serve these zucchini meatballs in a meat-free meatball sub, or pair them with dipping sauce for an easy appetizer.

Recipe Ingredients
You’ll need to gather the following ingredients to make these tender zucchini meatballs from scratch. Scroll to the printable recipe card for the full amounts and recipe details.
- Zucchini – Choose fresh, ripe zucchini that are free from soft spots and blemishes. Even better if they’re from the garden! Grate them using a box grater and drain the zucchini to draw out excess moisture. See the section further on for details.
- Onion and Garlic – Also finely grated and minced. If you don’t have fresh garlic, substitute 1 tablespoon of jarred garlic per clove.
- Ricotta Cheese – Ricotta is a mild Italian whey cheese with a creamy consistency. Cottage cheese or mascarpone makes a good substitute.
- Parmesan Cheese – Freshly grated. You could also use pecorino.
- Egg – Together with the breadcrumbs, egg helps bind the ingredients just as it does in traditional meatball recipes. This ensures the zucchini balls hold their shape.
- Breadcrumbs – You can use Panko breadcrumbs or regular breadcrumbs, either seasoned or plain. If you’re using seasoned breadcrumbs, consider using slightly less Italian seasoning later on.
- Seasonings – I use Italian seasoning, salt, and freshly cracked black pepper. Substitute the Italian blend with individual dried herbs, like basil, thyme, and oregano, if needed.
- Fresh Basil – I love adding freshly chopped basil to brighten up the flavors and add a pop of color to the mix.
- Coconut Oil for Frying – For a golden, crispy exterior. You can substitute coconut oil with vegetable oil, or another cooking oil with a high smoke point, like canola oil or avocado oil.
You’ll Need to Drain the Zucchini
Zucchini has a high water content. For this reason, I highly recommend draining the zucchini and onion well after grating to avoid soggy meatballs.
To drain the zucchini, bundle the grated veggies in a cheesecloth or paper towel. Twist, and squeeze out as much liquid as you can before adding the zucchini to the meatball mixture.

What Sauces Pair Well With Zucchini Meatballs?
A delicious sauce is the perfect finishing touch! I like to simmer my meatballs in a zesty tomato sauce, like marinara, to absorb all the rich flavors. You can pair these ricotta zucchini meatballs with any sauce you’d like, though I find they taste best with lighter sauces. These are some easy homemade options:
These vegetarian meatballs would also taste great cooked in the creamy gravy from my Swedish meatballs recipe. Just swap the chicken broth in the recipe with vegetable broth.
Recipe Tips and Variations
- Drain the zucchini and onions. As mentioned, you’ll want to wring out the extra moisture from the grated zucchini (and also the grated onions) before you make your meatball mixture. Too much liquid will make the zucchini balls soggy.
- Avoid dense meatballs. Try not to overwork the zucchini ricotta mixture. Even made without meat, overmixing can make the meatballs dense and tough.
- Substitute the cheese. If you can’t find ricotta, cottage cheese is an easy swap. Cottage cheese is readily available in most stores and has a similar texture, and it will still lend a nice creaminess to the meatballs.
- Make them gluten-free. Substitute the breadcrumbs in the recipe with almond meal to make gluten-free zucchini meatballs.
Serving Suggestions
Serve these cheesy zucchini meatballs with pasta and your favorite sauce for a quick, tasty weeknight meal. They’re also great with spaghetti squash for a low-carb option, or you could serve them with a side of polenta, risotto, steamed vegetables, or a fresh green salad. So many options!
Pin this now to find it later
Pin It
Zucchini Meatballs Recipe
Ingredients
- 3 zucchini, grated
- 1 small yellow onion, grated
- 3 cloves garlic, finely chopped
- ½ cup fat free ricotta cheese
- ¼ cup freshly grated parmesan, plus more for garnish
- 1 large egg
- 1 cup panko breadcrumbs
- 1 teaspoon seasoned salt
- fresh ground black pepper, to taste
- 1 tablespoon Italian Seasoning
- ¼ cup chopped fresh basil, plus more for garnish
- coconut oil for frying, you can also use vegetable oil
- 2 to 3 cups tomato/pasta sauce
Instructions
- Grate the zucchini and onions on the large holes of a box grater or in a food processor.
- Place in a large bowl and stir in the garlic; mix until everything is well combined.
- Transfer the zucchini mixture to a large sheet of paper towel or cheesecloth; wrap up the zucchini mixture and twist it tightly into a ball. Squeeze the ball over the sink or a bowl to catch all the water.
- Unravel the cheesecloth and set the zucchini mixture aside.
- In a large mixing bowl, combine ricotta cheese, parmesan, egg, panko crumbs, seasoned salt, black pepper, Italian Seasoning, and basil; stir until everything is well combined.
- Add the zucchini mixture to the ricotta mixture and continue to mix until thoroughly incorporated.
- Shape the mixture into 12 golf-ball sized meatballs.
- Preheat the broiler.
- Add an inch of oil to a cast iron skillet and heat over medium-high heat.
- In batches, add the "meatballs" to the skillet and cook for 5 minutes, occasionally turning until browned on all sides. Remove to a paper towel-lined plate.
- Once all the meatballs are done, add them back to the skillet and pour tomato sauce over them.
- Broil for 4 to 5 minutes or until the sauce is warm and bubbly and the meatballs are completely cooked through.
- Remove from oven and let stand a couple of minutes.
- Garnish with freshly grated parmesan and chopped fresh basil, and serve.
Notes
- Thoroughly drain zucchini after grating to prevent soggy meatballs.
- Cottage cheese can be used if ricotta is unavailable.
- Breadcrumbs: Regular breadcrumbs or almond meal (for a gluten-free option) can replace panko breadcrumbs.
- Oil Choice: Canola or avocado oil can be alternatives to coconut oil.
- Freezing: Leftovers can be frozen and reheated in the oven or microwave.
- To lower the sodium content, use part-skim ricotta, half the seasoned salt, low-sodium panko crumbs, and no-salt tomato sauce.
Nutrition
Nutritional info is an estimate and provided as courtesy. Values may vary according to the ingredients and tools used. Please use your preferred nutritional calculator for more detailed info.
How To Make Ricotta Zucchini Meatballs
With your ingredients ready to go, follow the steps below to make perfectly crispy, pan-fried zucchini meatballs:


- Combine and drain the zucchini and onion. Grate zucchini and onions using a box grater, or blitz them quickly in the food processor. Then, mix in garlic. Squeeze out the excess moisture using a cheesecloth or a paper towel, and set the drained veggies aside for now.
- Make the meatball mixture. In a bowl, mix ricotta, parmesan, egg, panko crumbs, seasoned salt, black pepper, Italian Seasoning, and basil. Add the drained zucchini mixture, and mix well.
- Shape the meatballs. Next, form the mix into 12 golf-ball-sized meatballs.
- Prepare to cook. Heat an inch of oil in a cast-iron skillet over medium-high heat. Meanwhile, preheat the oven broiler.
- Pan-fry. Now, cook the “meatballs” in batches in the skillet for about 5 minutes, until browned on all sides. Afterward, transfer the meatballs to a paper-towel-lined plate.
- Broil. Once all the meatballs are cooked, return them to the skillet. Pour the sauce over, and place them under the broiler for 4-5 minutes, until the sauce is bubbly and the meatballs are fully cooked.
- Enjoy! Serve the zucchini meatballs over pasta, garnished with freshly grated parmesan and chopped basil.
Proper Storage
- Refrigerate. If you have leftovers, transfer the zucchini meatballs to an airtight container and keep them in the fridge for 1 to 2 days.
- Freeze. You can freeze the cooked zucchini meatballs for up to 3 months.
- Reheat. Warm the meatballs in the oven or microwave when you’re ready to serve them again.









Mine completely fell apart. Has anyone tried baking the grated items to get more water out first?
OMG, I made these meatballs today and love them! Your recipe worked out perfectly. Thanks!
Love your recipes. It would be helpful, however, if you also posted the amount of servings for each.
I made these and they were delicious! I used the liquid run off from the zucchini and added it to my tomato sauce and reduced it – it worked great!
Just curious if you can make and freeze these?!?! My thought was to go as far as cooking them in the skillet and then letting them cool and packaging them up to go into the freezer in small batches for future use. I have a million zucchini right now but am unsure how previously shredded and frozen zucchini would work with this recipe after it’s been thawed and drained.
Hi Gail! I have never tried freezing the meatballs so I don’t know for sure if it will work, but I do have a couple bags of shredded zucchini in the freezer and intend to use it to make these meatballs again. 🙂
Hi Katerina – did you determine that shredded zucchini that has been frozen will work in this recipe?
Hi 👋
Yes! As long as it’s thawed and well drained. You can place the zucchini in paper towels or a kitchen towel; wrap it around the zucchini and wring out as much water as you possibly can.
Gail I have baked these in the oven and froze them and they have worked out great, family really liked them.
I also added some red crushed peppers as well, as the family likes things with some kick.
Could you please give a measurable amount of grated Zucchini? I am guessing about 3 cups? I have tons (literally) of Pattypan Squash, I am also going to assume I could substitute that for the Zucchini? Thanks.
Hi!! Can’t go wrong with squash around this time of year! 🙂
I didn’t weigh the zucchini – it was just normal sized 10-ish inch zucchini. But here’s what I found: 1 medium sized zucchini is about 8 inches long, 2 inches in diameter and weighing about 5 ounces. When grated, you end up with about 2/3 cup of zucchini. Does that help at all? I hope! 😀
I too would like more clarification about the amount of zucchini. Are you saying 2/3 cup for the whole recipe? – or 2/3 cup per zucchini, for a total of 3 cups? Most helpful would be the weight of the zucchini, before trimming or grating. My ‘meatballs’ didn’t stick together well at all, though they tasted delicious anyway.
Hi Eileen! Sorry you had issues with them sticking together! It’s the water in the zucchini – I lost all feeling in my arms using all my strength just trying to squeeze out that water! 😀
But, yes, I’m saying 3 cups grated zucchini.
For 3 zucchini at 2/3 cups each, that would be 2 cups. Best idea? Go by consistency.
I’m wondering, could you bake these instead of frying?
Hi Christie!! I tried that twice, but they fell apart both times. If you have any luck with it, plllleeeease let me know! 😀
You can absolutely bake these. Here’s what I did:
1. Make smaller balls (I made 27)
2. Put them in the fridge for 30-60 mins to firm up.
3. Put them in a 350 oven for 20-25 minutes on a greased baking sheet.
4. Halfway through the cooking time, flip them with a THIN spatula as they will stick but you can pry them off as long as it is thin.
I would recommend halving the salt in the main recipe. I wish I had seen the note at the bottom before I made them as they came out salty.
Great meatless recipe!
This is brilliant! And a great way to use up more of that mountain of zucchini waiting in my kitchen.
I just made meatballs out of eggplant and loved them–great idea to use zucchini