Soups & Stews
This bean-heavy chili recipe delivers meat-loaded depth without any actual meat—packed with three types of beans, rich spices, and a thick, hearty texture that sticks to your ribs. The secret lies in blending half the beans for a velvety, almost meaty consistency while keeping the other half whole for texture.
After years of perfecting this vegetarian version, I’ve nailed the balance of smoky, spicy, and slightly sweet flavors that make it irresistible.
What sets this chili apart is the one-pot simplicity and customizable heat level—adjust the chili powder and cayenne to suit your preference. The beans simmer until tender, absorbing the flavors of cumin, garlic, and tomatoes, while the optional blend of avocado or vegan sour cream adds creaminess without dairy.
It’s the kind of dish that tastes even better the next day, making it perfect for meal prep or feeding a crowd.
By the time you’re done, you’ll have a thick, satisfying chili with layers of flavor—smoky from the spices, rich from the tomatoes, and hearty from the beans. Serve it with cornbread, crusty bread, or over rice to soak up every last drop.
The best part? It’s foolproof, vegetarian-friendly, and packed with protein to keep you full for hours.
Whether you’re a vegetarian looking for a meaty texture or just craving a deeply flavorful chili, this recipe delivers restaurant-quality results in one pot. Let’s get cooking!
Ingredients for bean heavy chili
These hearty ingredients blend into a chili so rich and satisfying, you won't miss the meat.
| Ingredient | Amount | Notes |
|---|---|---|
| Black Beans 🫘 | 1 ½ cups | Drained and rinsed |
| Kidney Beans 🫘 | 1 cup | Drained and rinsed |
| Pinto Beans 🫘 | 1 cup | Drained and rinsed |
| Blended Bean Mixture 🫘 | 1 cup | Half of beans blended smooth |
| Diced Tomatoes 🍅 | 2 cups | San Marzano preferred |
| Tomato Paste 🍅 | ½ cup | For thickness and depth |
| Onion 🧅 | 1 whole | Medium, diced small |
| Garlic Cloves 🧄 | 4 cloves | Minced finely |
| Chili Powder 🌶️ | 2 tbsp | Adjust for heat preference |
| Ground Cumin 🌿 | 1 tbsp | Toasted for depth |
| Smoked Paprika 🌶️ | 1 tbsp | For smoky flavor |
| Cayenne Pepper 🔥 | ½ tsp | Optional for heat |
| Vegetable Broth 💧 | 2 cups | Low-sodium preferred |
| Avocado 🥑 | 1 whole | Optional, blended for creaminess |
| Vegan Sour Cream 🥛 | ¼ cup | For topping |
| Olive Oil 🫒 | 2 tbsp | For sautéing |
| Salt 🧂 | 1 ½ tsp | Adjust to taste |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
The beans are the star—three types for texture, plus half blended for that meaty consistency. Trader Joe's has pre-cooked beans in the canned section, which saves time. If you're using dried beans, soak them overnight for best results. The San Marzano tomatoes add natural sweetness, but any good-quality canned tomatoes work. For the blended portion, use an immersion blender right in the pot—no extra cleanup. The avocado adds creaminess without dairy, but skip it if you prefer a lighter chili.
No black beans? Substitute with extra kidney or pinto beans—just adjust the seasoning slightly. Running low on tomato paste? Fresh tomato sauce works in a pinch, though it won’t be as concentrated. The chili powder can be swapped for mild paprika plus a pinch of cayenne if you want less heat. For extra depth, add a splash of balsamic vinegar at the end. The vegan sour cream topping is optional but adds a nice contrast—Silk or Tofutti brands are great for this. If you're serving a crowd, double the batch—it reheats even better the next day.
This chili keeps for 5 days in the fridge and freezes beautifully for up to 3 months. I like to portion it into containers with a dollop of vegan sour cream on top—ready for quick lunches. For meal prep, make a big batch and freeze half right away. When reheating, stir in a splash of broth if it gets too thick. The flavors actually improve overnight, so leftovers are a must. Store the avocado separately and blend it in fresh when serving to keep it from browning.
Why You'll Love This Recipe
- No Fuss, Big Payoff: That blended bean mix? It’s my shortcut to texture gold—no chopping, no measuring, just dump and stir. The black, kidney, and pinto beans give it that perfect chewy, creamy contrast without extra work.
- Deep, Rich Umami: Honestly, the diced tomatoes and blended beans create a sauce that’s ridiculously flavorful. It’s got that slow-simmered depth, but I’m not waiting hours—just 45 minutes on the stove.
- Meal Prep MVP: Between us, this chili tastes even better the next day. I make a double batch on Sundays, freeze half, and boom—weeknight dinners solved. (Yes, even on a Tuesday night.)
- Budget That Feeds: A pound of dried beans and a can of tomatoes stretch to feed four for under $5. That’s a meal that doesn’t break the bank or your taste buds—my kids fight over the leftovers.
Step-by-step instructions for thick, hearty bean chili
Here's how to build a chili so thick and rich it practically stands up on its own—no meat needed.
Sauté the Aromatics Until Fragrant
Heat the 2 tablespoons olive oil in a large Dutch oven over medium heat. Add the diced onion and cook for 5-6 minutes until softened and translucent. This is where the foundation of flavor begins—don't rush it, or the onions will burn before they sweeten.
Add the 4 cloves minced garlic and cook for 30 seconds until you can smell that rich, toasty aroma. Stir constantly—garlic burns faster than you think. Here's the thing: if you let it brown too much, it'll turn bitter. You want it just golden, not crispy.
Build the Spice Base
Lower the heat to medium-low and add the 2 tablespoons chili powder, 1 tablespoon ground cumin, 1 tablespoon smoked paprika, and 0.5 teaspoon cayenne pepper. Stir for 1 minute until the spices are fully incorporated and the mixture smells like a warm, smoky campfire.
This is the moment that matters: let the spices toast in the oil for 30 seconds—you'll see them darken slightly. This step deepens their flavor and removes any raw, bitter notes. If you skip it, your chili will taste flat.
Add Tomatoes and Simmer
Pour in the 2 cups diced tomatoes and 0.5 cup tomato paste, stirring to combine. Let the mixture simmer for 5 minutes until the tomato paste thickens slightly and the colors meld together. This is where the chili starts to take shape—thick, rich, and ready for the beans.
Here's where it gets fun—taste the mixture now. You should notice the spices have bloomed, and the tomatoes have softened. If it needs more salt, add 0.5 teaspoon now. Real talk: the beans will absorb a lot of flavor, so don't be shy with the seasoning.
Incorporate the Beans and Broth
Add the 1.5 cups black beans, 1 cup kidney beans, 1 cup pinto beans, and 1 cup blended bean mixture. Stir well to coat the beans in the spiced tomato mixture. Pour in the 2 cups vegetable broth and bring everything to a gentle boil.
Once boiling, reduce the heat to low and let it simmer uncovered for 45-50 minutes. You want the chili to bubble gently, not vigorously. This slow cook lets the flavors meld and the beans soften just enough to break down slightly—this is what creates that thick, velvety texture.
Finish and Serve
After simmering, taste and adjust the seasoning—add more salt or black pepper if needed. The chili should be thick enough to coat the back of a spoon. If it's too thin, simmer uncovered for another 10 minutes to reduce it.
For serving, top each bowl with a dollop of vegan sour cream and a scoop of blended avocado (if using). The avocado adds a creamy contrast to the smoky, spicy chili. Serve immediately with crusty bread or tortilla chips—this chili is best enjoyed fresh while it's still steaming hot.
Pro Tips For Making Bean Heavy Chili
- CRUSH BEANS FIRST: Dump your dry beans straight into the pot—no soaking needed. The long simmer (at least 45 minutes) breaks them down perfectly, but if you’re in a hurry, use canned beans and add a splash of the liquid to keep it thick. I learned this the hard way after a watery chili disaster—measure that liquid carefully.
- SWEAT THE ONIONS LOW: Skip the rush and cook your onions (and garlic) on medium-low for 10 minutes until they’re soft and translucent. Browning them too fast burns the flavor, and you’ll end up tasting ash instead of sweetness. This is the thing that matters most for depth in bean-heavy chili—don’t skip it.
- BLEND HALF THE BEANS: Only blend half your beans (about 1 cup) for creaminess—keep the rest whole for texture. Over-blending turns chili into soup, and under-blending leaves it gritty. My grandmother swore by this ratio, and she was right: it’s the balance that makes the dish.
- ADD TOMATOES LAST: Stir in your diced tomatoes only in the final 15 minutes—otherwise, they’ll turn to mush and water down the chili. If using canned, drain them first unless you want a thinner consistency. Sounds weird, but it works: bright acidity at the end cuts through the richness of all those beans.
Regional styles of this bean heavy chili
Texas-Style Chili
In Texas, chili is a sacred tradition, and this bean-heavy version pays homage with its bold spices and thick texture. Texans often use chuckwheat flour to thicken their chili, but here we achieve the same richness by blending half the beans.
The key is more chili powder—Texas chili is known for its heat, so I bump it to 3 tablespoons and add 1 teaspoon of cocoa powder for depth. Serve it with crusty bread or cornbread for dipping, just like at a classic Texas chili cook-off. 🌶️
Southwest Fusion
For a Southwest twist, swap the smoked paprika for 1 tablespoon of adobo seasoning (from canned chipotles) and add ½ cup of fire-roasted corn to the pot. This version has a smoky, slightly sweet profile that pairs perfectly with warm tortillas or cilantro-lime rice.
I like to top it with diced avocado and a squeeze of lime for brightness. The adobo adds a subtle heat that lingers beautifully. 🌵
New Mexican Red Chili
New Mexico’s famous red chili relies on pueblo chili powder and green chiles for a distinctive flavor. For this bean-heavy version, replace the smoked paprika with 1 tablespoon of pueblo chili powder and stir in ½ cup of diced green chiles (fresh or canned) at the end.
This chili has a slightly sweet, earthy profile that’s perfect with posole-style hominy or blue corn tortillas. The green chiles add a fresh, bright contrast to the smoky beans. 🌶️
Caribbean-Inspired
Give your chili a tropical twist by adding 1 tablespoon of soy sauce (for umami) and 1 teaspoon of allspice to the spice blend. Stir in ½ cup of coconut milk at the end for creaminess, and top with diced mango or pineapple for a sweet-spicy balance.
This version is lighter but still hearty, and it pairs wonderfully with coconut rice or warm plantain chips. The allspice adds warmth that feels like a vacation in every bite. 🌴
Smoky BBQ Chili
For a smoky, BBQ-inspired chili, replace the vegetable broth with 2 cups of beef broth (or mushroom broth for vegetarian) and add 1 tablespoon of liquid smoke and 1 teaspoon of brown sugar.
This version has a deep, caramelized flavor that’s perfect for slathering on grilled veggie burgers or serving with crusty bread. The brown sugar balances the smokiness, making it rich and slightly sweet. 🔥
Spicy Korean-Inspired
For a Korean-inspired kick, add 1 tablespoon of gochujang (Korean chili paste) and 1 teaspoon of sesame oil to the spice blend. Stir in ½ cup of sliced shiitake mushrooms for umami depth, and finish with sesame seeds and sliced green onions.
This chili has a bold, fermented heat that pairs beautifully with steamed rice or kimchi. The gochujang adds a tangy, spicy depth that’s unlike traditional chili. 🌶️
Nutrition facts
Frequently asked questions
Why blend half the beans in this chili?
The blended portion creates a velvety, meat-like texture that makes the chili feel heartier without actual meat. This technique mimics ground beef consistency while keeping the dish vegetarian. The remaining whole beans add satisfying bite and structure.
Can I make this chili without a Dutch oven?
Use a large stockpot or deep skillet instead. Just ensure it has enough capacity to prevent overflow during simmering. A 6-quart pot works perfectly for this recipe. The key is maintaining a gentle simmer to develop flavors.
How do I adjust the spice level?
Start with the base recipe, then taste and adjust: Reduce heat by omitting cayenne pepper or using mild paprika instead. For extra kick, add ½ teaspoon cayenne or a pinch of crushed red pepper flakes. Always taste as you go!
What's the best way to reheat leftovers?
Gently reheat on the stovetop over low heat with 1-2 tablespoons of broth or water to restore thickness. Avoid microwaving—it can make the chili watery. For best results, reheat just until steaming, then let it sit 5 minutes before serving.
Can I add meat to this vegetarian chili?
Yes! Stir in 1 pound of ground turkey or beef during Step 4 (after adding beans). Brown the meat first in 1 tablespoon oil before combining with the chili mixture. Cook for an extra 10 minutes to ensure it's fully heated through.
