This post may contain affiliate links. Please read our disclosure policy.
These vegan meatballs are meaty, chewy, and satisfying in a way that most plant-based recipes never achieve. TVP gives them a genuine meat-like texture, and psyllium binds everything without a gram of gluten! They are seasoned with plenty of garlic, fresh parsley, and thyme, for a deeply savory, herby flavor.

So many of you loved my vegan burger patties and asked for a meatball version, so here it is.
These use the same TVP base, but are seasoned with more herbs, garlic, and shallots, and are fine-tuned specifically for the meatball format. They hold up well whether you’re simmering them in marinara or stuffing them into a sub, and they are perfect for making a large batch ahead of the week.
There is no question that meatballs deserve a permanent spot in everyone’s cookbook, but only if they actually deliver. While I enjoy lentil, bean, or tofu versions from time to time, they rarely nail that dense, meaty bite. This one does and works every single time.
The Last Meatball Recipe You’ll Ever Need
A truly great vegan meatball is one in a million. I’m confident that once you try this one, your quest will be over. Here’s why you should try them:
- They hold up well in sauces: No more meatballs crumbling when they hit the sauce, these hold together well and don’t become soggy in saucy dishes.
- Meaty & slightly chewy: Thanks to the combination of TVP and psyllium, the texture is extra meaty and firm with the right amount of chewiness.
- Herby and perfectly seasoned: Garlic, thyme, fresh parsley, and a few other key seasonings make them savory and packed with flavor. No more bland meatballs!
- Bonus: they’re gluten-free: Assuming you use a gluten-free dark soy sauce (or simply omit it since it’s just there for color), these meatballs are completely gluten-free. No breadcrumbs or vital wheat gluten needed!


🌿 What You’ll Need
Here is what you will need. You can find the exact measurements at the bottom of this post, in the recipe card.

TVP
Textured Vegetable Protein makes the base of these meatballs, giving them that meaty, chewy bite.
I suggest using small TVP chunks, but any kind of shape will work here, since you will process it. One thing to note, though: for accurate and consistent results, weigh your TVP. Do not measure it by cup measurements, as it can be inaccurate.
For one batch of this recipe, you will need 4.6 ounces (130g) of dry TVP.
Vegetable Broth
Since TVP is a dry product, it needs to be rehydrated before use. Instead of rehydrating it with water, you will use vegetable broth to infuse it with flavor and savoriness.
Want a deeper flavor: Use Better Than Bouillon No Beef Base!
White Miso
For umami and saltiness.
Can I use brown miso? Yes, you can use brown miso, but you will need to reduce the amount, as it’s saltier than white miso.
Worcestershire Sauce
Vegan Worcestershire sauce brings depth and a hint of acidity to the seasoning. Remember that traditional Worcestershire sauce is not vegan as it contains anchovies. Use a vegan Worcestershire sauce.
Note: Do not omit it, or your meatballs will be lacking seasoning. It’s essential here.
Thyme, Pepper, and Onion Powder
Onion powder for a mild sweetness, black pepper for earthiness, and thyme for that herby flavor.
Fresh Parsley
I like flat-leaf parsley, but curly will also work.
Dark Soy Sauce & Beetroot Powder
Those two ingredients are optional and only there for coloring. Dark soy sauce makes the meatballs darker, while beetroot powder gives them a pink/red hue.
Is dark soy sauce gluten-free? Most brands are not, but gluten-free options exist, such as Grandmaster Sauce’s Chinese dark soy sauce. Another option is to make your own by mixing 1 teaspoon of tamari with 1/4 tsp of molasses.
Psyllium Husk Powder
Instead of using vital wheat gluten to bind all of the ingredients, I rely on psyllium husk powder, which comes from the plant of the same name. It’s not an artificial gum or emulsifier, it’s entirely natural!
Important note: You must absolutely use psyllium husk powder that comes as a very fine powder. Do not use whole or coarse husk, as those would not bind the ingredients properly.
🥣 Step-By-Step Instructions

- Pour vegetable broth over the TVP. Add the TVP to a bowl and cover with hot vegetable broth.

- Rehydrate it. Allow the TVP to rehydrate for 20 minutes or until soft. Then, drain it and squeeze it to remove moisture.

- Process the seasonings. Add all of the seasonings to a food processor.

- Process for 20-30 seconds, or until a smooth, thick sauce forms.

- Add the TVP. Add the rehydrated TVP and parsley.

- Process. Process for 3-4 seconds or until the TVP is roughly chopped.

- Add the psyllium. Next, sprinkle the psyllium powder over the TVP.

- Process again. Process for another 4-7 seconds or until the mixture resembles ground meat.

- Scoop out the mixture. Use a cookie scoop or measuring tablespoon to scoop out 1 and 1/2 tablespoons of the mixture.

- Shape into balls. Use your hands to shape it into a ball. Repeat with the remaining mixture.

- Pan-fry. Heat a couple of tablespoons of oil in a non-stick skillet. Once hot, add the meatballs.

- Sauté for 6-8 minutes, stirring regularly, until slightly golden bown on the outside.

