This vegan meatball recipe is surprisingly easy to make and the results are SO good! Imagine meaty, firm, and flavorful vegan meatballs that won't fall apart and are perfect for spaghetti, meatball subs, and more! They're low in fat and high in protein thanks to TVP, black beans, and vital wheat gluten (seitan). You'll also love that these vegan meatballs are made with pantry-friendly ingredients that are easy to keep on hand, so you can whip up a batch in no time!

You're Gonna Love These Vegan Meatballs!
After sharing these air fryer veggie burgers last week, someone asked if I thought the mixture would work well for vegan meatballs. Ahhh, such a great idea!
That recipe uses a blend of beans, TVP (textured vegetable protein), and vital wheat gluten, the key ingredient in seitan.
To make the meatballs even meatier than the veggie burgers, I increased the amount of vital wheat gluten. And for extra flavor, while still keeping the recipe easy to prepare, I added Italian seasoning and increased the nutritional yeast.
The result is the most satisfying, meaty, delicious, and easiest vegan meatballs I can imagine! They're quick, affordable, made entirely with pantry-friendly ingredients, and perfect for sandwiches and vegan spaghetti!
Just mix everything together in a bowl, form into meatballs, bake, and toss with sauce. No chopping or special equipment required!
Need a gluten-free option? Check out these tofu meatballs.
Jump to:

Ingredients
- black beans - I used canned beans. The veggie burger recipe that inspired these meatballs calls for either black beans or kidney beans. Technically you can use pretty much any bean here, but I opted for black beans so the meatballs have a more traditional color.
Refried beans are another option, and then there's no need to mash! - TVP - textured vegetable protein is usually easy to find in the bulk bins at the grocery store. I order this TVP by Anthony's online. TVP is a really versatile ingredient. You can also use it to make vegan Cincinnati chili, TVP taco meat and so much more! Just type "tvp" in the search bar here on the site for more ideas.
- vital wheat gluten - sorry, but there's no substitute for this particular recipe. In case you're not familiar with seitan, this is a high-protein flour created from wheat. I have an entire seitan category if you need other ways to use vital wheat gluten.
- soy sauce - adds saltiness and umami.
- apple cider vinegar - just a touch adds interest and flavor.
- Italian seasoning - this is an herb blend consisting of oregano, marjoram, rosemary, thyme, basil, and sage. It has become one of my must-haves in my spice rack. It's great for vegetable soup, vegan ricotta and lasagna!
- smoked paprika - adds a naturally smoky flavor.
- almond butter - adds fat and moisture. Feel free to substitute olive oil for a nut-free option.
- nutritional yeast - adds savory flavor and umami and tenderizes the meatballs. I use this nutritional yeast by Sari Foods.
See recipe card below for quantities and the full recipe.
Want to save this recipe? 📩
Keep an eye out for more delicious recipes. Unsubscribe anytime.
How to Make Vegan Meatballs

- Mash the beans with a fork.
- Add TVP, hot water, soy sauce, and apple cider vinegar and stir well. Let sit 5 minutes.
Preheat the oven to 350 degrees F (176 C) and line a baking sheet with parchment paper or a silicone baking mat.

- Add the nutritional yeast, almond butter, and herbs and seasonings. Stir to combine.
- Add vital wheat gluten and mix with your hands. Knead for about 30 seconds to develop the gluten strands.

