This post may contain affiliate links. Please read my disclosure and privacy policy.
This post may contain affiliate links. Please read my disclosure and privacy policy.
Easy vegan TVP meatballs! They are very high in protein (almost 30 grams per serving), simple to make with pantry ingredients and also grain-free and gluten-free.

Hooray for fall! After months of blazing heat, suffocating humidity, and malevolent mosquitoes, East Texas is, virtually overnight, a tranquil haven. Praise be! Post-church, Kevin, Nick and I spent most of the day outdoors, wandering through the woods, riding bikes, and blowing bubbles.
The cooler weather has reinvigorated my cooking, too. I’ve been meaning to do some experimenting with TVP (texturized vegetable protein) and today felt like the day to do it.
What is TVP?
TVP is an acronym for Textured Vegetable Protein. It is a nutritious alternative to meat that is made from soy (specifically, defatted soy flour). It is a complete protein (it contains all of the essential amino acids), fat-free, gluten-free, and has a neutral flavor that can be use in a wide variety of dishes such as stews, casseroles, meatloaf and burger patties.
TVP is sold in dried form (it looks like bulgur) and is rehydrated to for use in recipes.

I approached my TVP meatballs in much the same way as I would any meatball: lots of flavor from herbs, onion and garlic, a binder (flaxmeal “eggs” to keep it vegan), and equally important, salt.
Recipe Benefits
- Vegan (egg-free, dairy-free)
- High protein (30 grams per serving!)
- High fiber (11.6 grams per serving!)
- Gluten-free
- Grain-free
- Oil-free option
Ingredients
The exact amounts of each ingredient are indicated in the recipe card at the end of the post. Toggle between US Customary (volume) and Metric (weights) for preferred measurement option.
- texturized vegetable protein (TVP)
- flaxseed meal
- boiling water
- 1 tablespoon oil or water
- 1 medium onion
- minced fresh garlic (or 1 and 1/2 teaspoons garlic powder)
- dried Italian herb seasoning
- salt & ground black pepper
- Optional: packed fresh parsley leaves
Step by Step Instructions
Note that the complete directions are also in the recipe card below.
Step 1: Soak the TVP and Flax
The first step is reconstituting the TVP. It’s simple: just add hot water, stir, and let sit for about 10 minutes. The resulting texture is light and fluffy, and has a delicious, nutty aroma (I am so going to develop a power bar with TVP next).

Step 2: Prepare the Aromatics
Next, the aromatics. I used onion, garlic, and Italian herbs (dried). You can change up the herbs (e.g., make these Mexican, Moroccan or Swedish by varying the herbs and spices).
Cook and stir the onions, garlic and herbs until the onions are softened and then add to the bowl of TVP-flax. If you like, add in fresh parsley, too.

Step 3: Pulse in a Food Processor
Every recipe I found for TVP meatballs gave instruction to simply mix the TVP with the other ingredients and press together into balls. I cannot imagine this working, even with added flour, and I noted that reviewers for such recipes remarked that their balls crumbled.
To prevent crumbly balls, I put everything in a food processor and pulsed until the mix started to come together. It still had plenty of texture, and it was a breeze to form into cohesive balls.

Step 4: Shape into Balls
For even meatballs that bake evenly, I reach for my small cookie scoop. This yields perfect 1-inch (2.5 cm) balls with ease.

Step 5: Bake the Meatballs
Last, instead of frying the meatballs, I used the same method I do for meat meatballs: I bake them.
Bake the meatballs on a large baking sheet in a preheated 375F (190C) oven for 15 to 20 minutes until they were golden-brown, firm, and, pardon me for bragging, absolutely, undeniably scrumptious!!!!
Kevin has yet to taste them, but I served them to Nick for dinner, along with some warm marinara to coat and cut spaghetti on the side. As I walked back to the kitchen, Nick yelled, “Mommy, these are YUMMY!!!”
You will love these!

Happy cooking!

Related Recipes

Easy Vegan TVP Meatballs
Ingredients
- 2 and 1/3 cups, 224 g texturized vegetable protein (TVP)
- 3 tablespoons 20 g flaxseed meal
- 2 and 1/4 cups, 560 mL boiling water
- 1 tablespoon 15mL oil OR water
- 1 medium onion, finely chopped
- 1 tablespoon minced fresh garlic, or 1 and 1/2 teaspoons garlic powder
- 1 tablespoon dried Italian herb seasoning
- 3/4 teaspoon fine sea salt, more or less to taste
- 1/2 teaspoon ground black pepper
- Optional: 1/2 cup packed fresh parsley leaves, chopped
Instructions
- Preheat oven to 375F (190C). Spray or lightly oil a large rimmed baking sheet.
- In a large bowl, combine the TVP, flax and boiling water. Let stand 10 minutes.
- Meanwhile, heat the oil (OR water) in a large skillet set over medium-high heat. Add the onion and garlic; cook and stir 5 to 6 minutes until onion is translucent. Add the herbs, salt, and black pepper; cook and stir 30 seconds longer.
- Place the TVP mixture, onion mixture, (optional) parsley in bowl of food processor. Process until mixture just begins to hold together.
- Shape mixture into 1 inch (2.5 cm) size meatballs ( a small cookie scoop works perfectly).
- Arrange balls on prepared sheet.
- Bake in the preheated oven for 15 to 20 minutes until browned. Serve as you would any kind of meatball (e.g., with sauce, noodles, as a snack, etc.)




























