This vegan three bean chili with TVP is hearty, flavorful, and perfect for a cozy dinner. Three kinds of beans and meaty TVP simmer with tomatoes, peppers, warming spices, and a few flavor-boosting ingredients for a thick and satisfying vegan chili.

It's mostly hands-off once everything is in the pot, and the longer it simmers, the richer and more flavorful it becomes.
Serve it with vegan sour cream, shredded cheese, green onions, and cornbread for the ultimate cold-weather dinner.
Jump to:
Ingredient Notes
This TVP chili is made with three kinds of beans, textured vegetable protein, canned tomatoes, peppers, and a flavorful blend of spices.
Here are a few ingredient notes before you get started.

TVP (Textured Vegetable Protein): Gives this vegan chili a hearty, meaty texture. If you haven't cooked with TVP before, it's a dehydrated soy product that rehydrates into a chewy, ground-meat-like texture.
Beans: I use black beans, kidney beans, and pinto beans for a mix of textures and flavors. Canned beans keep this recipe easy. Just drain and rinse them before adding.
Onion: I use yellow onion, but white onion will work too.
Vegan Worcestershire Sauce: Adds savory, umami flavor. Check the ingredients when purchasing, since traditional Worcestershire sauce typically contains anchovies.
Cocoa Powder: A small amount adds richness and depth without making the chili taste like chocolate.
Canned Tomatoes: You can use diced, crushed, or whole peeled canned tomatoes. I like to use whole tomatoes and pulse them into a smooth sauce because I don't enjoy chunks, but you can choose whichever texture you prefer.
See recipe card for quantities.
How to Make This Recipe
This vegan chili takes some time to simmer, but most of the cooking time is hands-off.
Here's how it comes together:

Step 1: Bring 1 cup of water to a boil. Remove from heat, stir in the TVP, and set aside to rehydrate.

Step 2: Heat a large pot over medium heat and add the olive oil. Add the onions with a pinch of salt and cook slowly, stirring occasionally, until softened and starting to brown.

Step 3: Add the bell peppers, garlic, and jalapeños. Sauté until softened, about 5 minutes.

Step 4: Add the rehydrated TVP and cook for an additional 2-3 minutes. Then, mix in the tomato paste, all the seasonings, cocoa powder, brown sugar, and vegan Worcestershire sauce. Cook for another 2-3 minutes.

Step 5: Pour in the canned tomatoes, vegetable broth, and all of the beans.

Step 6: Bring to a simmer over medium heat, then reduce to a low simmer.

Step 7: Partially cover and cook for at least 45 minutes, stirring occasionally. Taste and adjust the salt as needed.

Step 8: Serve the chili and top with shredded vegan cheese, green onions or cilantro, and vegan sour cream.
Substitutions & Variations
Feel free to use the substitutions and variations below to tweak the flavor, heat level, and texture so it's just right for you.
TVP: Swap with cooked lentils, tofu ground beef, crumbled tempeh, or store-bought vegan beef crumbles.
Beans: Use any combination of beans you'd like.
Bell peppers: Any color works, or substitute with poblano peppers.
Worcestershire sauce: Use soy sauce or tamari with a splash of apple cider vinegar if needed.
Adjust the heat: For a mild chili, remove the jalapeño seeds or omit the jalapeño and cayenne. For a spicier chili, add another jalapeño, additional cayenne, or chipotle peppers in adobo.
Serving Ideas
- Top with vegan shredded cheddar cheese, vegan sour cream, pickled jalapeños, cilantro, green onions, avocado, or hot sauce.
- Serve with vegan cornbread muffins or tortilla chips.
- You can also serve it over rice or quinoa, spoon it over a baked potato or vegan hot dog, or use it to make nachos.

