These Vegan ‘Meatballs’ in Tomato Sauce give you all the cozy spaghetti-and-meatballs vibes without the meat. The baked bean balls are made with kidney beans, mushrooms, walnuts, herbs, breadcrumbs, and a simple flax egg, so they come out hearty with plenty of savory flavor. Add a quick basil tomato sauce and a pile of spaghetti, and you’ve got one very comforting plant-based dinner.
Try my Tofu and Bok Choy Stir Fry recipe.
Why You’ll Love This Recipe
- Completely plant-based: The bean balls, sauce, and pasta can all be vegan.
- Hearty texture: Kidney beans, mushrooms, and walnuts give the balls plenty of substance.
- Baked instead of fried: Once shaped, the oven does most of the work.
- Classic comfort-food feel: Tomato sauce and spaghetti make this an easy family-style dinner.
- Plenty of savory flavor: Garlic, oregano, basil, smoked paprika, tamari, and tomato paste keep things interesting.
- Easy to make ahead: The bean-ball mixture can be prepared in advance.
- Flexible: Serve them with spaghetti, another pasta, or even crusty bread.
Try my Mason Jar Thai Crunch Salad recipe.
What You’ll Need to Make Vegan ‘Meatballs’ in Tomato Sauce
For the bean balls:
- 1 tablespoon flax meal
- 3 tablespoons water
- 1 tablespoon olive oil
- ½ onion, diced
- 2 garlic cloves, minced
- 7 ounces (200 g) mushrooms, chopped
- 1.4 ounces (40 g) walnuts, finely chopped
- 1 (14 oz./400 g) can kidney beans, drained and rinsed
- 1.6 ounces (45 g) breadcrumbs
- 1 teaspoon tamari
- 1 tablespoon tomato paste
- Splash of fresh lemon juice
- 1 teaspoon dried oregano
- 4 tablespoons fresh basil, chopped
- ½ teaspoon salt, or more to taste
- 1 teaspoon smoked paprika
For the tomato sauce:
- 1 tablespoon olive oil
- ½ onion, chopped
- 2 garlic cloves, crushed
- 1 (14 oz./400 g) can chopped tomatoes
- 2 tablespoons tomato paste
- ½ vegetable stock cube, crumbled
- 4 tablespoons fresh basil, chopped
- Salt and black pepper, to taste
To serve:
- 9 ounces (225 g) spaghetti
- 2 teaspoons nutritional yeast, optional
What You’ll Need to Do
- Prep Time: 15 minutes
- Cook Time: 30 minutes
- Total Time: 45 minutes
- Serves: 4
- Yield: About 16–20 bean balls

