These vegan meatballs are built from chickpeas, walnuts, cremini mushrooms, and oats, then pan-seared and finished in the oven with a simple marinara. They hold together well, brown properly, and reheat without falling apart — which makes them genuinely useful for weeknight meals, not just a weekend project.
The short version of why this works
Two things matter most here. First, the flax egg needs time — at least 5 minutes to gel fully before you mix it in. Rush that step and the meatballs won’t bind, full stop. Second, pan-searing before baking isn’t optional. That crust is what keeps them from turning soft and dense in the sauce. Get a good brown on at least two sides in a hot, lightly oiled pan, then let the oven finish the interior. The mushrooms also need to be cooked down until most of their moisture is gone before they go into the mix — wet mushrooms make the whole thing sticky and hard to shape. Everything else is forgiving.
Mistakes to avoid
- Over-processing the chickpeas. Pulse them — don’t blend. You want a rough, chunky texture with some whole pieces still visible. A smooth paste turns the meatballs gummy and dense once baked.
- Skipping the chill. If the mixture feels soft or sticky after mixing, refrigerate it for 20–30 minutes before rolling. Cold mix holds its shape far better in the pan and you’ll lose fewer meatballs to crumbling.
- Crowding the pan during searing. Leave space between each meatball. Crowding drops the pan temperature and steams them instead of browning them — you’ll get a pale, soft exterior that won’t hold up in sauce.
- Using pre-ground walnuts. Chop or pulse the walnuts yourself right before mixing. Pre-ground walnut meal is too fine and absorbs moisture differently, which throws off the texture of the finished meatball.
- Adding sauce too early. Let the meatballs finish baking completely before adding marinara. Adding sauce halfway through traps steam and softens the crust you just worked to build. Skip the garnish — not worth the extra dish.

