These Vegan Meatballs are hearty, savory, and packed with flavor! Made with beets, black beans, toasted walnuts, and fresh basil, they’re tender, satisfying, and naturally gluten-free. Bake them in the oven and serve with spaghetti and a rustic tomato sauce for a wholesome, plant-based twist on classic comfort food.

May you take time to celebrate the quiet miracles that seek no attention. ~John O’Donohue
Who says meatballs need meat? These Vegan Meatballs are made with beets, black beans, toasted walnuts, and fresh basil, creating a wonderfully hearty, savory texture that’s deeply satisfying. The beets give them a beautiful color, while the walnuts add richness and the black beans bring everything together.
We lovingly call them “beetballs,” and they’re one of our favorite ways to turn simple, wholesome ingredients into comforting plant-based food. Bake them until firm and tender, then tuck them into a bowl of spaghetti with rustic tomato sauce, pile them into a meatball sandwich, or serve them with zucchini noodles for something lighter.
Best of all, they’re naturally gluten-free, easy to make ahead, and perfect for meal prep.

I made this meal, and my meat-loving dinner partner went back three times for more beetballs and pasta.
Why you’ll love these Vegan Meatballs
Hearty and flavorful! Black beans, toasted walnuts, and beets create a deliciously savory, satisfying texture.
Wholesome and nourishing. Packed with vegetables, plant-based protein, and fiber. Naturally vegan and gluten-free.
Baked, not fried. Easy to prepare, with a tender interior and firm exterior.
Versatile and meal-prep friendly. Delicious with spaghetti, tucked into meatball subs, or served with your favorite sauce.

Vegan Meatball ingredients
- Black beans: Create a hearty, satisfying base and add plant-based protein. Drain well before using.
- Walnuts: Toasted walnuts add richness, texture, and a hearty, meaty bite.
- Beets: Add earthy sweetness, moisture, and beautiful color. Use raw, peeled (or scrubbed)beets.
- Carrot: Adds subtle sweetness and helps balance the earthy beets.
- Yellow onion: Adds savory depth and natural sweetness. A white onion works too.
- Garlic: Fresh garlic gives the meatballs a delicious savory flavor.
- Fresh basil: Adds bright, aromatic flavor. Fresh parsley can be substituted.
- Nutritional yeast: Adds a delicious cheesy, umami flavor without dairy.
- Tomato paste: Adds richness, umami, and concentrated tomato flavor.
- Vegan Worcestershire sauce: Adds tangy, savory depth. Tamari can be substituted for a slightly different flavor.
- Ground psyllium: Helps bind the meatballs together, keeping them tender while holding their shape.
- Dried oregano: Brings a classic Italian-inspired flavor. Italian seasoning works too.
- Olive oil: For sautéing the vegetables and building a flavorful base.
- Sea salt and black pepper: Enhance all the savory flavors.
How to make vegan Meatballs
Toast the nuts. Toast raw walnuts on a sheet pan for 10-12 minutes in a 325F oven. Set aside to cool.

Saute. In a pan over medium heat, saute’ onion and garlic for about 10 minutes, until soft and lightly caramelized. Let cool a few minutes.

Blend. In a food processor, add cooled walnuts and basil leaves. Gently pulse, until the texture resembles coarse sand. Remove walnut mix from the processor and set aside.

In the same food processor, add the cooled caramelized onion/garlic mixture, raw beet chunks, raw carrot chunks, oregano, salt, pepper, tomato paste, Worcestershire, nutritional yeast, and psyllium; pulse until the mixture is just finely chopped, leaving some texture.

Combine. Add black beans to the beet mix. Pulse 3-4 times. Then add the walnuts. Pulse a time or two. Just enough to incorporate everything. The mixture will be quite moist.

Refrigerate. Refrigerate for 30 minutes (this will help firm them up but is not necessary in a pinch.)

Shape. Scoop into 24 ping-pong-sized balls onto a parchment-lined baking sheet.

