The Best Vegan Meatballs

GFVGVDFNS
Jump to Recipe
Skillet filled with gluten-free vegan homemade "meatballs" in marinara sauce

Friends, this feels big. Vegan meatballs made with real food that are full of flavor, don’t fall apart, aren’t mushy, and are easy to make! Let’s do this!

Ingredients for making quinoa black bean vegan meatballs

Origin of Meatballs

These days, meatballs are enjoyed all over the world and come in many different forms. But it’s believed that the idea originated from Persian meatballs known as kofta.

Our plant-based take on meatballs most closely resembles the flavors of Italian-American meatballs which are made with breadcrumbs and herbs. The story of Italian-American meatballs says that Italian immigrants served them with spaghetti and tomato sauce to make the dish more filling without much additional cost.

How to Make Vegan Meatballs

This 10-ingredient recipe starts with black beans that have been baked to dry them out – this is important, as it helps prevent the meatballs from becoming mushy.

The beans are then blended with herbs, spices, and sautéed garlic and shallot for layers of flavor.

Blender filled with ingredients for making perfect vegan meatballs

Next comes the cooked and cooled quinoa, more herbs, tomato paste, and vegan Worcestershire (which is optional, but it adds more depth of flavor). Pulse a few more times and you’re ready to form your meatballs! After a quick chill in the refrigerator, it’s time to cook (and eat)!

Food processor with ingredients for making our vegan meatballs recipe
Browning vegan meatballs in a cast-iron skillet

To cook the meatballs, we went for a stovetop-oven combo. A quick sauté in the skillet you used to cook the onions and garlic in provides a crusty outer texture, while a bake in the oven dries them out a bit and ensures they’re cooked through the center.

At the end, for even more flavor, you can add your favorite marinara sauce and cook for another 5-10 minutes or until bubbly. Swoon. Then it’s meal time!

Using a spoon to grab a vegan meatball and marinara sauce

We hope you LOVE these meatballs! They’re:

Firm but tender
Not mushy
Packed with flavor
Made with wholesome ingredients
Protein- + Fiber-packed
& Incredibly delicious

These meatballs are delicious on their own, but they would also pair well with just about any pasta, like our Simple Chickpea Bolognese or 30-Minute Cashew Alfredo or Chili Garlic Pasta with Roasted Cauliflower. I could also see them working well on things like pizza and even sub sandwiches! Melt a little Vegan Mozzarella on top and you’re in business!

If you try this recipe, leave a comment, rate it, and tag a photo #minimalistbaker on Instagram so we can see what you cook up. Cheers, friends!

Dinner plate filled with delicious homemade vegan meatballs

The Best Vegan Meatballs

Tender, flavorful, 10-ingredient vegan meatballs made with quinoa and black beans! Infused with fresh herbs, tomato paste, and spices for big flavor. The perfect meatless meatball for pasta, sandwiches, and more!
Author Minimalist Baker
Print
Plate of our delicious Vegan Meatballs in marinara sauce topped with parsley
4.80 from 286 votes
Prep Time 30 minutes
Cook Time 45 minutes
Total Time 1 hour 15 minutes
Servings 12 (meatballs)
Course Entree
Cuisine Gluten-Free, Italian-Inspired, Oil-Free, Vegan
Freezer Friendly 1 month
Does it keep? 4-5 Days

Ingredients

