Soups & Stews
This black and white bean chili recipe delivers a hearty, spiced stew that packs double the protein and triple the satisfaction. 🌟 The combination of black beans and white beans creates a rich, textured base that absorbs smoky spices and warm flavors perfectly—ideal for chilly evenings or game day gatherings.
What makes this recipe special is how simple ingredients transform into a deeply flavorful, restaurant-quality dish without requiring hours in the kitchen.
The secret lies in properly sautéing the spices until fragrant, which builds the foundation for the chili's complex flavor profile.
Unlike many vegan chilis that rely on meat substitutes, this version lets the beans shine as the star ingredient, delivering a tender, slightly creamy texture that's both hearty and satisfying.
The slow simmer allows all the flavors to meld together, creating a dish that tastes even better the next day.
By the time you serve this chili, you'll have a steaming pot of smoky, spiced goodness topped with optional fresh avocado, cilantro, and lime for brightness. It's the kind of dish that brings people together—comforting yet exciting, filling yet light enough to enjoy even during warmer months.
Perfect for feeding a crowd or meal prepping for the week, this chili proves vegan cooking can be both nutritious and deeply flavorful.
Ready to make this chili? The ingredients are simple, the process is straightforward, and the results are guaranteed to impress. Let's get cooking!
Ingredients for black and white bean chili
Simple pantry staples transform into a restaurant-worthy vegan chili with smoky depth and double bean power.
| Ingredient | Amount | Notes |
|---|---|---|
| Black Beans 🫘 | 1 ½ cups | Drained and rinsed, cooked or canned |
| Great Northern Beans (White Beans) 🫘 | 1 ½ cups | Drained and rinsed, cooked or canned |
| Diced Tomatoes (Fire-Roasted) 🍅 | 2 cans | 15 oz each, no salt added |
| Tomato Paste 🍅 | ½ cup | For depth of flavor |
| Onion (Yellow) 🧅 | 1 whole | Diced, medium size |
| Garlic Cloves 🧄 | 4 cloves | Minced for aromatic base |
| Chipotle Peppers in Adobo 🌶️ | 2 tbsp | Mild heat, chopped |
| Ground Cumin 🌿 | 2 tbsp | Toasted for depth |
| Smoked Paprika 🌶️ | 1 tbsp | For smoky flavor |
| Oregano (Dried) 🍃 | 1 tbsp | Mexican preferred |
| Chili Powder 🌶️ | 1 tbsp | Adjust for heat |
| Vegetable Broth 💧 | 3 cups | Low-sodium preferred |
| Extra-Virgin Olive Oil 🫒 | 2 tbsp | For sautéing |
| Lime Juice 🍋 | 2 tbsp | Freshly squeezed |
| Salt 🧂 | 1 tsp | Adjust to taste |
The beans are the heart of this chili—great northern beans add a creamy texture while black beans bring rich earthiness. Trader Joe's and most grocery stores carry both in cans, but if you prefer dried, soak overnight and cook them yourself for even better flavor. Fire-roasted diced tomatoes add natural sweetness and smokiness, so look for no-salt-added varieties—you'll control the seasoning better. The chipotle peppers in adobo are non-negotiable for that authentic smoky heat; Penzeys or Mexican markets have the best selection if you want to splurge on quality.
No fire-roasted tomatoes? Regular diced tomatoes with a pinch of smoked paprika works in a pinch. Out of chipotle peppers? Substitute 1 tbsp of smoked paprika plus a dash of cayenne for heat. The cumin and smoked paprika should be toasted in a dry pan for 30 seconds before adding to the chili—this brings out their natural oils and deepens the flavor. Vegetable broth can be swapped for water, but low-sodium broth is ideal since you'll be adding salt at the end. For extra richness, stir in 2 tbsp of nutritional yeast at the finish.
This chili tastes even better the next day as the flavors meld together. Store in an airtight container in the fridge for up to 5 days or freeze portions for 3 months. I like to double the recipe and freeze half—perfect for lazy weeknights. The lime juice should be added fresh just before serving to keep the bright acidity intact. Garnish with avocado, cilantro, or vegan sour cream if you're feeling fancy, but the chili stands strong on its own.
Why You'll Love This Recipe
- No-Fuss Pantry Staples: I swear by this recipe because it uses what’s already in my cupboard—no fancy shopping required. Fire-roasted tomatoes and that rich tomato paste? They’re my secret for depth without extra effort. Just chop one onion, dump in the cans, and let the flavors meld.
- Game for Any Day: I make this for lazy Sundays, weeknight dinners, or even potlucks. Add cheese and sour cream for a crowd, or keep it simple with avocado and lime. It’s the one dish that never feels like a chore to serve.
- Budget-Friendly Leftovers: A single batch feeds my family for days, and the flavors only get better as it sits. I freeze half for months—no waste, no stress. Between us? This is my wallet’s favorite recipe.
Step-by-Step instructions for black and white bean chili
This chili delivers deep, smoky flavor with a perfect balance of texture and heat.
🍳 Step 1: Sauté Aromatics Until Fragrant
Heat the 2 tablespoons extra-virgin olive oil in a large Dutch oven over medium heat. Add the diced yellow onion and cook for 5-6 minutes until soft and translucent, stirring occasionally. The onions should smell sweet and caramelized at the edges.
Add the 4 minced garlic cloves and cook for 30 seconds until fragrant—don't let them brown or they'll turn bitter. Here's the thing—garlic burns fast, so keep an eye on it. If the pan starts to smoke, reduce the heat slightly. These aromatics form the flavor foundation of your chili.
🥘 Step 2: Build the Spice Base
Stir in the 2 tablespoons ground cumin, 1 tablespoon smoked paprika, 1 tablespoon dried oregano, and 1 tablespoon chili powder. Toast the spices for 1 minute until you smell their deep, earthy aromas. This step develops their flavors before adding liquids.
Add the 2 tablespoons chopped chipotle peppers in adobo and stir for 30 seconds to distribute the smoky heat. The adobo sauce adds both flavor and moisture—don't skip this. Then pour in the 0.5 cup tomato paste and cook for 2 minutes, stirring constantly, until it darkens slightly and coats the spices.
🍳 Step 3: Simmer the Tomato Base
Pour in the 2 cans fire-roasted diced tomatoes (with juices) and the 3 cups vegetable broth. Bring to a gentle boil, then reduce heat to medium-low and let it simmer uncovered for 10 minutes. This lets the flavors meld and the acidity from the tomatoes mellow out.
I always taste at this point—adjust seasoning with the 1 teaspoon salt if needed. The broth should be flavorful but not salty. If it's too thin, simmer uncovered for another 5 minutes to reduce slightly. This concentrated base ensures rich flavor in every spoonful.
👨🍳 Step 4: Add Beans and Simmer
Stir in the 1.5 cups black beans and 1.5 cups great northern beans (white beans). The beans should be drained and rinsed if using canned varieties. Bring the mixture back to a gentle simmer, then reduce heat to low and cook uncovered for 20-25 minutes, stirring occasionally.
You'll notice the chili thickens as it cooks—the beans release starch and the liquid reduces. Give it a taste after 20 minutes—the flavors should be well-developed but not overpowering. If it's still too thin, simmer uncovered for another 5 minutes to reach your preferred consistency.
⏰ Step 5: Finish and Serve
Remove from heat and stir in the 2 tablespoons freshly squeezed lime juice. The acidity brightens all the flavors and cuts through the richness. Let the chili rest for 5 minutes—this allows the flavors to settle and the texture to thicken slightly.
Taste again and adjust seasoning if needed. Serve warm with crusty bread or over rice. The contrast of creamy white beans and tender black beans creates the perfect texture, while the smoky spices deliver deep, satisfying flavor in every bite. This chili tastes even better the next day as the flavors continue to develop.
Pro Tips For Making Black And White Bean Chili
- Sauté Onions Until Golden: Don’t just cook them—get that onion to a deep, caramelized brown before adding anything else. That’s where the sweetness and depth come from, and it’s the foundation of your chili’s flavor. (Yes, even if you’re impatient like me, wait the extra 5 minutes.)
- Rinse and Drain Beans: Skip the canned beans’ liquid—it’s salty and watery. Rinse the beans thoroughly in a colander, then drain them well. This keeps your chili from tasting like a diluted broth and ensures the beans soak up the flavors instead.
- Bloom the Tomato Paste: Heat the tomato paste in the pot for 2-3 minutes before adding liquid. This step deepens its flavor and prevents it from clumping like glue. Stir constantly—it’s non-negotiable if you want that rich, concentrated base.
- Simmer, Don’t Boil: Let the chili bubble gently at a low simmer after everything’s combined. Boiling burns the beans and makes the texture mushy. A steady, quiet simmer (about 20-30 minutes) keeps the beans tender but intact and lets the flavors meld. (I learned this the hard way—overzealous heat ruins everything.)
Common mistakes when making this dish
Skipping the Spice Toast
One of the biggest flavor killers is skipping the 1-minute spice toast in Step 2. When you add cumin, smoked paprika, and chili powder directly to the wet ingredients, their flavors remain flat and one-dimensional.
The dry toasting step releases their essential oils and deepens their aroma—this is where the magic happens. I've made this mistake and ended up with chili that tasted more like seasoned broth than a rich, spiced stew. 🌶️
Underseasoning the Base
Many home cooks hold back on salt until the very end, but this chili needs seasoning at multiple stages. The tomato base in Step 3 should be tasted and adjusted before adding the beans. If you wait until the end, you might find the beans are overpowering the broth.
I recommend adding ½ teaspoon salt during the tomato simmer, then adjusting again at the finish. This layered approach ensures every bite is perfectly balanced.
Rushing the Simmer Time
The 20-25 minute simmer in Step 4 is crucial for developing depth of flavor. I've seen people cut this time short to save energy, but that's a mistake. The beans need time to absorb the spices and the liquid to reduce slightly.
If you rush it, the chili will taste thin and underdeveloped. Let it cook uncovered—this helps concentrate the flavors. If you're short on time, at least simmer for 15 minutes, but don't go below that.
Not Adjusting for Bean Quality
Canned beans vary widely in quality, and using low-grade brands can make your chili taste bland or metallic. I've learned the hard way that Trader Joe's or store-brand beans often have better flavor than generic brands. If your beans taste off, it's not the recipe's fault—rinse them thoroughly before using.
For even better results, use dried beans that you've soaked overnight. They absorb flavors more effectively and create a creamier texture in the chili.
Adding Lime Juice Too Early
The lime juice in Step 5 should only be added at the very end, right before serving. If you add it earlier, the acidity will break down the beans and make them mushy. I've made this mistake and ended up with a watery, unappetizing chili.
The lime brightens the flavors, but it needs to be added fresh to maintain that zesty punch. Save it for the final moment to keep your chili at its best. 🍋
Ignoring the Resting Period
Letting the chili rest for 5 minutes after cooking might seem unnecessary, but it's a game-changer. This short rest allows the flavors to meld and the texture to thicken slightly. If you serve it immediately, you'll miss out on that final depth of flavor.
I've served chili straight from the pot before, and while it was good, it never tasted as rich as when I waited. Give it that brief rest—your taste buds will thank you.
Nutrition facts
Frequently asked questions
Why use both black and white beans in this chili?
The combination creates a perfect texture contrast—creamy white beans balance the slightly firmer black beans, while doubling the protein content. Black beans add rich earthiness while white beans contribute a tender, almost buttery quality. Together, they create a heartier, more satisfying bowl than using just one type.
Can I make this chili in a slow cooker?
Combine all ingredients except lime juice in your slow cooker and cook on low for 6-7 hours or high for 3-4 hours. Stir in lime juice just before serving. The slow cooker method actually enhances the flavors even more as everything melds together over time.
What's the best way to store leftovers?
Store in an airtight container in the fridge for up to 5 days or freeze for 3 months. The flavors actually improve overnight! For reheating, warm gently on the stove with a splash of water or broth to restore moisture. Never microwave directly from frozen.
How can I make this spicier?
Add ½ teaspoon cayenne pepper with the initial spices or stir in 1-2 teaspoons of hot sauce at the end. For smoky heat, increase chipotle peppers to 3 tablespoons. Always taste as you go—you can adjust heat more easily than removing it!
What are the best toppings for this chili?
Fresh avocado slices, chopped cilantro, a squeeze of lime, and a sprinkle of vegan sour cream add brightness and creaminess. For crunch, try toasted pumpkin seeds or diced red onion. Keep it simple with just lime and cilantro if you prefer!