Herbed Vegan Meatballs with Simple Marinara
Equipment
- Oven
- Large skillet or saute9 pan
- Food processor
- rimmed baking sheet
- Parchment paper
- Mixing bowls
- Measuring cups and spoons
- Spatula
- Cookie scoop (1.5 Tbsp) or tablespoon
- Microplane or fine grater (for lemon zest)
Ingredients
For the Vegan Meatballs:
- 2 tbsp ground flaxseed golden or brown; freshly ground binds best
- 5 tbsp water for blooming flax into a flax egg
- 2 tbsp extra-virgin olive oil for saute9ing mushrooms and aromatics
- 1 small yellow onion, diced about 3/4 cup, finely diced for even texture
- 4 cloves garlic, minced fresh garlic for robust aroma
- 10 oz cremini (baby bella) mushrooms, finely chopped wipe clean; avoid washing to prevent sogginess if possible
- 1 tsp kosher salt divided; season in stages for best flavor
- ½ tsp freshly ground black pepper divided; adjust to taste
- ¼ tsp crushed red pepper flakes optional heat
- 1 tbsp tomato paste doubles down on umami; tube brands like Mutti are convenient
- 1 tbsp tamari or low-sodium soy sauce adds depth and savoriness
- 1 tsp balsamic vinegar a hint of sweetness and acidity for balance
- 1 can chickpeas, drained, rinsed, and patted dry 15 oz can; dry well for better texture
- ¾ cup walnuts, lightly toasted toasting boosts aroma; cool before processing
- 1 cup old-fashioned rolled oats acts as binder; do not use instant oats
- 2 tbsp nutritional yeast cheesy savoriness without dairy; Bragg or Red Star are great
- 2 tsp dried Italian seasoning or 1 tsp dried oregano + 1 tsp dried basil
- ¼ cup fresh flat-leaf parsley, finely chopped stems tender are fine; brightens the mix
- 1 tsp finely grated lemon zest aromatic lift; use unwaxed lemon if possible
- 2 6 tbsp unsweetened plant milk as needed; to adjust mixture to a scoopable, cohesive texture
- 1 2 tbsp olive oil for pan-searing formed meatballs
For the Simple Marinara:
- 2 tbsp extra-virgin olive oil fruity, peppery oil shines here
- 3 cloves garlic, thinly sliced sliced for gentle sweetness in oil
- 1 can crushed tomatoes 28 oz; San Marzano-style preferred for balanced acidity
- 6 8 leaves fresh basil, torn stir in off-heat to preserve aroma
- ¾ tsp kosher salt adjust to taste and tomato brand
- ¼ tsp freshly ground black pepper adjust to taste
- 1 pinch sugar optional; rounds aggressive acidity if needed
- 1 pinch crushed red pepper flakes optional for gentle heat in the sauce
To Serve (Optional):
- 12 oz spaghetti or bucatini, cooked al dente optional; or serve over soft polenta or zucchini ribbons
- 2 tbsp fresh basil or parsley, chopped for garnish
- 2 tbsp vegan Parmesan-style cheese optional finishing sprinkle; homemade or store-bought
Instructions
- Prep and Preheat: Heat oven to 400b0F (205b0C). Line a rimmed baking sheet with parchment for easy cleanup. Set a large skillet over medium heat.
- Bloom the Flax: In a small bowl, whisk 2 tbsp ground flaxseed with 5 tbsp water. Let stand 10 minutes until thick and gelled4this is your flax egg and should look like loose pudding.
- Saute9 Aromatics and Mushrooms: Add 2 tbsp olive oil to the warm skillet. Stir in onion and a pinch of the salt; cook 3 6 minutes until translucent and sweet. Add garlic for 30 seconds (fragrant, not browned). Add chopped mushrooms, remaining salt, black pepper, and red pepper flakes. Cook 7 9 minutes, stirring occasionally, until mushrooms release liquid and turn deeply browned with a slight edge of caramelization. Stir in tomato paste, toasting 1 minute until brick red and glossy. Splash in tamari and balsamic, scraping up any browned bits. Transfer mixture to a large bowl to cool 2 3 minutes.
- Pulse the Dry Binders: In a food processor, pulse walnuts and oats 6 8 times to a coarse meal (like breadcrumbs). Avoid over-processing into paste4texture is key.
- Build the Mixture: To the processor, add the cooled mushroom mixture, chickpeas, nutritional yeast, Italian seasoning, parsley, lemon zest, and the flax egg. Pulse in short bursts until it just comes together and holds when pressed4you should still see small flecks of walnut and chickpea for a meaty bite. If the mix feels dry/crumbly, pulse in 2 6 tbsp unsweetened plant milk, 1 tbsp at a time.
- Rest and Taste: Let the mixture sit 5 minutes to hydrate the oats. Taste and adjust seasoning with salt and pepper. The texture should be soft but shapeable, similar to slightly sticky cookie dough.
- Shape: Lightly oil your palms. Use a 1.5-tbsp scoop to portion and roll into firm balls (about 22 24 meatballs). Arrange on the parchment-lined sheet.
- Pan-Sear: Warm 1 2 tbsp olive oil in the skillet over medium-high heat. Sear meatballs in batches 1 3 minutes per side until deep golden with a thin crust. Return them to the baking sheet.
- Bake: Bake at 400b0F (205b0C) for 15 18 minutes until set and slightly firm to the touch. Internal texture should be moist and cohesive, not doughy.
- Make the Simple Marinara (overlap while baking): In a saucepan, warm 2 tbsp olive oil over medium heat. Add sliced garlic; cook 30 60 seconds until lightly golden at the edges and aromatic. Stir in crushed tomatoes, salt, pepper, and optional pinch sugar and red pepper flakes. Simmer gently 20 minutes, stirring occasionally, until glossy and slightly thickened. Off heat, stir in torn basil.
- Serve: Nestle the hot meatballs into the marinara and turn to coat, or spoon the sauce into shallow bowls and crown with meatballs. Sprinkle with fresh herbs and optional vegan Parmesan. Serve as-is, over al dente spaghetti, or atop soft polenta.
Notes
Chef9s Tips:Â
- Deeper Umami: Add 1 tsp white or mellow miso or 1 tsp mushroom powder to the mix for extra savoriness.
- Gluten-Free: Use certified GF oats and GF tamari; serve over polenta or GF pasta.
- Nut-Free: Replace walnuts with sunflower seeds or 1/2 cup panko plus 2 tbsp olive oil; texture will be slightly lighter.
- Moisture Management: If the mix is too wet, pulse in 2 3 tbsp oats. Too dry? Add 1 2 tbsp plant milk or a spoon of olive oil.
- No Food Processor? Finely mince mushrooms and nuts by hand; mash chickpeas with a fork or potato masher. Texture will be a bit chunkier but still lovely.
- Searing Shortcut: If short on time, skip searing and bake 20 22 minutes, turning halfway. Searing adds superior crust, though.
- Make-Ahead: Roll and chill meatballs (uncooked) up to 24 hours, or freeze on a tray then bag up to 2 months. Bake from frozen at 400b0F (205b0C) for 22 25 minutes.
Serving Suggestions:Â
- Classic Plate: Twirl spaghetti into a nest, spoon marinara, and place 4 5 glossy meatballs on top. Finish with basil, cracked pepper, and vegan Parmesan.
- Polenta Comfort: Ladle creamy polenta into warm bowls, add sauced meatballs, and drizzle with a peppery olive oil for sheen.
- Color & Aroma Cues: Meatballs should be burnished brown with flecks of green herbs; marinara a vibrant red, smelling of garlic and basil.
- Wine Pairing: A glass of medium-bodied Sangiovese or a bright NA red blend complements the tomato93herb profile.
Culinary Context:Â
Inspired by Italian-American meatball nights, this vegan rendition preserves the ceremony of simmering sauce and sharing at the table, while celebrating modern pantry magic4from flax eggs to nutritional yeast4for depth without animal products.Optional Advanced Instructions:Â
- Parallel Workflow: Start marinara the moment the meatballs go into the oven so both finish together.
- Batch Cooking: Double the meatballs; freeze half after baking. Reheat in sauce at 350b0F (175b0C) for 12 15 minutes, covered.
- Precision Scooping: A 1.5-tbsp scoop ensures even cooking and professional presentation.
Timing:Â
Prep: 30 minutes (0 hr 30 min) Â |Â Cook: 40 minutes (0 hr 40 min) Â |Â Total: 70 minutes (1 hr 10 min)Course & Origin:Â
Course: MainCourse / Dinner  | Cuisine: ItalianNutrition
Your questions, answered
Can I make these ahead and store them for the week?
Yes — these are one of the better plant-based recipes for batch cooking. Fully cooked meatballs keep in an airtight container in the fridge for up to 5 days, and they reheat well in a covered pan with a splash of marinara over medium-low heat.
Can I freeze them, and if so, at what stage?
Freeze them after baking, not before. Arrange cooled meatballs in a single layer on a baking sheet, freeze until solid, then transfer to a freezer bag. They keep for up to 3 months and go straight from frozen into warm sauce — no thawing needed, just add 10 extra minutes on the stovetop.
My mixture is too wet to roll — what do I do?
Add oats one tablespoon at a time and let the mixture sit for a few minutes after each addition before testing again. The oats absorb moisture gradually, so give them a moment to work before deciding you need more.
Can I use canned lentils instead of chickpeas?
Yes, well-drained green or brown lentils work as a direct swap. Red lentils are too soft and will make the texture mushy, so stick with the firmer varieties and make sure they’re thoroughly drained and patted dry.
Do I have to use walnuts, or can I substitute something nut-free?
Sunflower seeds are the most reliable nut-free substitute — pulse them to a rough chop, the same way you’d treat the walnuts. Raw pumpkin seeds also work, though they contribute slightly less richness to the finished meatball.
Try these next
- Vegan Polenta Mushroom Bliss
- Macadamia Nut Pesto Pasta
- Smoky Spanish Chickpea Stew
- Baked Ratatouille Herb Oil