MEATBALLS

  • 1 cup cooked and cooled quinoa* (ensure it’s cooked + completely cooled before using)
  • 1 15-ounce can black beans* (rinsed, drained, dried)
  • 2 Tbsp water (or sub olive or avocado oil)
  • 3 cloves garlic (minced)
  • 1/2 cup diced shallot
  • 1/4 tsp sea salt (plus more to taste)
  • 2 1/2 tsp fresh oregano (or sub half the amount in dried)
  • 1/2 tsp red pepper flake (reduce for less heat)
  • 1/2 tsp fennel seeds (optional)
  • 1/2 cup vegan parmesan cheese (plus more for serving)
  • 2 Tbsp tomato paste
  • 3 Tbsp chopped fresh basil or parsley (we mixed both // plus more for serving)
  • 1-2 Tbsp vegan worcestershire sauce (optional // adds depth of flavor // ensure gluten-free for GF eaters)

FOR SERVING (optional)

Instructions

  • If you haven’t prepared your quinoa yet, do so now (make sure it’s cooked and cooled completely before use). 1/3 cup uncooked quinoa will yield ~1 cup cooked. *Prep/cook time does not include preparing quinoa.
  • Preheat oven to 350 degrees F (176 C). Add rinsed, dried black beans to a parchment-lined baking sheet. Bake for 15 minutes or until beans appear cracked and feel dry to the touch (see beans in food processor photo). Remove beans from the oven and then increase oven heat to 375 degrees F (190C).
  • Heat a large (oven-safe) skillet over medium heat. Once hot, add water (or oil), garlic, and shallot. Sauté for 2-3 minutes, or until slightly softened, stirring frequently. Remove from heat (and reserve pan for later use).
  • Add black beans to a food processor along with garlic, shallot, sea salt, oregano, red pepper flake, and fennel (optional) and pulse into a loose meal (DON’T overmix). Then add cooked/cooled quinoa, vegan parmesan cheese, tomato paste, fresh basil or parsley, and Worcestershire (optional). Pulse to combine until a textured dough forms (you’re not looking for a purée, but it should be semi-tacky).
  • Taste and adjust flavor as needed, adding more salt for saltiness/depth of flavor, red pepper flake for heat, herbs for earthiness, or Worcestershire (optional) for more depth of flavor. If it’s too tacky or wet, add more vegan parmesan cheese and pulse to combine (we added a bit more).
  • Scoop out heaping 1 1/2 Tbsp amounts (using this scoop or a Tablespoon) and gently form into small balls using your hands. Add to a plate and refrigerate for 15 minutes.
  • Heat an oven-safe metal or cast-iron skillet over medium heat. Once hot, add a small amount of oil to prevent sticking, then add the meatballs. Sauté for a few minutes, gently turning the meatballs to get a slight crust on either side. Then transfer to the oven and bake for 20-30 minutes or until golden brown on the edges and slightly dry to the touch. 
  • These meatballs are delicious as is, or you can add some marinara to the pan and heat over medium heat for 5 minutes (or until bubbling / hot) to infuse more flavor.
  • Serve with marinara and additional vegan parmesan cheese (optional)! These are also delicious atop any pasta. Leftover meatballs keep for 4-5 days in the refrigerator or 1 month in the freezer. Reheat in the microwave or in a 375-degree F (190 C) oven until warmed through.

Video

Notes

*1 15-ounce (425 g) can black beans yields ~1 1/4 cup beans (after draining excess liquid).
*Prep/cook time does not include preparing quinoa.
*Nutrition information is a rough estimate for 1 of 12 meatballs calculated without optional or serving ingredients.

Nutrition (1 of 12 servings)

Serving: 1 Meatballs Calories: 67.4 Carbohydrates: 10 g Protein: 3.3 g Fat: 1.9 g Saturated Fat: 0.3 g Cholesterol: 0 mg Sodium: 184.5 mg Potassium: 172 mg Fiber: 2.7 g Sugar: 1.1 g Vitamin A: 70 IU Vitamin C: 2 mg Calcium: 23 mg Iron: 1.1 mg

Did You Make This Recipe?

Tag @minimalistbaker on Instagram and hashtag it #minimalistbaker so we can see all the deliciousness!

If you love this recipe...

Get Our Fan Favorites eBook Here!

Reader Interactions

Leave a Comment & Rating!

Have a question? Use ctrl+f or ⌘+f on your computer or the "find on page" function on your phone browser to search existing comments! Need help? Check out this tutorial!

My Rating:




  1. Teresa Harris says

    I just pulled the skillet out of the oven and I’m so disappointed. It’s almost like the meatballs “melted” in the oven. They are stuck to the bottom and very mushy. I followed the directions to a tee and made no modifications outside of doubling the recipe. They’re VERY tasty though!! Not inedible, thankfully, cuz I’d have cried if I had to toss them. But they’re likely to wind up on a roll like a meatball sub than over pasta with sauce. They’ll fall apart! Any idea what could have gone wrong??

    • Avatar for Dana @ Minimalist BakerSupport @ Minimalist Baker says

      Oh no! So sorry that happened, Teresa. Is it possible you cooked them in a sauce? These do best cooked on their own and served with a sauce that’s cooked separately.

  2. Kate says

    I’ve tried many vegan meatball recipes and have not had luck until this recipe. These had so much flavor and were the perfect consistency. Minimalist baker never fails!!! Thank you!

  3. Allison says

    I used black and cannellini beans, used tamari instead of Worcestershire and baked for an extra 5 minutes. Delicious!

  4. Cat says

    These were amazing! The only adjustment I made was that I didn’t put the Worcestershire sauce in as I didn’t have any left. Otherwise followed to a T and baked them in my air fryer as per other reviewers’ suggestions. So so good. Thank you, Dana for the awesome recipe!

  5. Christy says

    Hi there! Would these work with no beans at all? We don’t do great with beans unfortunately! Thanks so much! Love your recipes so much!

    • Avatar for Dana @ Minimalist BakerSupport @ Minimalist Baker says

      Hi Christy, we can’t think of a substitution for beans in this recipe, however if you can handle lentils we do have a recipe for meatballs using lentils here. Hope this helps!

  6. IO says

    I made this with the intention of freezing some and it was so so so good it’s all gone! 😋 I made everything, the vegan parmesan, and marinara sauce! And had it with some spaghetti on my 3rd round hehe, gonna make more for meal prep this weekend! Thank you ❤️💗❤️💗

  7. Carly says

    I really want to try this but very much dislike quinoa. Is there another grain you would recommend trying? They sound amazing!!

  8. Megan says

    These are delicious. Definitely worth the fuss. I will try adding the garlic and shallots raw and then rolling the meatballs in oil and putting them straight into the oven next time so that it could be a weeknight meal as well. The flavor is so good that even if they don’t crisp up as well, I think they would still be fine.

    I don’t have a food processor, so I just laid the beans and spices out on a sheet pan and used a hand held chopper and it worked great.

  9. Cori says

    This was really delicious and so fun to make! I used chickpeas instead of black beans because I was pairing these meatballs with Minimalist Baker’s roasted red pepper pasta sauce, so I figured the chickpea would be a better choice with the lighter sauce. When I tried searing the meatballs, they stuck to the pan, so I made an impulsive decision to skip the sear and bake, and just throw them in the air fryer for 15 mins. SO GOOD AND CRISPY. Highly recommend this recipe! The depth of flavor was amazing.

  10. Kelly says

    These are so yummy! I made them in the air fryer and they turned out great. I skipped browning them in a pan and just put them in my air fryer at 375 degrees for 8 minutes. They were crispy and perfect!

  11. Sara says

    Made this and loved it. Left out worcestershire sauce, used onion instead of shallot and used real cheese (am vegetarian, not vegan). Otherwise followed the recipe and they were amazing. My hyper-critical family loved them. Said they didn’t taste like meat but the texture was very close and they were delicious. They held together beautifully (put the sauce on them when serving and did not heat them in the sauce). I also froze one to see how that would turn out and it froze beautifully. A great recipe. Worth the work. THANKS

    • Avatar for Dana @ Minimalist BakerSupport @ Minimalist Baker says

      Love it! Thanks so much for the wonderful review, Sara. We’re so glad everyone enjoyed!

  12. Carol says

    These are super delicious! I had leftover quinoa “taco meat” so I used that. I didn’t have vegan parmesan, so I used nutritional yeast. The flavours are so good… highly recommend!

  13. Peter says

    The flavor was amazing. Really great. But I was disappointed with the texture, which was rather mushy. Suggestions for making them a bit more firm…breadcrumbs or chunks of torn bread, maybe?

    Thanks!

    • Avatar for Dana @ Minimalist BakerSupport @ Minimalist Baker says

      Hi Peter, sorry to hear you didn’t enjoy the texture. Lentil meatballs will be more tender than traditional meatballs, but yes, breadcrumbs would help them be a bit more firm.

  14. Huola says

    There has to be a better way of ensuring the texture is firm enough. All this drying out of beans and frying-then-baking is too much hassle. Also many people don’t know how to cook quinoa so that it becomes dry. Sloppy quinoa would ruin this recipe. Lastly, do you really think your recipes are more popular because you scatter cliches throughout them? Let’s do this! etc. It puts me off. All said, however, the meatballs are excellent so thank you.

  15. JeniFav says

    So, my son’s girlfriend (both 21) is vegan so I made these as a vegan option and they were delicious! I had to use some dried herbs because my Kroger was out of fresh but it still came out great!

    I also made traditional meet and pork meatballs for the carnivores at dinner and I used the same herb and spice blend with egg and breadcrumbs (gluten-free, since I and another guest can’t have wheat/gluten). Adjusted a bit to account for the flavor meat adds. They tasted amazing, too.

    Both served with a vegan marinara I made from scratch using, of course tomatoes, but also bell peppers and seasoned with tamari and Chinese cooking wine (Shaoxing) and a bunch of other things. Oh, and jalapenos, so it’s a spicy marinara!

    Anyway, this is a great vegan recipe and the herbs and spices work well with meat, too!

  16. Joan says

    Wow, these were great – so much flavor packed into these! I used 1 1/2 tsp. dried oregano and 2 tsp. dried basil (could have used 3). I also omitted the pepper flakes as I am not a fan. Otherwise, I followed the recipe to a T. Next time, I will use a non-stick pan as they did stick a bit when frying, even with the oil.
    I wonder about your serving size. It says it makes 12 meatballs, but I ended up with almost double that. That is fine with me as I prefer smaller meatballs for better portion control.
    So glad I found this recipe. I bet it will make a great veggie burger too!

    • Avatar for Dana @ Minimalist BakerSupport @ Minimalist Baker says

      Hi Sarah, a blender could work, but you will likely need to stop it and stir to keep things moving. Otherwise, you could try finely chopping/mashing, but it might be quite a bit of effort. Hope that helps!

  17. Brooke says

    I don’t like black beans, basil or quinoa, but I love every minimalist baker baker recipe, so I made these on faith!
    These are AMAZING meatballs – easy to make and I followed the recipe exactly. I didn’t use the optional fennel, but did use the Worcestershire sauce. I tasted the raw mix to see if it needed more heat or salt; it was perfect. Searing first added great flavor. I checked at the oven at 24 minutes & they were perfect. I ate two right away, and they were delicious. I’ll be making your sauce & miso risotto this weekend. Thank you so much for this delicious recipe.

  18. Julie L says

    Of all the bean based “meatballs” I have tried this one was definitely the best. They held together, flavor was good, and outside was crispy. I ended up just oiling my pan really well, rolling them in the oil, and then baking them vs pan toasting them first as that step just seemed unnecessary if you oil all sides. All that said I still would not make these as “meatballs” and in my recipe app I relabled as a veggie burger recipe because I definitely prefer these with mayo and mustard as a burger vs with tomato sauce as meatballs, and veggie bugers will also be less work to make.

  19. AMy says

    Hi – just wanted to double check – the quinoa weight is that the dry weight or weight once cooked and cooled? Can’t wait to try these!

    • Avatar for Dana @ Minimalist BakerSupport @ Minimalist Baker says

      Good question, Amy! It’s the cooked and cooled weight. Let us know what you think if you give them a try!

  20. Jane says

    I had to comment because we just had these for dinner and my daughter told me, “these are the best meatballs you’ve ever made!” I made them small, and her and my son ate a BUNCH. So thank you! Also I didn’t have time to make the park so I subbed 1/4 cup nutritional yeast and 1/4 cup ground flax. And i used garlic and onion powder instead of sautéing garlic and shallot (which I’d love to try next time), and baked right away, and it still was delicious!

  21. Amanda says

    I’ve made this several times now and it’s always a huge hit in my house! I put them on some hoagie rolls and do meatball sub sandwiches. By far, the best vegan meatball recipe out there. Thank you!

      • Joanna says

        They are very tasty and a hit at my work Christmas party… everyone wanted the recipe. They did however fall apart. Not sure what I did wrong. I froze the extra ones and just had them with spaghetti but they made more of a “meat sauce”… still tasty and would make them again

        • Avatar for Dana @ Minimalist BakerSupport @ Minimalist Baker says

          Hi Joanna, we’re so glad you enjoyed the flavor! Is it possible you added them to a sauce? These get a little tender in liquid so it’s best to pour a sauce over them when serving instead. Hope that helps!

          • Joanna says

            Definitely the issue. Both times we used them I put them in sauce. The first time was an alternative for swedish meatballs. Will put sauce on after next time.

        • Regina Byrd says

          Just made these for the first time and the flavor is amazing (the Worcestershire sauce is the crowning touch) but they are mushy! I followed directions exactly and pan sautéed first but they did stick some.
          I didn’t put them in sauce – had it made on the side.

          • Avatar for Dana @ Minimalist BakerSupport @ Minimalist Baker says

            Hi Regina, Lentil meatballs will be more tender than traditional meatballs, but to firm them up more, make sure your beans are thoroughly rinsed and dried. We’d also recommend the homemade vegan parmesan vs. store-bought because it’s cashew-based and helps soak up excess liquid. Or, you could try adding breadcrumbs. Hope that helps!