TVP Meatballs (Vegan and Gluten-Free)
These easy vegan TVP meatballs have an authentic meaty taste and texture that will blow you away! They’re quick and easy to make with shelf-stable ingredients and best of all they have a truly meaty flavor without chickpeas, beans, or lentils. If you miss meatballs, you will love this recipe!

Want to save this recipe?
Enter your email below and get it sent straight to your inbox. Plus, get more amazing vegan recipes that will satisfy your cravings!
I’ve tried many types of vegan meatballs over the past 20 years of eating vegan. Most recipes use some type of bean or lentils. They taste good, but they don’t really have a meaty texture or taste of an actual meatball. This meatball recipe uses TVP (textured vegetable protein) to give them a truly meaty texture.
They hold up to baking, frying, or being cooked in a sauce and they can be used on spaghetti, meatball sandwiches, vegan sweet and sour meatballs, or sweet and spicy meatballs.
Why make this recipe
These TVP meatballs are quick and easy to make and since they’re not made with mushy beans or lentils, they have an authentic meaty texture.

Ingredients and substitutions
- TVP – this stands for textured vegetable protein. This is similar to dehydrated tofu. It will soak up the flavor of any broth that you rehydrate it in and has a meaty taste and texture. You can find it in the bulk section of natural food stores or in the Bob’s Red Mill section of most major grocery stores. You can also use Butler Soy Curl crumbles instead of TVP. If you want to learn more about it check out my full guide to cooking with TVP.
- Water – for the base of the broth.
- Soy Sauce or Bragg’s Liquid Aminos – for saltiness and a beefy flavor. For gluten-free meatballs use Liquid Aminos or Tamari.
- Liquid Smoke – for a smoky meaty flavor. This is optional and you can omit it if you don’t have any. You can also use smoked paprika instead if you would like.
- Olive Oil – for moisture and richness. You can omit it for oil-free.
- Italian Seasoning – for flavor.
- Garlic Powder – for flavor.
- Onion Powder – for flavor.
- Flax Meal – to hold the balls together. This acts as an egg would in a traditional meatball recipe.
- Oats or Oat Flour – to hold the meatballs together. You can use whole oats and grind them in your blender or buy oat flour.
- Breadcrumbs – for texture and flavor. Any vegan breadcrumbs will work. You can also crush up vegan croutons or use a vegan stuffing mix like Pepperidge Farm’s cornbread stuffing instead of traditional breadcrumbs. Use gluten-free breadcrumbs for gluten-free vegan meatballs.
How to make meatballs from TVP
Step 1 – Make the broth by heating the water, soy sauce, olive oil, liquid smoke, Italian seasoning, garlic powder, and onion powder in a saucepan.
Step 2 – Once it boils, turn off the heat, add the TVP, and give it a stir.
Step 3 – Add 2 tbsp flax meal and give it a stir again.
Step 4 – Toss 1/3 cup oats in your blender and blend for about 30 seconds then add to the TVP mixture. (If you have oat flour, you can use 1/4 cup instead of whole oats).

Step 5 – Add breadcrumbs to the mixture.
Step 6 – Give it all a good stir and let it sit for about 5 minutes to cool enough to be able to hold the mixture in your hands.
Step 7 – Use your hands to roll the mixture into walnut-sized meatballs.
Step 8 – Place on a cookie sheet, brush with some olive oil, and bake at 375°F for 15-20 minutes.

Alternative cooking methods
Cook in sauce – You can also cook your meatballs directly in your spaghetti sauce. Simply heat the sauce in a shallow pan and simmer for 15 minutes in the sauce. They will absorb some of the sauce flavors this way. Just be careful not to stir the sauce too vigorously or the meatballs may break.
Panfry the meatballs – If you don’t want to wait 20 minutes for them to cook or you want them crispier, you can pan-fry them in a few tablespoons of oil. Cook them over medium heat for about 5-6 minutes rolling them around in the pan frequently so they don’t burn.
Flavor variations
For spicy sausage-style meatballs – add a dash of cayenne pepper, 1 tsp of oregano, and 1/2 tsp of fennel seeds along with the other spices in the broth.
Onion Meatballs – Saute a finely diced small onion in the olive oil until it’s translucent, then add the water and spices and follow the remaining steps of the recipe.
Mushroom Meatballs – Saute 3/4 cup finely diced mushrooms in the olive oil until the juices release, then add the water and spices and follow the remaining steps of the recipe.
Vegan “Honey” Sriracha Meatball – check out this recipe for the best vegan meatball sauce ever.