Bake. Bake for 40-45 minutes at 325F. Remove from the oven and allow to cool on the pan.

Serving Suggestions
These hearty Vegan Meatballs are delicious served over our Homemade Pasta tossed with Marinara Sauce ( see recipe notes for an easy sauce). Finish with our Vegan Cheesy Sprinkle for a savory, Parmesan-like topping.
For a lighter option, serve the meatballs over zucchini noodles or Spaghetti Squash. Pair with a simple green salad or roasted vegetables for a wholesome, satisfying dinner.

Chef’s Tips
- Toast the walnuts. This deepens their flavor and adds richness to the vegan meatballs.
- Don’t overprocess. Pulse the ingredients in batches, as directed, to maintain a hearty, meaty texture. Avoid blending into a smooth paste.
- Drain the black beans well. Excess moisture can make the meatballs too soft to hold their shape.
- Use ground psyllium. This helps bind the mixture together without eggs. Be sure to use ground psyllium rather than whole husks.
- Let them cool slightly. The meatballs will continue to firm up as they cool on the baking sheet. Handle gently while hot.
Make Ahead and Storage
Make ahead: Prepare the meatball mixture up to 24 hours in advance and refrigerate in an airtight container until ready to shape and bake.
Refrigerate: Store cooked vegan meatballs in an airtight container in the refrigerator for up to 4 days. Keep the tomato sauce separate for the best texture.
Freeze: Freeze cooked, cooled meatballs on a baking sheet until firm, then transfer to a freezer-safe container for up to 3 months.
Reheat: Warm in a 350°F oven until heated through, or gently simmer in tomato sauce. Avoid stirring too vigorously, as the meatballs are delicate.
Watch how to make Vegan Meatballs
More beet recipes you may like
- 20+ Easy Delicious Beet Recipes
- Farro Salad with Beets and their Tops
- Warm Lentils with Wilted Chard, Roasted Beets and Goat Cheese
- Beet Salad with Feta & Pistachios
Vegan Meatballs with Black Beans and Beets
- Prep Time: 30
- Cook Time: 40
- Total Time: 1 hour 10 minutes
- Yield: 24 meatballs 1x
- Category: Main – Vegan and Gluten free, vegan dinner, vegetarain Main
- Method: Oven and Stovetop
- Cuisine: American, Italian
- Diet: Dairy-Free, Gluten-Free, Vegan, Vegetarian
Description
These hearty Vegan Meatballs are made with black beans, toasted walnuts, beets, and fresh basil for a deliciously savory, meaty texture. Baked, not fried, they’re naturally gluten-free, packed with flavor, and perfect with spaghetti and marinara sauce!
Ingredients
Vegan Meatballs
- 1 cup walnuts, toasted
- 1 cup fresh basil leaves
- 2 tablespoons olive oil
- 1 yellow onion, diced
- 2 large garlic cloves, minced
- 1 medium beet, scrubbed or peeled, chopped into small 1/2 inch chunks (roughly 1 cup full)
- 1 medium carrot, chopped in roughly 1/2 inch chunks ( roughly 1/2 cup)
- 1 teaspoon dried oregano
- 1 teaspoon sea salt
- 1/4 teaspoon black pepper
- 1 tablespoon tomato paste
- 1 tablespoon vegan Worcestershire
- 2 tablespoons nutritional yeast
- 1 teaspoon ground psyllium (see notes)
- 14–15 oz can of black beans, drained
Instructions
- Heat oven to 325 degrees.
- Toast the nuts. Toast raw walnuts on a sheet pan for 10 minutes. Set aside to cool.
- Saute. In a pan over medium heat, saute’ onion and garlic for about 10 minutes, until soft and lightly caramelized. Let cool a few minutes.
- Blend. In a food processor, add cooled walnuts and basil leaves. Gently pulse, until the texture resembles coarse sand. Remove walnut mix from the processor and set aside.
- In the same food processor, add the cooled caramelized onion/garlic mixture, raw beet chunks, raw carrot chunks, oregano, salt, pepper, tomato paste, Worcestershire, nutritional yeast, and psyllium; pulse until the mixture is just finely chopped, leaving some texture.
- Combine. Add black beans to the beet mix. Pulse 3-4 times. Then add the walnuts. Pulse a time or two. Just enough to incorporate everything. The mixture will be quite moist. Refrigerate. Refrigerate for 30 minutes ( this will help firm them up but is not necessary in a pinch.)
- Shape. Scoop into 24 ping-pong-sized balls onto a parchment-lined baking sheet.
- Bake. Bake for 40-45 minutes at 325F. Remove from the oven and allow to cool on the pan.
- Serve with cooked pasta, marinara sauce (see notes), and optional vegan cheesy sprinkle or vegan parmesan cheese.
Notes
Season to taste. The salt for the beet balls will depend on the black beans’ salt content. Adjust accordingly.
Psyllium husk acts as a binder and has a very mild flavor. Ground flax seeds can be substituted. The beet balls can work without this addition, but they’ll be much softer in texture.
Make ahead. The beet ball mixture can be made ahead of time and stored in the fridge, but are best baked just before serving.
Tomato Sauce: Add 3 tablespoons olive oil to a large saucepan over medium heat. Throw in 3 cloves minced garlic and 1/8 teaspoon red pepper flakes, stirring until lightly toasted, about 3-5 minutes. Add a 28-ounce can of whole tomatoes and juices, smashing them with a fork to break them up. Add 1 teaspoon dried oregano and 1/2 teaspoon salt. Keep at a low simmer for 20 minutes, stirring and mashing the tomatoes every 4 minutes or so. The sauce will thicken as it cooks. Add fresh chopped basil leaves a few minutes before removing from heat. Tomato Sauce (makes 3 1/2 cups)
Nutrition
- Serving Size: 4 meatballs
- Calories: 206
- Sugar: 4.2 g
- Sodium: 523.9 mg
- Fat: 11.4 g
- Saturated Fat: 1.3 g
- Carbohydrates: 21 g
- Fiber: 7.6 g
- Protein: 7.5 g
- Cholesterol: 0 mg












