Our Best Vegan Meatballs

These are the best vegan meatballs we’ve tasted. Thanks to a mixture of lentils, mushrooms, onion, and garlic, they are tender and incredibly flavorful. Our entire family loves this recipe. In fact, since creating the recipe, we’ve made these meatballs once a week. Get ready to fall in love!

Watch the video

Vegan Meatballs Recipe Video

Related: We love these veggie burgers!

I’m over the moon with these vegan meatballs (can you tell!). They are most similar to Italian-American style meatballs and call for Italian seasoning, garlic, and fennel for flavor. I love serving these with bread like focaccia and making a meatball sub or on top of noodles — I especially like these zucchini noodles or this vegetable spaghetti.

How to make the best vegan meatballs we’ve ever had

The base for these plant-based meatballs is lentils — which, if you don’t already know, we love — see our lemony lentil soup and our ultimate guide for cooking lentils for reference.

In addition to the lentils, we add an umami-rich mixture of finely chopped and cooked mushrooms, onions, and garlic. The combination of meaty lentils and the savory-sweet mix of mushrooms and onions takes these vegan meatballs from okay to absolutely delicious. Trust me.

We’ve used beans to make meatless burgers, like these black bean burgers or these veggie burgers, but beans were not the answer for this meatball recipe. Lentils were, more specifically, nearly cooked lentils were.

The trick to the best texture is to cook the lentils to al dente (just like when you cook pasta).

We don’t want super soft lentils for this. They work, but the inside of the meatball will be a bit mushier than we’d like it to be. On the other hand, using perfectly cooked lentils keeps the texture of each ball firmer, which means the balls hold together nicely.

I love using green lentils (also called French Lentils or Lentilles du Puy) in this recipe since they are already more firm than other lentil varieties.

When the lentils have cooked, spread them out on a baking sheet to air dry. The less moisture we add to the meatball mixture, the better.

A bowl of the best vegan meatballs I've ever had

So, here’s the rundown of our method. It might look like many steps, but everything is easy, and you can do a few of the steps in advance.

Cook green lentils (15 – 20 minutes), and then air dry. When testing this lentil meatball recipe, we found that spreading the cooked lentils out on a baking sheet and letting them air dry for a few minutes got rid of excess moisture. The less moisture we add to the meatball mixture, the better.

Finely chop and cook a mixture of onion, mushroom, garlic, and spices. We use a similar mixture when making our turkey meatloaf. That’s a completely different recipe to this one, but the purpose of the mushroom mixture is the same: to add lots of flavor.

Lentil meatball mixture

Use a food processor to blend the lentils with the onion-mushroom mix, breadcrumbs, flaxseed meal, and nutritional yeast. I pulse the processor quite a bit so that the mixture easily forms into balls.

Here are two photos: The first looks blended, but when I tried to form the balls and cook them, they started to fall apart.

Meatball mixture needs more blending.

The second photo is after pulsing the mixture a few more times (see how it’s more blended). When I formed and cooked the balls using the mixture in the second photo, the balls held together perfectly.

Perfect consistency for vegan meatballs that don't fall apart.

Last step, form the mixture into balls and cook. We found that cooking them on the stovetop was best for the loveliest and crispiest exterior texture. However, you can bake the meatballs (directions are below).

Cooking vegan meatballs on the stove

Once the meatballs are cooked, enjoy them however you like. We usually toss them with some warm marinara sauce or serve on top of this veggie pasta.

Make ahead tips

There are a few steps in this recipe that can be done in advance:

  • Cook the lentils in advance, and then keep in an air-tight container in the fridge up to three days.
  • Cook the onion-mushroom mix, and then keep in an air-tight container in the fridge up to three days.
  • The meatball mixture can be made a day in advance. Keep it tightly covered in the fridge.

And that’s it, our favorite vegan meatballs. We hope you try them soon.

Homemade Vegan Meatballs

Our Best Vegan Meatballs

  • PREP
  • COOK

These vegan meatballs are tender and flavorful, thanks to a mixture of lentils, mushrooms, onion, and garlic. See our article for tips on making them in advance. You can cook the lentils up to three days in advance and keep the meatball mixture in the fridge overnight.