Serving suggestions
- Over spaghetti – classic spaghetti and meatballs are a favorite!
- In a sandwich – Simmer the meatballs in your favorite spaghetti sauce and then serve on a bun or roll for an amazing vegan meatball sandwich and a super easy dinner!
- With dipping sauce – Sometimes I make these as an appetizer or snack for my kids. They’re delicious dipped in ketchup, vegan BBQ sauce, Korean barbeque sauce, vegan honey mustard, vegan ranch dressing, sweet and sour sauce, or teriyaki sauce. Our favorite is this sweet and spicy meatball sauce.
Sprinkle your spaghetti and meatballs with some homemade vegan parmesan for additional flavor.
How to make them gluten-free
To make these meatballs, gluten-free as well be sure to use Tamari or Bragg’s Liquid Aminos instead of regular soy sauce. Also, swap out the bread crumbs for gluten-free bread crumbs. You can also toast a piece of gluten-free bread to dry it out and break it into crumbs.

Storing and reheating
Refrigerator – These vegan meatballs will keep well in the refrigerator for about 5 days or in the freezer for up to 3 months.
Freezer – You can make up a double or triple batch of these and keep them in the freezer ready to heat and serve. To freeze, bake the meatballs as directed, then keep them on the cookie sheet so none are touching each other, and place them in the freezer for about 3 hours until they are frozen. Take the frozen meatballs off the cookie sheet and place them into a freezer bag, squeeze out as much air as possible, and then freeze in the bag for up to 3 months.
Reheating – Warm the cooked TVP meatballs by reheating on a cookie sheet for about 5-7 min in the oven at 375° F. You can reheat from frozen by heating for an additional 8-10 minutes.

Serve your spaghetti and meatballs with some homemade vegan focaccia bread for a full meal that will impress your guests!
More TVP recipes
I love TVP and use it in tons of recipes. Be sure to check out my guide to TVP. You may also like my guide to using Butler soy curls which are similar to TVP.
- Vegan Sausage Crumbles
- Soyrizo aka Soy Chorizo
- Vegan Ground Beef
- Vegan Sausage Links
- Easy Vegan Taco Meat
- TVP Sausage Rolls