- Start by making the flax egg. Mix the flax meal with 3 tablespoons water, give it a good stir, and set it aside for about 5 minutes while you get everything else moving.
- Preheat your oven to 350°F (180°C) and line a large baking sheet with parchment paper.
- Heat 1 tablespoon olive oil in a skillet over medium heat. Add the diced onion and cook for around 3 minutes, until it starts to soften.
- Add the minced garlic and chopped mushrooms. Cook for another 2–3 minutes, stirring occasionally, until the mushrooms soften and some of their moisture cooks away.
- Transfer the cooked onion and mushroom mixture to a food processor. Add the walnuts and drained kidney beans.
- Pulse until you have a coarse mixture. Don’t blend it into a smooth paste. A little texture helps the bean balls hold together and gives them a better bite.
- Transfer the mixture to a bowl. Add the breadcrumbs, prepared flax egg, tamari, tomato paste, lemon juice, oregano, basil, salt, and smoked paprika.
- Mix everything together until evenly combined.
- Shape the mixture into walnut-size balls, aiming for roughly 16–20, and arrange them on the prepared baking sheet.
- Bake for 25–30 minutes, carefully turning the bean balls halfway through, until they’re firm and golden on the outside.
- While the bean balls are baking, bring a pot of water to a boil and cook the spaghetti according to the package directions. Drain when ready.
Make the Tomato Sauce
- Heat 1 tablespoon olive oil in a medium saucepan over medium heat.
- Add the chopped onion and cook for about 5 minutes, until softened.
- Add the crushed garlic and cook for another 1 minute, just until fragrant.
- Stir in the chopped tomatoes, tomato paste, crumbled ½ vegetable stock cube, and fresh basil.
- Reduce the heat and simmer for about 5–10 minutes, until the sauce thickens slightly.
- Taste before adding salt, since the stock cube and tomato paste already bring plenty of seasoning. Add black pepper and extra salt only if needed.
- Once the bean balls are baked, gently add them to the tomato sauce.
- Fold them through carefully so they get coated without breaking apart.
- Divide the spaghetti between four plates or bowls.
- Spoon the tomato sauce and bean balls over the pasta.
- Finish with nutritional yeast and extra basil if you like, then serve warm.
Try my Morning Pizza Muffins recipe next.
Easy Ingredient Swaps
Kidney beans: Black beans or cannellini beans can work.
Walnuts: Pecans, sunflower seeds, or pumpkin seeds are good alternatives.
Breadcrumbs: Use certified gluten-free breadcrumbs if needed.
Tamari: Soy sauce works if gluten-free preparation isn’t necessary.
Spaghetti: Penne, linguine, rigatoni, or another pasta works just as well.
Fresh basil: Use parsley if that’s what you have.
Mushrooms: Cremini, button, or baby portobello mushrooms all work.
Try my Creamy Cauliflower Gratin recipe.
Some Twist and Tweak Ideas
Add red pepper flakes to the tomato sauce for a little heat.
Mix nutritional yeast directly into the bean-ball mixture for extra savory flavor.
Add finely chopped spinach to the tomato sauce.
Use Italian seasoning instead of oregano.
Stir roasted red peppers into the tomato sauce before serving.
Add a little fennel seed to the bean balls for a more sausage-like flavor.
Serve the bean balls in a sub roll with tomato sauce for a vegan meatball sandwich.
Skip the pasta and serve them over creamy polenta.
Some Helpful Tips
Drain the beans thoroughly. Extra liquid can make the bean balls too soft.
Cook some moisture out of the mushrooms. Mushrooms contain a lot of water, so don’t rush that skillet step.
Don’t over-process the mixture. You want coarse crumbs, not bean paste.
Let the flax egg thicken. It needs a few minutes to become sticky enough to help bind the mixture.
Make evenly sized balls. They’ll cook more consistently.
Flip gently. Vegan bean balls are more delicate than meat-based meatballs, especially before they fully set.
Let them bake completely before saucing. This gives them a firmer outside so they’re less likely to break apart.
Some Budget-Friendly Tips
Kidney beans are inexpensive, especially if you buy store-brand canned beans or cook dried beans yourself.
Button mushrooms are usually cheaper than specialty mushroom varieties.
Walnuts are one of the more expensive ingredients, so sunflower seeds can be a lower-cost substitute.
Use dried basil in the bean mixture if fresh basil is expensive, and save a little fresh basil for serving.
Store-brand canned tomatoes, pasta, and breadcrumbs all work perfectly well here.
You can also stretch the meal further by serving it with garlic bread or a simple salad.
Some Serving Ideas