Seriously our favorite recipe of all time ! 10 STARS
Really appreciate hearing this Michelle!
Our favorite recipe ever!
Awesome, so happy to hear this!
Outstanding!!! The sauce is incredible. The beet balls were really fun to make! I didn’t feel the need to refrigerate the mixture, it was easy to shape. I broke them down while on my plate and with the sauce it tastes like a bolognese. I was literally licking the plate – so good!!!
Yay! Glad you liked these Angeli!
Oops, sorry Tonia
Not Tania
My apologies
Thanks Mary, no worries!😊
Hello Sylvia and Tania, Finally, I made the Beetballs. A new acquaintance who is vegan presented me with the opportunity.
Short story:
I doubled the recipe but did not double the black beans. I made a few of the meatballs and cooked them a day before to test them. My changes for company were this:
I lightly greased the baking foil, I placed the Beetballs which were prepared the day before and covered them with foil & baked them at 350 for 40 minutes. DELICIOUS
Thanks Chefs!
So glad these worked out Mary! Thanks for sharing your helpful notes.
It is a receipe that I keep making on regular basis. Simple and delicious. Thanks
Great to hear Penny!
I was skeptical at first, but the flavor of these is absolutely delicious! Better than any store bought veggie meatballs. I wish the texture was a bit more firm, but as long as you’re gentle with them, they keep their shape. I will attempt to make a patty with the leftovers.
Perfect Miriam! Glad you enjoyed!
Hi, can I use eggs for this recipe instead of vegan substitutes? Thanks
Yes!
How many? Other modifications to make it non vegan?
I would suggest 1 egg and 1/2- 1 cup of bread crumbs, enough so that you can shape them into balls. We haven’t tried this, so you may have to play around to get the right consistency.