Vegan Meatballs
Ingredients
For the broth:
- 1 cup Water
- 2 tablespoons Soy Sauce, or Bragg's Liquid Aminos or Tamari for GF
- 1 teaspoon Liquid Smoke, hickory flavored
- 2 tablespoons Olive Oil
- 2 teaspoons Italian Seasoning
- 1/2 teaspoon Garlic Powder
- 1/2 teaspoon Onion Powder
Instructions
- Preheat the oven to 375°F (190°C).
Make the broth
- Make the broth by heating 1 cup of water, 2 tbsp soy sauce, 1 tsp liquid smoke, 2 tbsp olive oil, 2 tsp Italian seasoning, 1/2 tsp garlic powder, 1/2 tsp onion powder in a saucepan.
Make the balls
- Once it boils, turn off the heat, add the 1 1/4 cup TVP, and give it a stir.
- Add 2 tbsp flax meal and give it a stir again.
- Toss 1/3 cup oats in your blender and blend for about 30 seconds then add to the TVP mixture. (If you have oat flour, you can use 1/4 cup instead of whole oats).
- Add 1/3 cup of breadcrumbs to the mixture.
- Give it all a good stir and let it sit for about 5 minutes to cool enough to be able to hold the mixture in your hands.
- Use your hands to roll the mixture into walnut-sized meatballs.
Cook the meatballs
- Place on a cookie sheet, brush with some olive oil, and bake at 375°F (190°C) for 15-20 minutes. (You can also pan-fry the meatballs or simmer them in spaghetti sauce.)
Notes
📌 Be sure to follow me on Pinterest for new vegan recipes!
These sound great. Did you ever try using chickpea eggs as the binder? I make a similar meatball using soy curls, but had to use VWG to hold them together because I wanted to cook them in sauce to flavor them and moisten them after baking. I was wondering how the chickpea egg might work instead of the vital wheat gluten flour, which is more processed than I would like.
I use flax eggs and oat flour as a binder. I have tested it with chickpea flour egg and it works well too. Enjoy!
These are a great addition to a plant based person’s recipe collection – I added the following to jazz them up and make them mold well:
1 onion chopped finely and fried lightly
1 big clove of garlic crushed
2/3 cup chopped walnuts or pecans
2 tsp vegan beef stock powder
flour to bind – approx 1/3 cup
Doing this made them stay together and have some texture
Hi to all the cooks out there from me in New Zealand
My sister and I had the same problem with the meatballs crumbling. The taste was very good but we were disappointed that they didn’t hold together even with gentle handling. Can you suggest a solution to try next time?
You can try allowing the mixture to sit longer or even pop it in the fridge for a while before forming into balls. The longer it has to absorb the moisture before cooking, the less they will fall apart.
Monika, recipe didn’t turn out quite right for me. May be user error?! I used “milled” flax seed? The meatballs held together ok so I decided to try to cook them in some sauce. They pretty much disintegrated LOL (and I did not stir them at all, just simmered)! BUT I used it as meat sauce so I didn’t waste it. Maybe I needed to to bake them first then do sauce? Kruse diff flax seed??
Thank you VERY much for this recipe, Monica. I’ve been on the lookout for a good vegan meatball recipe for quite some time; most of the ones I’ve tried before this typically fall apart at some stage in the preparation process. These not only adhere well but have an excellent flavour.
I did make one small change, however; omitted oil and added a tablespoon of water instead. (If any of your readers avoid oil, you can let them know the result is terrific.)
Thanks again.
You’re welcome! I’m so happy that this recipe worked well for you, Rose! 🙂
Wow, WOW, W O W !!! YUMMM !!! Just finished making a double batch even though it’s the first time I’m making it because Monica really has recipes down to a delicious science. I used Milpas brand Carne de Soya texturized soy protein so I had to throw it on the food processer to get the TVP soy smaller. I like a bigger than walnut sized meatball, so my double recipe made 24 3-bite or4-bite meatballs, sooooo delicious! Thanks Monica!
You’re welcome, Eve! I’m so happy that you liked this, and my other, recipes! It makes my day to read comments like this! 🙂
Like the recipe. Thank you Monika
Hi Monica,
Can this recipe be used in lasagna? As meat crumbles? Thanks!
You could use it, but you don’t need the binders (flax meal or oat flour) to hold it together. I use my vegan sausage crumbles or my vegan ground beef recipes in Lasagna. Here are links to those… https://thehiddenveggies.com/vegan-sausage-recipe-pizza-crumbles/ https://thehiddenveggies.com/vegan-ground-beef/
Hi. Would love to try this. What would you substitute to make this gluten free?
Hi Betsy, to make them gluten-free just be sure to use a gluten-free soy sauce like Tamari and swap out the bread crumbs for gluten-free bread crumbs. The rest of the ingredients are naturally gluten-free. Enjoy! 🙂
I will defimitely try your recipe Monica. The one Ive been using currently I add 1/4 cup chopped walnuts in and fry them with a chopped onion. Then I add water/broth, spices and tvp. Add all to a large bowl with 2 pieces of quality hearty nutty bread ripped up and soaked in 1/2 cup soy milk. Mix together, shape into balls (1/4 cup scoop makes nice size) Then bake. Im SO hookd on them. I eat them cold for lunch or as “falafels”….and of course in spaghetti! Yum yum!!!
I’m so happy that you are liking them, Mandy! 🙂
Hi do you soak the TVP before putting them in the broth? Or do you use the broth as the soaking? Thank you!
I use the broth to soak them so that they soak up more flavor. Enjoy! 🙂
can the meatballs be frozen?
Yes, put them on a cookie sheet in the freezer for a few hours, this way they won’t stick to each other, then transfer them to a freezer bag and squeeze out as much air as possible. Enjoy! 🙂
Do they go in the freezer before or after cooking?
You can freeze them either before or after. I usually freeze them after, that way they just need to warm up before serving. If you freeze them before baking, you will need to bake them for about 25 minutes before serving.
Hi. I enjoy your recipes. In the meatballs recipes, you list flax seeds. Are they necessary for the recipe or just an addition for nutritional value? I’m deathly allergic to flax and most other seeds. Thanks so much for your recipes.
Hi Shirley, the flax seeds are used as an egg to bind the meatballs together. You can use ground chia seeds instead of flax. I hope that works for you! 🙂
Hi Monica 🙂 I live alone and was wondering if it’s ok to use half the mix and put the other half in the fridge and make it the following days? Thanks so much!
Hi Sara, yes, that will work fine. The pre-cooked meatballs will stay good for about 3 days in the fridge. Enjoy! 🙂
Monica: This is GREAT news! It’s a lot of meatball mix for one person lol I’m going to bring some to Mom tomorrow. I made them last night and was blown away by how creamy and light they are. Thank you for all you do!!!
Hi, I can’t have oats. Can I skip them or substitute with something else? Thank you!
Hi Sara, if you can’t have oats, you can swap them out for 1/4 cup of flour. Enjoy! 🙂
Do you rehydrate the TVP first or put it in the broth mixture dry?
Hi Tamara, you just put it in the broth mixture dry and let it soak up the flavor of the broth. Enjoy! 🙂
Perfect! Can’t wait to try!!
TVP is one of those ultra processed foods. Do you think lentils would work for this particular recipe!
If you want to use lentils instead, you can make the mixture for lentil loaf and roll it into balls and bake them. This is my lentil loaf recipe: https://thehiddenveggies.com/lentil-loaf/
I loved this recipe but also wondered about the processing of the TVP I buy. Apparently TVP can be made at home from Tofu. I have not tried this myself so I am not sure if the texture would be close enough. https://www.instructables.com/Make-Texturized-Vegetable-Protein-from-Tofu/
Also I found a video for making TVP from soybeans (but it was unclear to me if, or how, the soybeans were “precooked” . I have heard that roasting raw soybeans and then grinding them how soy “flour” is made in some Asian countries)
https://www.youtube.com/watch?v=XDPg4y-fmrs
Not sure if you know about these options Monica?
I have never personally tried these recipes, but I think that they should work to make the TVP Meatballs. Let me know if you try it. 🙂
Yes, TVP is overly processed. I would recommend substituting TVP with crumbled Butler’s Soy Curls (their shape needs chopping or crumbling to simulate a ground beef product.) https://butlerfoods.com/soycurls.html. They are made from the whole soy bean–nothing is left out. However, they would need to be cooked in a broth, because they are not seasoned.
Do you think the meatballs could be cooked in the slow cooker?
or if you cook the meatballs in the pasta sauce, do you still make the broth?
It will probably work in the slow cooker, but I have not tried it yet. I simmer them in sauce on the stovetop with no issue. You will still need to make the broth and follow the directions the same weather you bake them or cook them in the sauce. Enjoy! 🙂
I just made these last night. They are my family’s new favorite meatballs! They have such a nice texture compared to other veggie balls. This recipe is a keeper!
I’m so happy that you liked it, Elizabeth! 🙂
is it 2 tsp or 2 tbsp. flax meal u have both
Thanks for letting me know. It’s 2 tbsp. I just fixed it in the post.
I just read about pulsing them (Butler Soy Curls) in a food processor til they look like crumbles. I think I will try this…..
I usually order the Butler Soy Curls by the box. There is usually a bunch of little broken piece at the bottom that I use as TVP in recipes like this, but pulsing them in the food processor is a great idea!
I am really looking forward to trying these. I believe the only Soy Crumbles Butler Foods sells are “Taco Flavored”, I wish they were unflavored but, is this what you were talking about? Thank you, Mary Beth P.S. We love “Butler’s Soy Curls”……..