- Form into balls using 1 ½ tablespoons of mixture for each one. You should end up with 22 to 24 meatballs. Bake for 13 minutes, flip the meatballs, and bake for another 15 to 17 minutes. They're done when crisp on the outside, firm, and piping hot in the middle.
Tip! If you have less than 22 meatballs, this means they're too large and won't cook through evenly. Pinch off some of the mixture from larger ones to create additional meatballs.
Equipment
A 1.5 tablespoon cookie scoop comes in handy for creating evenly sized meatballs. Or use a measuring spoon and use 1 ½ tablespons of the mixture for the first two or three meatballs. Then you can use those as a guide and eyeball it for the rest.
You'll also need a mixing bowl, fork, baking sheet, and parchment paper or a silicone mat.
FAQs
Plant-based meatballs can be made with a variety of different ingredients. The key ingredients in this recipe are vital wheat gluten (seitan), TVP (textured vegetable protein), and mashed black beans for binding and moisture.
Unfortunately, no. As the recipe is written, vital wheat gluten is essential for holding the vegan meatballs together and giving them a firm and meaty texture. It's possible that chickpea flour could work, like in my tofu meatballs recipe, but I haven't tested it yet in this recipe.
Yes. If you don't think you'll finish the meatballs within 5 days, place in an airtight freezer-safe container and freeze for up to 2 months. Thaw overnight in the refrigerator and reheat in a microwave, saute pan, or air fryer (with a bit of water added to the bottom to keep them from drying out).
Top Tips
If you've ever made seitan, you know that the uncooked dough tends to have a gummy, stretchy consistency instead of being firm.
Since these meatballs are essentially seitan (though they do include TVP and other ingredients), it's best to keep them fairly small in size. Otherwise, the outsides may over-cook before the centers are done.
I haven't experimented yet with steaming the meatballs, but that would add moisture and might allow for larger sized meatballs. If you give that a try, let us know in the comments.
More Meaty Vegan Recipes
I hope you enjoy these easy vegan meatballs. If you try the recipe I would love to hear from you. Be sure to comment below and let us know!
Recipe Video
Tap to play the video and see how quickly the meatballs come together!
Recipe

Vegan Meatballs (Meaty, Firm and So Easy)
Ingredients
- ¾ cup cooked black bleans, rinsed and patted dry - or use ⅔ cup refried black or pinto beans
- 1 cup TVP (textured vegetable protein)
- ¾ cup hot water
- 2 Tablespoons soy sauce
- 1 Tablespoon apple cider vinegar
- 3 Tablespoons nutritional yeast
- 2 Tablespoons smooth almond butter - or 1 ½ tablespoon oil for nut-free
- 1 Tablespoon Italian seasoning blend
- 1 teaspoon garlic powder
- ½ teaspoon onion powder
- ½ teaspoon smoked paprika
- ¼ teaspoon fennel seed, lightly crushed
- black pepper to taste
- ¾ cup vital wheat gluten - no subs; this is essential to the recipe as written
Instructions
- In a mixing bowl, fully mash the beans with a fork so there are no large pieces. Add the TVP, hot water, soy sauce, and vinegar. Stir well and let sit for 5 minutes to hydrate the TVP.
- Preheat oven to 350 degrees F (176 C), and line a baking sheet with parchment or a silicone mat.
- To the bowl, add the nutritional yeast, almond butter, Italian herbs, garlic powder, onion powder, paprika, fennel seed, and black pepper. Mix well.
- Add the vital wheat gluten. Get in there with your hands and squish and squeeze the mixture together so everything is fully incorporated. Knead the mixture in the bowl for about 30 seconds to develop the gluten.
- Using a scant 1 ½ tablespoons per meatball, scoop or pinch off pieces of the mixture and squeeze in your hand to compact it. Roll between your palms to form a ball. You should end up with 22 to 24 meatballs. It's important not to make the meatballs any larger than this or they won't cook uniformly. Place on the baking sheet.
- Bake for 13 minutes, then carefully flip the meatballs. Bake for another 15 to 17 minutes or until crisp and dry on the outside and piping hot in the center. Note: Meatballs on a silicone mat will require a few more minutes than ones baked on parchment. Also, the meatballs should be dry and crisp on the outside. Once they're coated in sauce they'll be perfect!
- Serve vegan meatballs with pasta and marinara, tossed in mushroom gravy, or with sauce on a meatball sub.
Notes
Estimated Nutrition (per serving)
Nutrition information is an estimate and will vary depending on the exact amounts and specific products and ingredients used.








Laura says
I am obsessed with these vegan meatballs. I used to buy pre-made frozen ones but the price pretty much doubled so I have been trying to find a recipe that is similar. I have to say, this recipe is the winner! They taste amazing, they don't fall apart, they freeze and defrost beautifully - love love love! Plus, a giant bonus, 24 grams of protein per serving is amazing! I have been sharing this recipe with everyone, thank you for such a great recipe!
Holly says
This recipe was a winner with my family. They are tasty and satisfying. I love to make them ahead of time. I simmered them in pasta sauce, add roasted bell peppers and made sandwiches with them. Also great with pasta. The fact that they don't fall apart, can be frozen and stored, and are high in protein also makes them a great addition to my repertoire! Thank you Lori for another wonderful recipe.