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
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
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.
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.
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.
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.
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).
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.
Our Best Vegan Meatballs
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.
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 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.