Serve these vegan bean balls with:
- Spaghetti
- Penne
- Linguine
- Creamy polenta
- Mashed potatoes
- Garlic bread
- Green salad
- Roasted vegetables
- Zucchini noodles
- Crusty bread
For the classic version, spaghetti is hard to beat.
For something different, spoon the bean balls and tomato sauce over polenta or tuck them into toasted rolls.
Great for Meal Prep
The bean balls can be prepared ahead of time and refrigerated before baking.
You can also bake them completely, let them cool, and store them separately from the tomato sauce.
Keeping the balls and sauce separate helps them maintain a firmer texture.
When you’re ready to eat, warm the sauce first, then gently add the bean balls.
Some Storage and Reheating Tips
Store leftover bean balls and tomato sauce in an airtight container in the refrigerator for up to 3 days.
For the best texture, keep leftover pasta in a separate container.
Reheat the bean balls and sauce gently in a covered saucepan over low to medium heat.
Add a splash of water if the tomato sauce has thickened too much.
Individual portions can also be reheated in the microwave.
The baked bean balls can be frozen separately for up to 2 months. Freeze them on a tray first, then transfer them to a freezer-safe container once firm.
Final Thoughts
These Vegan ‘Meatballs’ in Tomato Sauce are hearty enough to stand up to a proper bowl of spaghetti while still keeping everything completely plant-based.
Kidney beans give them structure, mushrooms add savory flavor, walnuts bring a little richness, and the herbs and smoked paprika keep them far from bland.
Add that simple basil tomato sauce and you’ve got a classic comfort-food dinner with a plant-based twist that doesn’t feel like it’s missing anything.
Did you like my post?
If my recipes, meal plans, or cooking tips have helped you, consider buying me a coffee. Your support helps cover recipe testing, website costs, photography, and the time it takes to create new free content every week.
☕ Buy Danny a CoffeeEvery coffee helps keep new recipes and meal plans coming. Thank you for your support!
Vegan ‘Meatballs’ in Tomato Sauce
These Vegan ‘Meatballs’ in Tomato Sauce are cozy, saucy, and seriously satisfying! 🍅🍝 I bake savory bean balls, toss them in basil tomato sauce, and serve everything over spaghetti.
Ingredients
For the bean balls:
For the tomato sauce:
To serve:
Instructions
-
Combine the flax meal and water in a small bowl. Stir well and allow the mixture to stand for approximately 5 minutes until thickened.
-
Preheat the oven to 350°F (180°C) and line a large baking sheet with parchment paper.
-
Heat 1 tablespoon olive oil in a skillet over medium heat.
-
Add the diced onion and cook for approximately 3 minutes, or until it begins to soften.
-
Add the minced garlic and chopped mushrooms and continue cooking for 2–3 minutes, stirring occasionally.
-
Transfer the cooked onion and mushroom mixture to a food processor. Add the walnuts and drained kidney beans.
-
Pulse until the mixture is coarse and evenly combined. Do not process into a smooth paste.
-
Transfer the mixture to a bowl and add the breadcrumbs, flax egg, tamari, tomato paste, lemon juice, oregano, chopped basil, salt, and smoked paprika.
-
Stir until thoroughly combined.
-
Shape the mixture into approximately 16–20 walnut-size balls and arrange them on the prepared baking sheet.
-
Bake for 25–30 minutes, carefully turning the bean balls halfway through cooking, until firm and golden.
-
While the bean balls are baking, cook the spaghetti according to the package directions. Drain and set aside.
-
To prepare the tomato sauce, heat 1 tablespoon olive oil in a medium saucepan over medium heat.
-
Add the chopped onion and cook for approximately 5 minutes, or until softened.
-
Add the crushed garlic and cook for an additional 1 minute.
-
Stir in the chopped tomatoes, tomato paste, crumbled ½ vegetable stock cube, and chopped basil.
-
Simmer for 5–10 minutes, or until the sauce has thickened slightly.
-
Season with salt and black pepper to taste.
-
Once the bean balls are fully baked, gently fold them into the tomato sauce.
-
Divide the cooked spaghetti among four plates or bowls.
-
Spoon the tomato sauce and bean balls over the pasta.
-
Sprinkle with nutritional yeast, if desired, and serve warm.
Nutrition Facts
Servings 4
- Amount Per Serving
- Calories 500kcal
- % Daily Value *
- Total Fat 15g24%
- Sodium 620mg26%
- Total Carbohydrate 74g25%
- Dietary Fiber 12g48%
- Sugars 11g
- Protein 20g40%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily value may be higher or lower depending on your calorie needs.
Note
Estimated Glycemic Index: ~48
Estimated Glycemic Load per Serving: ~29
