• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • About
    • About Sam
    • FAQ's about veganism
    • Press
    • Contact
      • Reader Inquiries
      • Business Inquiries
  • Cookbooks
  • Seitan School
  • Recipes
    • Recipe Index
    • Video
  • Start Here

It Doesn't Taste Like Chicken logo

menu icon
go to homepage
  • About
  • Cookbooks
  • Courses
  • Recipes
  • Start Here
    • Amazon
    • Facebook
    • Instagram
    • Pinterest
    • YouTube
  • search icon
    Homepage link
    • About
    • Cookbooks
    • Courses
    • Recipes
    • Start Here
    • Amazon
    • Facebook
    • Instagram
    • Pinterest
    • YouTube
  • ×
    Home » Recipes » HOMEMADE VEGAN MEATS

    Sam TurnbullAuthor: Sam Turnbull Updated: June 14, 2026

    Vegan Meatballs (Easy, Protein-Packed & Perfectly Meaty)

    4.96 from 46 votes
    | 88 Comments
    Save Saved! Pin Comments ↓ Jump to Recipe

    These easy vegan meatballs are hearty, flavorful, and packed with protein. Made with pantry-friendly TVP (textured vegetable protein), they bake up tender and meaty with lightly crisp edges. Perfect for spaghetti, meatball subs, bowls, or appetizers, and they freeze beautifully for meal prep.

    Bowl of spaghetti and meatballs with text overlay that reads vegan meatballs.

    I know "textured vegetable protein" doesn't exactly sound appetizing. But hear me out: this inexpensive pantry ingredient makes the BEST vegan meatballs. Unlike a lot of vegan meatball recipes made with beans or lentils (which can sometimes turn out mushy) or pricy store-bought vegan ground (which isn't always very healthy), TVP creates a chewy, hearty, meaty texture that gets crispy on the outside while staying tender in the middle. Plus, it's shelf-stable, high in protein, and made from just one ingredient: soy flour. I always keep a bag in my pantry for recipes like this and my reader-favorite Vegan Breakfast Sausage Patties. If you are new to TVP, don't be afraid to try it! It is so convenient and delicious.

    Vegan meatballs on sheet pan with fresh basil.

    Why These Vegan Meatballs Are the Best EVER

    • Amazing meaty texture: TVP gives these meatballs a hearty, chewy texture without needing expensive store-bought vegan meat.
    • Budget-friendly: These homemade vegan meatballs are cheaper than packaged vegan meatballs or plant-based ground.
    • Protein-packed: TVP is naturally high in protein, making these meatballs hearty and satisfying.
    • Made with pantry staples: No special vegan meats required. Just simple ingredients you can keep on hand.
    • Perfect for meal prep: They freeze beautifully and reheat like a dream too.
    Ingredients for vegan meatballs.

    Ingredients for Vegan Meatballs

    • Olive oil: Or use broth or water for an oil-free version.
    • Yellow onion and garlic: Chop the onion finely and mince or press the garlic so it blends seamlessly into the meatball mixture.
    • TVP granules: You can find these in the health food section of your grocery store, in health food stores, or you can buy them online.
    • Broth: Vegan beefless broth gives the richest flavor, but mushroom or vegetable broth also works well.
    • Soy sauce: Use tamari for a gluten-free version.
    • Nutritional yeast: For savory depth and a little cheesy flavor.
    • Seasonings: Dried basil, whole fennel seeds, and black pepper.
    • All-purpose flour: Helps bind everything together. Use an all-purpose gluten-free flour blend if needed.

    How to Make Vegan Meatballs

    Cooking onions in skillet.
    1. Sauté the Aromatics: Heat olive oil in a large skillet over medium heat. Add the onion and garlic and cook until softened and lightly golden.
    Pouring broth into pan with TVP, onions, and garlic.
    1. Hydrate the TVP: Stir in the TVP, broth, and soy sauce. Bring to a simmer, then cover and cook until the liquid is absorbed and the TVP softens.
    Flour added to pan of TVP mixture.
    1. Season and Bind: Remove from heat and stir in the nutritional yeast, basil, fennel seeds, and black pepper. Add the flour and mix until a dough forms that holds together when pressed. If the mixture feels too wet, add another tablespoon of flour. If it feels dry, add a splash of broth or water.
    Vegan meatballs shaped with cookie dough scoop.
    1. Shape the Meatballs: Let the mixture cool slightly, then roll into meatballs about 2 tablespoons each. A cookie scoop works well for evenly sized meatballs.
    Vegan meatballs on parchment lined baking sheet.
    1. Bake: Place the meatballs on a parchment-lined baking sheet and lightly brush or spray with oil. Bake at 400°F for 30 to 35 minutes, turning them a few times during baking, until browned and firm on the outside.
    Vegan meatballs in skillet of marinara.
    1. Use: Add tp marinara sauce and serve over pasta, use them in a vegan meatball subs, enjoy them as an appetizer, or munch on them straight from the pan.

    Tips and Variations

    • Don't skip the resting time: Letting the mixture cool slightly before rolling makes it much easier to shape and helps the meatballs hold together better.
    • The mixture should feel like cookie dough: If it's too wet, add another tablespoon of flour. If it's too dry or crumbly, add a splash of broth or water.
    • Wet your hands: The mixture can be a little sticky while shaping, so lightly damp hands make rolling much easier.
    • Bake before simmering in sauce: For the best texture, bake the meatballs first so they hold together nicely, then simmer them in marinara.
    • Air fryer option: Air fry at 370°F for 18 to 24 minutes, shaking a few times during cooking, until browned and firm.
    Vegan meatball being scooped out of skillet with spoon.

    Ways to Serve Vegan Meatballs

    These vegan meatballs are so versatile! Here are a few of my favorite ways to serve them:

    • With spaghetti and marinara
    • Stuffed into meatball subs with melty Vegan Mozzarella
    • Served as an appetizer with dipping sauce (try my Vegan Grape Jelly Meatballs)
    • Tossed into pasta bake
    • Added to grain bowls
    • Paired with Garlic Mashed Potatoes and Vegan Mushroom Gravy

    Storage and Freezing

    • Fridge: Store leftover vegan meatballs in an airtight container in the fridge for up to 4 days.
    • Freezer: Let the meatballs cool completely, then freeze them in a single layer before transferring to a freezer-safe bag or container. Freeze for up to 3 months.
    • Reheating: Bake from frozen at 375°F for 15 to 20 minutes until heated through, or simmer directly in sauce during the last few minutes of cooking.
    Vegan meatball on fork with bite taken out to show texture inside.

    If you try this vegan meatballs recipe, let us know by leaving a comment and rating it. I'd love to see what you made. Share your creation in the It Doesn't Taste Like Chicken Community (this is where we're all hanging out now!) or tag @itdoesnttastelikechicken on Instagram.
    Bon appetegan!
    Sam Turnbull. 

    Bowl of spaghetti and meatballs with text overlay that reads vegan meatballs.
    4.96 from 46 votes
    (click stars to vote)

    Vegan Meatballs (Easy, Protein-Packed & Perfectly Meaty)

    These easy vegan meatballs are hearty, flavorful, and packed with protein. Made with pantry-friendly TVP (textured vegetable protein), they bake up tender and meaty with lightly crisp edges. Perfect for spaghetti, meatball subs, bowls, or appetizers, and they freeze beautifully for meal prep.
    Prep: 15 minutes mins
    Cook: 35 minutes mins
    Total: 50 minutes mins
    Servings: 4 (about 12 meatballs)
    PRINT PIN Save Saved! Video COMMENT

    Ingredients
     

    • 1 tablespoon olive oil, (plus more for brushing or spraying)
    • 1 yellow onion, chopped
    • 4 cloves garlic, minced or pressed
    • 1 cup dry TVP granules, (also called textured vegetable protein)
    • 1 cup vegan beefless broth, mushroom broth, or vegetable broth
    • 2 tablespoons soy sauce
    • 2 tablespoons nutritional yeast
    • 1 tablespoon dried basil
    • 1 teaspoon whole fennel seeds
    • ½ teaspoon black pepper
    • ½ cup all-purpose flour
    US Customary - Metric

    Instructions
     

    • Prep the oven: Preheat your oven to 400°F (200°C). Line a large baking sheet with parchment paper or lightly grease it.
    • Sauté the aromatics: Heat the olive oil in a large skillet over medium heat. Add the onion and garlic and cook for about 4-5 minutes until softened and just beginning to brown.
      Cooking onions in skillet.
    • Hydrate the TVP: Stir in the TVP, broth, and soy sauce. Bring to a gentle simmer, then reduce heat to low, cover, and cook for 5-10 minutes, stirring often, until the TVP is softened and all of the liquid is absorbed.
      Pouring broth into pan with TVP, onions, and garlic.
    • Season and bind: Remove from heat. Stir in the nutritional yeast, basil, fennel seeds, and black pepper. Add the flour and mix very well until a dough forms that holds together when pressed. If the mixture feels too wet, add a little more flour 1 tablespoon at a time. If too dry, add a broth or water 1 tablespoon at a time.
      Flour added to pan of TVP mixture.
    • Shape the meatballs: Let the mixture cool slightly, then scoop about 2 tablespoons (30 g) and gently roll into meatballs. A cookie scoop works great for even sizing. If the mixture sticks, lightly wet your hands before rolling. Place on the prepared baking sheet and repeat with the remaining mixture to make about 12 meatballs.
      Vegan meatballs shaped with cookie dough scoop.
    • Bake: Lightly brush or spray the tops with oil. Bake for 30-35 minutes, turning the meatballs 2-3 times during baking, until browned, firm on the outside, and cooked through.
      Vegan meatballs on parchment lined baking sheet.
    • Serve: Serve hot with pasta and marinara, in meatball subs, in bowls, or as an appetizer with your favorite dipping sauce.

    Notes

    Storage: Store leftovers in an airtight container in the fridge for up to 4 days.
    Freezing: Let the cooked meatballs cool completely, then freeze in a single layer on a baking sheet. Once frozen, transfer to a freezer-safe container or bag and freeze for up to 3 months.
    Reheating from frozen: Bake from frozen at 375°F (190°C) for 15 to 20 minutes, or until heated through. You can also warm them directly in sauce during the last 10 minutes.
    Simmering in sauce: For best texture, bake the meatballs first so they hold together well, then add them to sauce in the last 5 to 10 minutes.
    Gluten-free option: Use tamari instead of soy sauce and swap in a good all-purpose gluten-free flour blend. The texture may be slightly softer depending on the blend used.
    Oil-free option: Sauté the onion and garlic in a splash of water or broth instead of oil. Bake the meatballs on parchment or a silicone baking mat.
    Air fryer method: Preheat your air fryer to 370°F (188°C). Place the meatballs in a single layer and lightly spray with oil. Air fry for 18 to 24 minutes, shaking 2 - 3 times, until browned and firm. 

    Nutrition

    Serving: 1 serving (about 3 meatballs) | Calories: 205kcal | Carbohydrates: 26g | Protein: 16g | Fat: 4g | Saturated Fat: 1g | Polyunsaturated Fat: 0.5g | Monounsaturated Fat: 3g | Sodium: 743mg | Potassium: 201mg | Fiber: 6g | Sugar: 5g | Vitamin A: 135IU | Vitamin C: 3mg | Calcium: 120mg | Iron: 5mg

    ⭐ Did You Make This Recipe?

    I'd love if you left a rating and comment, it helps others find the recipe and makes my day! 💕
    Author: Sam Turnbull
    Cuisine: Italian
    Course: Appetizer, Main Course, Pasta

    More Italian Vegan Recipes You Might Enjoy

    Browse All Recipes

    « Vegan Pesto Recipe (Creamy, Easy & Better Than Store-Bought)
    Cucumber Dill Salad (Easy, Crunchy & Vinegar-Based) »

    Reader Interactions

    Comments

    1. Sophia says

      February 12, 2025 at 5:30 pm

      5 stars
      This was great and my fussy husband even liked it. I didn't have fennel so used half the amount of anise but will try more because we liked it.. Add another healthy alternative to our diet. THANKS SO MUCH.😉

      Reply
      • Sam Turnbull @ It Doesn't Taste Like Chicken says

        February 13, 2025 at 11:43 am

        I'm so happy you both enjoyed them!! Thank you for the review Sophia 🙂

        Reply
    2. Heather A Miller says

      January 12, 2025 at 4:29 pm

      I wanted to try this recipe with sunflower Hache instead of TVP. Have you ever used it? I wanted to stay away from ultra-processed products. Just wondering if it would be the same amount. Thank you for any help. Just bought your cookbook. I have loved everything I've made so far. Thank you for sharing your wisdom!

      Reply
      • Sam Turnbull @ It Doesn't Taste Like Chicken says

        January 14, 2025 at 5:10 pm

        Hi Heather, I have never heard of sunflower hache, but from the looks of it, it should work similarly. You may need to adjust the liquid and seasoning amounts. If you give it a try, let us know how it turns out! Oh also, TVP usually only has one ingredient, soy flour, so it is not usually considered a hyper processed food, but of course, cook with the ingredient you prefer 🙂

        Reply
    3. Judy M says

      December 04, 2024 at 9:29 pm

      These look excellent! Much cheaper than what I see in the store.

      Can we leave out the fennel? We don’t like it. Is there another spice we could add instead?

      Also, I can’t eat wheat at all and the oat flour has a lot of carbs. Would almond flour work? Coconut flour? How about oat fiber?

      Thank you very much.

      Reply
      • Sam Turnbull @ It Doesn't Taste Like Chicken says

        December 05, 2024 at 10:25 am

        Hi Judy, yes you can leave out the fennel if you are not a fan. You could try caraway seeds, dried rosemary, or just omit it. Other flours will work in this recipe but just note that it will make the meatballs very tender and it may not hold together as well. Enjoy!

        Reply
        • Judy M says

          December 10, 2024 at 7:43 pm

          Hi Sam, I really appreciate your reply.

          I’ve been thinking about this all week. What if I use flax eggs instead of wheat flour? What quantities do you think might work? You are so skilled that I thought I would ask.

        • Sam Turnbull @ It Doesn't Taste Like Chicken says

          December 11, 2024 at 4:57 pm

          Hi Judy, to help the meatballs hold together, I recommend using almond flour for a low-carb, gluten-free option. You can also add 1 tablespoon of ground flaxseed to help bind them. Make sure the TVP absorbs enough liquid and the dough is sticky. Gently handle the meatballs to prevent them from falling apart. Hope that helps!

      • Catherine Gibson says

        January 09, 2025 at 6:36 pm

        5 stars
        I used gluten free flour and added a generous spoonful of flaxseed meal which helps stick them together. Yum!

        Reply
        • Sam Turnbull @ It Doesn't Taste Like Chicken says

          January 11, 2025 at 12:11 pm

          Perfect! So happy you enjoyed them and thank you for sharing your substitution tips 🙂

    4. Serena says

      September 19, 2024 at 12:23 pm

      5 stars
      I'm Italian and we don't actually have this dish in Italy but I tried it anyway and it didn't disappoint 😀
      My parents also loved it!!

      Reply
      • Sam Turnbull @ It Doesn't Taste Like Chicken says

        December 05, 2024 at 10:26 am

        Oh good to know! So happy you enjoyed it!

        Reply
    5. Barbara says

      July 12, 2024 at 3:14 pm

      4 stars
      Absolutely gorgeous. We all loved this recipe. Thank you so much Sam, you are a genius and an inspiration.

      Reply
    6. Christina Parker says

      March 20, 2024 at 2:27 pm

      5 stars
      Super easy to make. I only added one tablespoon of soy sauce and it still tasted great. Highly recommend .

      Reply
      • Jess @ IDTLC Support says

        March 21, 2024 at 1:25 pm

        Wonderful!

        Reply
    7. Sydney says

      March 03, 2024 at 4:59 pm

      5 stars
      This recipe is so delicious!! I’m so happy to have come across it.

      Reply
      • Jess @ IDTLC Support says

        March 04, 2024 at 10:18 am

        Yay! We are happy you did too!

        Reply
    8. Carolyn says

      March 01, 2024 at 12:00 pm

      Wow these are so easy and so tasty! Thank you! I ended up adding more liquid as I simmered off too much, I'll know for next time. I'm buying your cookbooks as this recipe was such a wonderful success. Thank you again!

      Reply
      • Jess @ IDTLC Support says

        March 04, 2024 at 10:18 am

        Awww thanks for your support, Carolyn! We're very happy to hear it.

        Reply
    9. Chynna L Dehoyos says

      January 02, 2024 at 7:47 pm

      5 stars
      I just finished making these, and they smell so good. I'm just waiting for my noodles to cook, but I've already eaten a couple of meatballs.

      Reply
      • Sam Turnbull says

        January 03, 2024 at 1:58 pm

        Amazing!! So happy you love them 🙂

        Reply
    10. Martin says

      December 02, 2023 at 9:39 pm

      5 stars
      Cheap, easy, and tasty 10/10! I subbed the flour for vital wheat gluten and made them a lil smaller since I ended up with 18. I think they taste great and just like the gardein ones I used to purchase. Some liquid smoke definitely won't hurt though, if you've got it, and don't skip turning them multiple times since it seems to be the key to holding them together.

      Reply
      • Sam Turnbull says

        December 06, 2023 at 11:26 am

        So happy you enjoyed them Martin!!

        Reply
    11. Tanya K says

      October 19, 2023 at 5:16 pm

      the meatballs were able to keep their shape, but unfortunately my kids didn't like the texture and also I think I would half the amount of fennel

      Reply
    12. Abi says

      October 05, 2023 at 9:12 am

      5 stars
      Perfection! I love TVP as it's so economical (AND yummy of course!) and these meatballs are the absolute best - so easy to make (perfect consistency - hardly any onion escaped LOL) and baking is brilliant as I am oil free atm and it's soooo easy compared to frying! Thank you so much, AGAIN!!!!

      Reply
      • Jess @ IDTLC Support says

        October 10, 2023 at 9:10 pm

        We're so thrilled you like it!

        Reply
    13. Lena says

      September 19, 2023 at 5:08 pm

      5 stars
      taste is wonderful. mine did not hold together well. did i leave too much water when the tvp was cooking? any suggestions?

      Reply
    14. Betsy says

      September 04, 2023 at 10:29 pm

      Thanks! I think you are right. I had used vital wheat gluten as another reader mentioned as it has a lower glycemic index that all-purpose flour. Just read that the more protein or gluten in flour, the more moisture it absorbs. I will use more water or broth next time. Thanks again!

      Reply
      • Jess @ IDTLC Support says

        September 07, 2023 at 2:03 pm

        Good luck on your next attempt!

        Reply
    15. Betsy says

      September 04, 2023 at 2:16 pm

      This tasted delicious, but I could not get it to form into meatballs. I have no idea what I did wrong. Ended up just cooking it in a skillet and using it as a sandwich filling.

      Reply
      • Jess @ IDTLC Support says

        September 04, 2023 at 9:12 pm

        Sounds like it wasn't quite sticky enough, but perhaps a little more broth would have done the trick.

        Reply
    16. Molly N says

      June 19, 2023 at 9:50 pm

      I love your Italian seitan meatball recipe - many successful batches - so I decided to try your tvp recipe. I must have not cooked them enough, but they turned out gummy and not too appealing. I'm wondering if I could simmer them in marinara sauce after baking in the oven to improve taste and texture?

      Reply
    17. Christiane says

      February 21, 2023 at 7:38 pm

      5 stars
      I made them today and I love them. Thanks for a new TVP recipe (cheap and easy to use). I have also made your Vegan Italian Seitan Meatballs several times, they are so good. I wonder if you have a preference between those two kinds of meatballs or if you use them for different applications?

      Reply
      • Jess @ IDTLC Support says

        February 23, 2023 at 4:59 pm

        So glad you liked the TVP meatballs! Both recipes were created to showcase amazing vegan meatball options. Some readers were requesting one without gluten and the TVP recipe can be made gluten free!

        Reply
    18. Rach says

      February 18, 2023 at 6:11 am

      5 stars
      These were very easy and my 3 flexitarians, including the 2year old finished the lot. I used semolina instead of flour (Nigella Lawson tip) and they worked perfectly. Thanks Sam for helping our family out at dinner time. Again xx

      Reply
      • Jess @ IDTLC Support says

        February 21, 2023 at 2:08 pm

        Fantastic! We're so glad to hear they were a hit!

        Reply
    19. Rochelle says

      February 09, 2023 at 1:07 am

      5 stars
      I just made these and subbed out the flour for 50grams of vital wheat gluten flour as I am diabetic. Lower carb higher protein, they were amazing!!

      Reply
      • Jess @ IDTLC Support says

        February 14, 2023 at 9:04 pm

        We're happy to hear you adjusted and enjoyed!

        Reply
      • Sonya says

        February 15, 2023 at 2:17 pm

        5 stars
        Hello. I like the idea of vital wheat replacement but how did you cook these? Vital wheat needs to be steamed or boiled. Thank you in advance.

        Reply
        • Rochelle says

          February 15, 2023 at 2:49 pm

          Hi Sonya, I only used 50 grams of vital wheat gluten flour as my mixture was very wet.. I subbed the onion for zucchini.. So its more of a binding agent than a dough like seitan. I just cooked them as per recipe they were perfect.

    20. Susan says

      February 08, 2023 at 12:14 pm

      I’m so excited!!! Another TVP recipe! Thank you so much, Sam. I will be trying it. Yay!

      Reply
      • Sam Turnbull says

        February 08, 2023 at 4:37 pm

        Yay! I hope you love it 🙂

        Reply
    Newer Comments »
    4.96 from 46 votes (20 ratings without comment)

    Leave a Reply Cancel reply

    Your email address will not be published. Required fields are marked *

    Recipe Rating




    Primary Sidebar

    Hi Friends!

    I'm Sam Turnbull. 3x bestselling cookbook author and passionate vegan recipe writer! I LOVE vegan food, but it didn't start that way. Coming from a family of hunters, butchers, and chefs, I'm the last person I thought would go vegan.

    Here's My Story
    Bestselling Cookbooks

    Bestselling Cookbooks

    Ready to level up your vegan cooking? Get inspired with my bestselling cookbooks—packed with fan-favorite recipes everyone will love!

    SHOP COOKBOOKS

    Footer

    On the Site

    • Start Here
    • About
    • Recipe Index
    • Tips to Use This Site
    • Dietary Preferences
    • Cookbooks
    • Cooking Courses
    • FAQ's About Veganism
    • Easy Vegan Meal Plan
    • Seitan School
    • Contact
    • Press
    • Join the Community

    Shop Bestselling Cookbooks

    Amazon • Barnes & Noble • Indigo • Walmart • Target • BAM • Bookshop •

    Join the Newsletter

    Join 150K readers who love easy vegan recipes! As a welcome gift, get my most popular 10 Easy Vegan Dinners in 30 Mins or Less sent straight to your inbox. Sign up 👇

    Affiliate Link Disclosure

    On this site, I sometimes use affiliate links. This means that if you were to make a purchase through one of these links, It Doesn't Taste Like Chicken would receive a small cut, at no cost to you.

    Privacy Policy

    COPYRIGHT © 2026 - IT DOESN'T TASTE LIKE CHICKEN

    Leave a Comment

    Your vote:




    A rating is required
    A name is required
    An email is required

    Recipe Ratings without Comment

    Something went wrong. Please try again.