Makes 18 to 20 meatballs

Watch Us Make the Recipe

You Will Need

1 cup uncooked green lentils, also called French Lentils or Lentilles du Puy

1 tablespoon olive oil

4 ounces mushroom, 1 portobello mushroom cap

4 ounces onion, 1/2 medium onion

2 garlic cloves

2 teaspoons fennel seed

2 teaspoons Italian seasoning

2 teaspoons mushroom powder, optional, see our notes

3 tablespoons ground flaxseed

3 tablespoons water

1/4 cup nutritional yeast

1/2 cup breadcrumbs, we love panko breadcrumbs

Fine sea salt and fresh ground black pepper


  • Prepare Lentils
  • 1Rinse 1 cup of lentils, and then place in a medium pot and cover with two to three inches of water. Bring to a boil, then reduce to a simmer, cover, and cook until tender, but before they become mushy, about 20 minutes.

    2Drain, and then spread onto a baking sheet to air dry before using. If you are making these in advance, transfer lentils to an air-tight container and refrigerate for up to three days.

  • Prepare Mushroom and Onions
  • 1Cut mushroom and onion into large chunks, and then add to the bowl of a food processor. Add the garlic cloves. Pulse until finely chopped.

    2Heat oil in a large skillet over medium-low heat. Add the mushroom-onion mixture and cook, occasionally stirring, until starting to soften; about 2 minutes.

    3Stir in 1/2-teaspoon of fine sea salt, Italian seasoning, fennel seeds, mushroom powder (optional), and 1/2-teaspoon of pepper. Cook until the mushrooms give off their liquid and it boils away; another 5 minutes.

  • Prepare Meatballs
  • 1Wipe out the bowl of the food processor, and then scatter the flaxseed meal, three tablespoons of water, nutritional yeast, and breadcrumbs over the bottom of the bowl and leave it alone for 5 minutes.

    2Pulse a few times to blend. Next, add the onion-mushroom mix and cooked lentils, and pulse until the mixture is well blended — see our photos in the article for reference. The mixture should look mostly blended together and almost smooth.

    3Form the mixture into balls, about 1 ounce each—cook as desired.

  • Cooking the Meatballs
  • 1Stovetop method: Heat a few tablespoons of olive oil in a wide skillet over medium heat. Gently place the meatballs into the oil and cook, occasionally turning them until well browned and heated through on the inside. Serve with warmed marinara sauce.

    2Baking method: Heat the oven to 375 degrees Fahrenheit. Line a baking sheet with parchment paper or a silicone baking mat. Arrange meatballs on the baking sheet and spray or lightly drizzle with oil. Bake until browned and heated through; 20 to 25 minutes. Serve with warmed marinara sauce.

Adam and Joanne's Tips

  • Mushroom powder can be purchased in specialty stores on online. You can also make it yourself. Here’s our mushroom powder recipe!
  • Nutritional yeast is a dairy-free, flaky ingredient that tastes nutty, savory, and cheesy. It’s a nutrient powerhouse and we love the added flavor it provides the meatballs. You can leave it out or if you are not vegan, can substitute with 1/4 cup finely grated cheese.
  • To make these gluten-free, use GF certified ingredients and substitute rolled oats for the breadcrumbs. Use 1/3 cup of rolled oats and then add more if needed.
  • Nutrition facts: The nutrition facts provided below are estimates. We have used the USDA database to calculate approximate values. We did not include any oil required for cooking them since you can choose to cook on the stove or in the oven.