Awesome blog.
Thanks, Vanessa!
Very good. Not all of them stayed together in the sauce, but then they turned into a meat sauce. So that was fine.
I think the key is really pressing the mixture into the cookie scoop after mixing it in the food processor. I think most people who aren’t used to flax eggs aren’t used to doing this type of thing. And theirs really did fall apart.
I did a half batch, but didn’t cut down on the flaxmeal. I think that helped.
I am so glad you like the recipe, Judy. Thanks so much for sharing your tips for packing the meatballs.
A THOUSAND thank yous!!! I have been looking for a meatball recipe with TVP that doesn’t have grains.
I eat low-carb and stay away from grains. I can’t use flour because of the gluten.
I hate experimenting because I could lose expensive ingredients
I can’t wait to try this. I’m putting it on the menu for next week! Thank you again and again.
Wonderful, Judy! I hope you like the meatballs 🙂
Hi Camilla,
Can i know what sort of TVP are you using? is it so, wheat or pea based? thanks !
I’ve made it with both, Sarah and it works great with either (I prefer the pea protein :))
Just reply is confusing me. Because I can’t eat wheat. I just checked the label of Bob’s Red Mill TVP. It has soy flour – neither wheat or pea.
Hi Judy,
I am not sure I am understanding this comment (not sure what you are referring to regarding “just reply” and wheat) Just let me know, thanks Judy.
These turned out delicious! I would recommend turning or rotating a few times while baking because mine got a bit dark on the bottoms. Otherwise great texture and great flavor! I will definitely be using this as a base recipe to play with spices.
That’s great, Mandy! An oldy but a goody. Thanks for sharing your tips, that’s wonderful 🙂
Can I substitute soy pulp left over after milking soybeans?
Hi Anjani! Apologies, I really do not know. I am not familiar with soy pulp and really don’t know how it compares to TVP. Perhaps you could google to see if it is something others have tried using as a meat substitute?
I added home made bread crumbs (fennel bread) & omitted cumin. Yummy! I am adding them to a sweet & sour sauce. Also, I did use the flax-egg. I added the extra crumbs to ensure they stuck to their shape.
I’ve been making tcp “meatballs” for quite some time using flour (which I will no longer do, thanks to you!) but never had the idea of putting the mixture into a blender. Nor did I ever hear of the flaxen meal mixed with water being used in the place of eggs. It’s been an educational experience reading this recipe. Thanks!
you are so welcome, George!
I just made these ton and they’re delidelicious! Thanks for the recipe!
Great! So much better and cheaper than pre-made, right!
Just made these – I added sesame oil and some powdered ginger and some panko crumbs for a crunchier texture – absolutely delicious! I am traveling to Korea next week so I bought some tvp to travel with and make these there.
Wow, sounds great, Janet! 🙂
I just tried this tonight and wanted to say “Thanks!” for the fantastic recipe. I will definitely make this again.
I don’t know what I did wrong…mine were soft & when I added spaghetti sauce, they turned to mush 🙁
@Rachel Zacherl,
Mine were also tasty but a fallen apart mush. did you very find out how or why they don’t stick together. I’d like to try again just not sure what to change… thanks
Hi Randy,
Sorry you had problem with the meatballs holding together. Did you process the mixture in a food processor, as indicated? Together with the flaxseed meal, they always hold together nicely.
I found that really packing it into the cookie. Scoop really helps.
I made these this afternoon and they’re so good! i ended up throwing in a little bit of oatmeal and an extra egg to help hold it together, but I’ll definitely be using this recipe again.
Just made these ….perfect recipe no flour added and I also made them into Pattys and will use as a Veggie Burger too
As a vegan, I choose not to use eggs in my recipe. Instead I substitute with 1/4 c of stone ground wheat flour and 1/4 c of vital wheat gluten. Combine the two dry ingredients (sifted), add to the mixture and stir thoroughly. If you calculate the total protein content from the TVP, Wheat flour, and Vital Wheat gluten, you will have 117g of protein. that is about 3.9g of protein per meatball.
Since there is no eggs, there is less fat (even though olive oil gives us healthy fats, they can still be abused when used too often). so the total fat content is found in primarily the oil, at 27g. that gives us 0.9g fat per meatball (sorry your original fat calculation was wrong. was actually 1.23g fat with the eggs). Which is composed of 72% monounsaturated fat, 9% polyunsaturated fat, and 14% saturated fat. I use safflower oil so that I have only 6% saturated fat 😀 . Both oils are great as they provide healthy fats that help to facilitate the protein to your muscles (unlike saturated fats).
This is a great recipe and I commend you for taking the time to develop it on your own. I added two ingredients to mine for added nutrition: 1/2 c minced walnuts and 1/2 c crushed dry roasted sunflower seeds (I grow sunflowers and roast them myself). this gives it a nice firmness and adds a little nuttiness to the flavor
Just great! Delicious, perfect, yummy. Thank you for tonight’s dinner. Carol in VA
Thanks Margaux! Glad to have you visit!
This is a great blog! Very informative…and looks delicious 🙂
Those look great. With all the flavorful add-ins I’m not surprised that they were a hit in your household. I love TVP for all the reasons you mentioned. It’s also great in sloppy joes.
Great idea….sloppy joess
Great idea…sloppy joes!!!
I’ve never used TVP before, but it’d be a good excuse to get some so I can try this recipe–love the looks of it!
These look great! Awesome pictures! I’ve been going meatless a lot more now too. Nice to know what you’re eating!
Thanks, Flatout Jim! Hope you try them, they are so good, and so much chepaer than real meatballs, or the ready-made meatless meatballs (the latter are often LOADED with crazy ingredients).
I’ve had a hard time finding a nutrition calculator that has TVP–will have to add it to a calculator and will post when I calculate all!
These look excellent. Cheaper and I bet healthier than full er MEAT versions. (I wonder how much is real meat)
Love to give em a try. Any idea the nutrient breakdown?