📔 Thomas’ Tips
Check the texture of the TVP.
For the best results, process the TVP until it resembles fine-ground meat. If it’s processed too little, the texture will remain chunky, and your meatballs won’t hold together well. On the other hand, overprocessing can break it down too much, compromising the meaty texture.
Do not omit the psyllium husk.
It’s a key ingredient here! Without it, you won’t be able to form meatballs – you will just end up with some ground meat.
🌶️ Variations
While I advise against adjusting the ratio of TVP and psyllium husk, you can play with the seasonings. Here are some ideas:
- Italian-style: Add 2 teaspoons of Italian seasoning and an extra clove of garlic.
- Asian-style: Omit the parsley and thyme and add 1 tablespoon of chopped fresh ginger, 1/2 teaspoon five-spice powder, and 1 teaspoon toasted sesame oil. You can then serve them with a sticky soy glaze or char siu sauce.
- Spicy: Incorporate 1/4 teaspoon of chili powder and 1/4 teaspoon of smoked paprika for meatballs with a smoky heat.
You can also play with the herbs! Not into parsley? Use fresh basil! You can also use different dried herbs, such as rosemary, oregano, or marjoram.
🍝 Serving Suggestions
Use these meatballs anywhere you would use meat ones! Serve them in a buttery gravy to make Swedish meatballs, toss them with spaghetti and marinara sauce for a quick dinner, stuff them into subs, incorporate them into vegan banh mi, or use them to make casseroles!

❄️ Storing and Reheating
- To store: You can store these meatballs in the refrigerator for up to 5 days.
- To freeze: Freeze uncooked for up to 2 months. Thaw overnight in the refrigerator before pan-frying.
- To reheat: Heat a tablespoon of oil in a non-stick skillet over medium heat, then cook the meatballs for 3-5 minutes.
💬 FAQs
Air-frying tends to make the meatballs puff a bit, making them softer. Instead, use the bake or reheat function on your air fryer. Wrap the meatballs in aluminum foil and bake at 350°F (175°C) for about 10-12 minutes.
No. TVP is the main ingredient and cannot be replaced.
Yes. Pan-fry them first to seal the outside, then add them to your sauce and simmer for about 10 minutes.



Save this recipe!
Enter your email below and I’ll send it to your inbox!
Plus, you will receive new recipes every week!
Meaty Vegan Meatballs (Gluten-Free)
Ingredients
- 2 cups (130 g) TVP chunks
- 3 cups (720 ml) vegetable broth (hot)
- 1/4 cup (32 g) nutritional yeast
- 1/4 cup (60 ml) water
- 2 tbsp (30 ml) vegan Worcestershire sauce
- 4 tsp (20 g) white miso
- 1 small shallot chopped
- 2 cloves of garlic roughly chopped
- 1 tbsp onion powder
- 1 tsp dried thyme
- 1/2 tsp ground black pepper
- 1 tsp (4 g) sugar
- 2 tsp (10 ml) dark soy sauce (optional, for color)
- 2 tsp beetroot powder (optional, for color)
- 1/3 cup chopped fresh parsley
- 2 tbsp (22 g) psyllium husk powder
Instructions
- Rehydrate the TVP. Add the TVP chunks to a large mixing bowl. Pour the hot vegetable broth over them and let the TVP rehydrate for about 20 minutes, or until soft. Then, drain it and squeeze the chunks between your hands to remove as much moisture as possible. Don't skip this step as it is essential.
- Process the seasonings. Add the nutritional yeast, water, vegan Worcestershire sauce, white miso, shallot, garlic, onion powder, dried thyme, ground black pepper, sugar, dark soy sauce, and beetroot powder to a food processor. Process for 20-30 seconds, or until a smooth, thick sauce forms.
- Add the TVP. Next, add the rehydrated TVP and parsley. Process for 3-4 seconds or until the TVP is roughly chopped.
- Add the psyllium. Add the psyllium husk powder and process for another 4-7 seconds or until the mixture resembles fine-ground meat. Test the mixture: Take some of the mixture and press it between your fingers. It should hold together into a ball. If not, process for another 2-3 seconds.
- Shape into balls. Use a cookie scoop to scoop out 1 and 1/2 tablespoons of the mixture. Shape it into a ball and repeat with the remaining mixture.
- Pan-fry. Heat 2 tablespoons of oil in a non-stick skillet. Once hot, add the meatballs. Pan-fry for 6-8 minutes, stirring regularly, until slightly golden bown on the outside. Serve immediately or add to your favorite marinara sauce!
- You can store these meatballs in the refrigerator for up to 5 days.
Notes
Check the texture of the TVP.
For the best results, process the TVP until it resembles fine-ground meat. If it’s processed too little, the texture will remain chunky, and your meatballs won’t hold together well. On the other hand, overprocessing can break it down too much, compromising the meaty texture.Do not omit the psyllium husk.
It’s a key ingredient here! Without it, you won’t be able to form meatballs – you will just end up with some ground meat.
About the Author
Thomas Pagot is the founder, photographer, and recipe developer behind Full of Plants. He created the blog in 2016 as a personal cookbook for vegan recipes. Through years of recipe development, Thomas has successfully grown Full of Plants into a trusted resource for plant-based recipes.





Leave a Comment