Nutrition Per Serving Serving Size Three meatballs (18 total) / Calories 223 / Total Fat 5.6g / Saturated Fat 0.7g / Cholesterol 0mg / Sodium 366.9mg / Carbohydrate 32.5g / Dietary Fiber 6.8g / Total Sugars 2.5g / Protein 12.4g
AUTHOR:  Adam and Joanne Gallagher
Inspired Taste Newsletter Signup
21 comments… Leave a Review
  • Ashley Winter November 16, 2023, 8:52 pm

    Hi! I think it’s missing a step about adding the mushroom blend back into the food processor. All I can see is having the mushroom mixture on the stove and then the next stage is adding the dry ingredients to the food processor & adding the lentils. I’m assuming you add in the mushroom mixture with the lentils? I’m making these now so this is what I’ll do 😄

    • Joanne February 15, 2024, 4:00 pm

      You’re absolutely right! The step to add the mushroom mixture back into the food processor seems to be missing. Thank you for catching this. I’ll be sure to update the recipe instructions to include this important step. You add them with the lentils. Let me know how they turn out!

  • Lorena March 17, 2023, 9:18 am

    Can I boil the meatballs instead of baking them?

    • Joanne July 19, 2023, 2:15 pm

      Hi Lorena, Stovetop instructions are in the recipe below. We only recommend that you gently simmer the meatballs in sauce since they will likely fall apart if boiled.

  • Adam November 8, 2022, 2:27 pm

    Hi Andrea, these are more delicate than meatballs made with ground meat. We have provided our best tips for making meatless meatballs that hold together in the article above.

  • TJ May 17, 2022, 6:35 pm

    These look fantastic! I’m wondering if they would be good with a sweet and sour sauce (or even the hot honey sauce used for your chicken meatballs, which are unreal by the way).

    • Joanne February 15, 2024, 3:55 pm

      YES! I actually think those sauces would be delicious with these meatballs. Great idea!

  • Erica April 21, 2022, 10:30 pm

    Hi Adam and Joanne, These look wonderful. Can you freeze them (either uncooked or cooked?). I made your buckwheat pancakes today and they were fantastic. Thanks for a great recipe.

    • Joanne April 22, 2022, 1:33 pm

      Hi Erica, You can freeze them. I like to freeze cooked, but either should work.

  • Jane February 26, 2022, 11:20 pm

    Even though I’m not fully vegetarian or vegan I try to incorporate more lentils, grains and beans to my diet and less animal protein. This was very tasty and has a great melt-in-your-mouth texture! I made the full batch, then individually froze them so I can take out a few meatballs at a time to use whenever I need.

    • Joanne February 15, 2024, 3:56 pm

      That’s wonderful! I love that you’re adapting the recipe to fit your needs, and the individual freezing idea is so smart. So happy you enjoyed them!

  • brenda franklin February 16, 2022, 3:33 pm

    Hi there. Can these meatballs be frozen? Thank you.

    • Joanne April 22, 2022, 1:33 pm

      Hi Brenda, Yes, we prefer to freeze them after cooking them.

  • Tiny February 9, 2022, 9:28 pm

    These are great! I made them with our vegan spaghetti and they were the perfect compliment. The texture and taste is very meat-like 🙂

    • Joanne February 15, 2024, 3:56 pm

      That’s wonderful to hear! So glad the meatballs made a perfect addition to your vegan spaghetti. Love that you found them similar to real meat!

  • Mrs. Rosie May January 26, 2022, 6:34 am

    Hi, Thanks for the lovely recipe. Can canned lentils be used at all please?

    • Joanne April 22, 2022, 1:35 pm

      Hi there, Yes, canned lentils work. One tip, though, is that this recipe works best when the lentils are patted dry. You can spread them out on a baking sheet and let them air dry a bit or slide into a 350F oven and bake for 5 minutes so remove some excess moisture.

  • Julia Button January 13, 2022, 7:50 pm

    Hi Adam and Joanne, Love your approach and I make several of your recipes regularly (with tweeks sometimes of course) I don’t know if you’ve realised but in this one you’ve missed out adding the mushroom mixture before rolling the mix (it’s in the full text but not the recipe instructions)

    • Joanne February 15, 2024, 3:59 pm

      You’re absolutely right! Thanks so much for the heads-up – I’ll get that fixed in the recipe instructions right away. Appreciate you catching that!

  • J January 12, 2022, 7:58 pm

    Thanks for helping, sharing with your recipes!

    • Joanne February 15, 2024, 3:59 pm

      My pleasure! Hope you enjoy the recipes.


Leave a Reply

Leave a Review

Your email address will not be published. Required fields are marked *

Rate this recipe!


All comments are moderated before appearing on the site. Thank you so much for waiting. First time commenting? Please review our comment guidelines. You must be at least 16 years old to post a comment. All comments are governed by our Privacy Policy & Terms.

Previous Post: Next Post: