Ready to whip up your new fave vegan meatballs recipe? Forget using store-bought balls – these are a whole new world of yum and so darned easy to make!
Ever felt like making vegan meatballs was like climbing culinary Mt. Everest? Not anymore! I've cracked the code to the perfect texture and flavor – without a ton of fuss or hard-to-find ingredients. Imagine biting into these beauties, bursting with herbs and spices, and thinking, 'Did I just make these?' Oh yes, you did. And you'll be doing it again and again because they're bangin’ as heck and crazy simple to make. Cue up the vegan garlic bread, meatless bolognese, and escarole and bean soup.
Your kitchen is about to turn into the hottest vegan meatball spot in town!
🥰 Why you'll adore this recipe
🍄 Supreme Fungus Flex: The secret's in the mushrooms – they bring a rich, earthy umami flavor that mimics the depth and texture you'd expect from meat. These ain't vegan meatballs made out of Beyond Meat or artificial airplane dust or whatever.
🔥 Roasting for Richness: Ro, ro, roast your mushrooms and walnuts gently down the stream? WORD UP. It deepens the flavors and gives a fantastic toasty edge, making these meatballs a reliable winner every time.
✅ Tested and Approved Worldwide: This easy vegan meatballs recipe isn't some nonsense you’ve gotta hope and pray works. Like all of my vegan recipes, it’s been shared and double-checked by a team of hundreds of recipe testers I work with from all around the planet.
🍝 Notable ingredients and substitutions
Crimini, portobello, and the dried porcinis which are optional in this recipe are famous for their deep, savory flavor and meaty texture. If you can't find crimini, feel free to use button mushrooms for a milder taste, and slightly paler color.
Walnuts add a wonderful crunch and nutty depth. They're loaded with omega-3 fatty acids, great for heart health. Almonds or pecans can be a good substitute if walnuts aren't your thing.
Tomato paste adds a concentrated burst of umami and a slight sweetened and tanginess. If you have some on hand, you can substitute it with Turkish pepper paste which is one of the star ingredients I use for making Kisir, Mercimek Kofte, and Turkish stuffed cabbage.
Red Pepper Flakes
That’s a spicy meatball! Not really. I have these crushed red pepper flakes marked as optional if you want these milder, but I think the amount I call for doesn’t make the silly-spicy or anything. You can also use Aleppo pepper flakes (which are great in Turkish Ezme) or even gochugaru, the Korean chili flakes you might otherwise use to make vegan kimchi and Korean tofu soup.
Toasting fennel seeds enhances their sweet, licorice-like flavor, which gives these veggie balls a flavor that will subtly remind you of sausage. It might surprise you that these are a classic Italian seasoning, but the trick is using them in moderation so that the flavor is subtle. If you're not a fan of fennel, you can totally leave ‘em out.
I use canned black beans for this recipe, but you can absolutely use 1 ¼ cup of cooked dried beans instead if that’s your thing. You also swap them out for other cooked legumes of your choice. White beans (Like I use in making Moroccan loubia), cooked barlotti beans, pinto beans or cooked brown lentils (like you would use to make Moroccan harira soup), are all suitable alternatives.
*See the recipe card at the bottom of the page for exact quantities, nutritional info, and detailed cooking directions.
Italian-Style Variation: For a classic Italian twist, you can add sun-dried tomatoes, ground vegan pepperoni, and a mix of fresh Italian herbs like basil and rosemary to the meatball mixture. But don’t lie to yourself too much. Spaghetti and meatballs are really more of an Italian American comfort food than something you will find being eaten pretty much anywhere in Italy itself. So don’t freak out about trying to replicate some mythical traditional style here.
Vegan Swedish Meatballs: Transform these into Swedish-style meatballs by adding a hint of allspice and nutmeg to the mix. Serve them with a vegan gravy made from vegetable broth, homemade dairy-free sour cream or vegan cream cheese, garlic powder, and a touch of Dijon mustard.
📖 How to make this gluten-free vegan meatball recipe
Make the best vegan meatballs ever on your first shot by following these step-by-step instructions with helpful tips. Or you can follow along with the easy-to-print recipe card towards the bottom of this page.
Heat your oven to 400°F (205°C). Get a baking sheet, line it with parchment, and give it a light brush of olive oil.
In a bowl, mix the mushrooms and walnuts with some olive oil. Spread them on the baking sheet and roast for 18 minutes until the mushrooms are tender and a bit shriveled.
As the mushrooms roast, toss rolled oats, dried porcini mushrooms (if you are including them), onion, garlic, salt, pepper, coriander, red pepper flakes (optional), oregano, thyme, and toasted fennel seed into a food processor. Pulse a few times to get a coarse mixture.
Sir Mix A Lot:
Add the roasted mushrooms, black beans, and tomato paste to the food processor. Pulse until pureed but still just very slightly chunky.
Time to get your hands in there! Shape the mixture into small balls. Keep your hands damp with water to prevent sticking.
Heat a skillet over medium-high heat with 4 teaspoons of olive oil. After two minutes, when the oil is hot, cook the meatballs for 5-6 minutes, rotating them every minute or so, until they're lightly browned on all sides.
Post-browning, transfer the skillet to the oven. Make sure you have an oven-safe skillet, otherwise transfer them to a parchment paper-lined baking sheet drizzled with a little oil. Bake for 18-20 minutes until the meatballs are slightly crisp outside.
A gentle loving hug:
Remove from the oven and allow the meatballs to cool to room temperature. This will help them firm up. Once they are comfortable to handle, give each one a gentle squeeze to help condense the balls and ensure they are well bound.
Pour marinara sauce onto the balls. and garnish them optionally with chopped fresh parsley and basil.
Serve your meatballs!
Serve your delicious vegan meatballs in with vegan cheese, pasta sauce, or vegan Bolognese sauce over pasta. Turn them into the best meatball subs your family has ever had. Or simply dust them with a sprinkle of vegan parmesan cheese and chopped fresh parsley and basil.
- Mushroom Moisture Check: If your mushrooms release a lot of liquid while roasting, briefly drain them before adding to the food processor. Too much moisture can make the meatballs too soft.
- Texture Tactics: When pulsing the ingredients in the food processor, aim for a coarse, not overly smooth texture. This gives your meatballs that satisfying, meaty bite. Overprocessing can lead to a mushy and un-meaty texture.
- Don’t have an oven-safe skillet? I like to cook these in either a ceramic or cast iron skillet. If your skillet has a wooden or plastic handle, you should transfer the seared meatballs onto a parchment paper-lined baking pan before roasting.
- Rest and Firm Up: After roasting these vegetarian meatballs, let them cool until you can comfortably handle them. The cool air will help them solidify. Then give them a gentle squeeze in your hands to compress them before you add marinara. This method makes this vegan meatballs recipe less likely to fall apart without the having needed all-purpose flour or breadcrumbs which would both make them no longer gluten-free, and would have also diluted the lovely flavor of the meatballs.
- If you multiply this recipe: You are gonna love these meatless balls so much that you will want to make a double batch next time! Make sure your skillet is large enough to fit a larger batch in a single layer. If not, pan-fry them in batches, or use multiple skillets so that the balls don't have to stack on them.
- Don't forget dessert! Vanilla pastry cream stuffed vegan bomboloni? Maybe you need a little vegan tiramisu in your life? Made with espresso-soaked vegan ladyfingers and dairy free mascarpone, how could you go wrong? Ok, don't freak out, something lighter and gluten-free like coconut panna cotta with rosewater blackberry sauce could be pretty bomb too.
🤷♀️ Recipe FAQs
Do plant-based meatballs have comparable protein to traditional meatballs?
Absolutely! With ingredients like black beans and walnuts, these healthy vegan meatballs are a great source of plant-based protein and don’t have the cholesterol of meat-based balls.
Roasting mushrooms and walnuts enhances their flavors and textures, but if you're short on time, you can skip this step. However, roasting does add an extra depth of flavor and also helps remove some of the moisture from the mushrooms which otherwise cause these gluten-free balls to be more prone to falling apart.
So if you don’t roast the mushrooms, you may need to add a little more oats, or gluten-free breadcrumbs to help bind these better.
Place the vegan meatballs in an airtight glass or metal container and refrigerate. They will stay fresh for up to four days.
To freeze, spread the meatballs on a baking sheet lined with parchment paper. Once they're frozen, transfer them to an airtight container. They'll keep well for up to three months.
Thaw the frozen meatballs in the refrigerator overnight. If you're in a hurry, you can also thaw them at room temperature for a few hours.
🔥 Stovetop Reheating
For the best texture, this vegan meatball recipe is ideal to reheat on the stovetop. Place marinara in a saucepan and warm it over medium heat. After 5-6 minutes when the sauce is hot, add the meatballs, and heat them in the warm sauce for about 4 minutes, without stirring.
🌊 Microwave Reheating
If you're using a microwave, place the meatballs in a microwave-safe dish along with marinara to cover. Cover with a microwave-safe lid or another dish to keep them moist. Heat on high for one to two minutes, checking halfway to ensure they're heated evenly.
✌️Serve these with your meatballs:
Say Hi on Social! 👋
Follow me on Instagram & Facebook for more recipes.
❤️Love this recipe? It helps me out greatly if you leave a 5-star 🌟🌟🌟🌟🌟rating in the recipe card below and maybe even leave me a lovey-dovey comment too!
Vegan meatballs recipe
- 8 oz. crimini mushrooms or portabello mushrooms, chopped
- ½ cup walnuts
- 1 tablespoon extra virgin olive oil
- ⅓ cup oats (rolled oats or quick oats)
- 3 pieces dried porcini mushroom (optional)
- ⅓ cup onion diced
- 1 clove garlic minced
- ½ teaspoon salt
- ¼ teaspoon black pepper
- ½ teaspoon ground coriander
- ¼ teaspoon crushed red pepper flakes (optional)
- ½ teaspoon oregano
- ¼ teaspoon thyme
- ½ teaspoon fennel seeds toasted
- 15 oz. canned black beans drained and rinsed
- 1 tablespoon tomato paste
- 4 teaspoons extra virgin olive oil
- Preheat your oven to 400°F (205°C). Prepare a baking sheet by covering it with parchment paper, and brushing it with olive oil.
- Toss the chopped mushrooms and walnuts in a bowl with olive oil and roast them on the prepared pan for 18 minutes until the mushrooms are tender, and slightly wrinkled looking.
- While the mushrooms are roasting, put the oats, dried porcini (if you are using them), onion, garlic, salt, pepper, coriander, red pepper flakes (if you're using them), oregano, thyme, and toasted fennel seeds into a food processor. Give it a few pulses until it's all coarsely ground.
- Now, take the roasted mushrooms and add them to the food processor, along with the black beans and tomato paste. Pulse everything together until it's well mixed. You want to keep some chunky bits of mushrooms for texture.
- With your hands, make small balls from the mixture. Keep a bowl of water on hand to keep wetting your hands as you roll the balls so that the mixture doesn’t stick to your hands.
- Over medium-high heat, warm a skillet with 4 teaspoons of olive oil. After 2 minutes, when the oil is hot, put the meatballs in the skillet. Cook them for 5-6 minutes, turning them or shaking the pan every 30 seconds or so, so that the meatballs brown lightly on all sides.
- After they've browned, move the skillet into the oven. Bake them for another 18-20 minutes. They should be firm and a bit crisp on the outside when they're done.
- Take them out and allow them to cool to room temperature. Once you can handle them comfortably, give them each a gentle squeeze in your hands to compress them before you ladle on marinara, or the sauce of your choice and garnish with fresh herbs.