Tips & Tricks
Simmer low and slow. The chili is ready after about 45 minutes, but I recommend simmering it for around 1½ hours for the best flavor and texture. The longer simmer allows the flavors to develop and the chili to thicken. You can simmer it for up to 2 hours if you'd like.
Build flavor in layers. Take time to brown the onions and briefly cook the spices and tomato paste before adding liquids and beans.
Partially cover while simmering. Leaving the lid slightly ajar allows some steam to escape so the chili gradually thickens without reducing too quickly. Fully covering the pot traps more moisture and will result in a thinner chili.
Adjust the consistency as needed. For a thicker chili, simmer uncovered for longer or mash some of the beans directly in the pot. If the chili becomes too thick, add a splash of vegetable broth and cover the pot to slow down evaporation.
Adjust salt at the end. Taste and adjust the salt after the chili has reduced to avoid over-salting. Keep in mind that kosher salt and table salt aren't interchangeable 1:1. If using table salt, use less and adjust to taste.
Storage
Store: Let the chili cool, then transfer to an airtight container and refrigerate for up to 5 days.
Reheat: Reheat on the stovetop over medium-low heat, stirring occasionally, until warmed through. You can also reheat individual portions in the microwave, stirring halfway through.
Freeze: Allow the chili to cool completely, then transfer to a freezer-safe container and freeze for up to 3 months. Thaw overnight in the refrigerator before reheating, or reheat straight from frozen over low heat on the stovetop, adding liquid as needed.
More Recipes You Might Like
Looking for more hearty soups and stews? Here are some favorites to try:
Don't forget to leave a comment and ⭐️⭐️⭐️⭐️⭐️ star rating down below if you try this recipe! Subscribe to my newsletter and follow along on Instagram for more recipes and updates.
Recipe

Vegan Three Bean Chili with TVP
Ingredients
- 1 cup Textured Vegetable Protein (TVP) rehydrated with 1 cup water
- 3 tablespoons Olive Oil
- 1 large Yellow Onion diced
- 1 large Red Bell Peppers diced
- 3 Garlic Cloves minced
- 1 medium Jalapeño seeds removed, minced
- 3 tablespoons Tomato Paste
- 2 tablespoons Chili Powder see note
- 1 tablespoon Cumin
- 2 teaspoons Oregano dried
- 1 teaspoon Garlic Powder
- 1 ½ teaspoon Smoked Paprika
- ½ teaspoon Ground Coriander
- 2 teaspoons Kosher Salt see note, more to taste
- ¼ teaspoon Black pepper
- Pinch of Cayenne Pepper
- 1 tablespoon Cocoa Powder
- 1 tablespoon Brown Sugar
- 1 tablespoon Vegan Worcestershire Sauce
- 28 ounce can Whole Peeled Tomatoes or Crushed Tomatoes see note
- 2 cups Low-Sodium Vegetable Broth
- 1 15oz can Kidney Beans drained and rinsed
- 1 15oz can Pinto Beans drained and rinsed
- 1 15oz can Black Beans drained and rinsed
Instructions
- Bring 1 cup of water to a boil. Remove from heat, stir in the TVP, and set aside to rehydrate.
- Heat a large pot over medium heat and add the olive oil. Add the onions with a pinch of salt and cook slowly, stirring occasionally, until softened and they start to brown. Don't rush this step. Let the onions sweat and brown.
- Add the bell peppers, garlic, and jalapeños. Sauté until softened, about 5 minutes.
- Add in the rehydrated TVP and cook for an additional 2-3 minutes.
- Mix in the tomato paste, all the seasonings, cocoa powder, brown sugar, vegan Worcestershire sauce. Cook for another 2-3 minutes, stirring constantly, until fragrant and well combined.
- Pour in the canned tomatoes, vegetable broth, and all of the beans. Stir well. If using whole canned tomatoes, crush or blend them before adding. I prefer a smoother chili, so I blend the tomatoes first, but use whatever texture you like.
- Bring to a simmer over medium heat, then reduce to a low simmer. Partially cover and cook for at least 45 minutes, stirring occasionally. 1 to 2 hours is ideal for the best flavor.
- Taste and adjust the salt as needed. Then, serve the chili and top with shredded vegan cheese, green onions or cilantro, and vegan sour cream. Enjoy!
Notes
Disclosure: This page contains some affiliate links. Please know that I may receive a percentage or commission from a link included on this page, at no extra cost to you. I will only ever recommend a product that I have used and believe has substantial value to my readers.









Mari says
Excellent! Easily adaptable to those who like spicier chili (which I did). I also added Masa Harina to thicken it a bit.
Many thanks!
Liv says
Hi Mari,
So glad you enjoyed it! Love the spicy chili upgrade, and masa harina is such a smart move if you don’t have time to let it simmer longer. Thanks so much for sharing your tweaks!
Liv
Mari says
Really good. I did add more heat because that's how my family likes their chili, but the flavor is great. I also added 2T of masa harina to thicken it. The tvp went unnoticed by my omnivorous ALMOST vegan (6 out of 7 days per week) family. This site's recipes have been a huge boost. Thank you for that!
Another excellent recipe. Thank you!