Soups & Stews
This black and white bean chili recipe delivers deep-spiced heartiness in one slow-simmered pot, perfect for cozy nights or meal prep. The combination of black beans, white beans, and carefully toasted spices creates a rich, textured chili that's both comforting and packed with plant-based protein.
I've refined this recipe over years to balance smoky, earthy, and slightly sweet flavors—no shortcuts, just restaurant-quality depth in your own kitchen.
The secret lies in browning the spices before adding liquids, which builds layers of flavor you won't find in instant versions. A touch of smoked paprika and cumin adds warmth, while a splash of broth keeps the chili tender and cohesive.
Unlike lighter bean soups, this version holds its structure beautifully after reheating, making it ideal for batch cooking or freezing for later.
By the time it finishes simmering, you'll have a chili that's thick, flavorful, and satisfying—with creamy white beans contrasting the deep color and texture of black beans.
The spices meld into a complex aroma that fills your home, while the slow cooking process transforms tough ingredients into something truly special. Serve it with avocado, cilantro, and lime for brightness, or enjoy it as-is for pure, unadulterated comfort.
This recipe scales effortlessly for crowds, tastes even better the next day, and proves that vegan chili doesn't need meat to deliver bold, warming flavors. Whether you're feeding a family or prepping for the week, this is the one-pot wonder that will become a staple in your rotation.
Let's get started—your taste buds will thank you.
Ingredients for black and white bean chili
Six servings of restaurant-quality chili start with these 15 ingredients—simple but powerful.
| Ingredient | Amount | Notes |
|---|---|---|
| Black Beans 🫘 | 1 ½ cups | Dried or canned, drained and rinsed |
| Cannellini Beans 🫘 | 1 ½ cups | Dried or canned, drained and rinsed |
| Dried Ancho Chili Peppers 🌶️ | 2 whole | Stems and seeds removed |
| Ground Cumin 🌿 | 2 tbsp | Toasted for deeper aroma |
| Smoked Paprika 🌶️ | 1 ½ tbsp | For authentic smoky depth |
| Garlic Cloves 🧄 | 6 cloves | Minced for aromatic punch |
| Yellow Onion 🧅 | 1 whole | Diced, medium size |
| Tomato Paste 🍅 | ½ cup | High-quality, no sugar added |
| Vegetable Broth 💧 | 3 cups | Low-sodium preferred |
| Extra-Virgin Olive Oil 🫒 | 2 tbsp | For browning spices |
| Cocoa Powder 🍫 | 1 tbsp | Unsweetened, for subtle richness |
| Sea Salt 🧂 | 1 ½ tsp | Diamond Crystal preferred |
| Black Peppercorns 🌶️ | 1 tsp | Freshly cracked |
| Fresh Cilantro 🌿 | ¼ cup | Chopped, for garnish |
| Lime 🍋 | 1 whole | Juiced, for brightness |
The beans are the heart of this chili, so pick quality dried beans if you're soaking them overnight—they hold up better than canned during long simmering. For convenience, low-sodium canned beans work fine, but rinse them well to cut excess salt. Ancho peppers are a game-changer—they add smoky depth without heat, and you can find them dried at Latin markets or specialty stores. If you can't, pasilla peppers are a good swap. Toast the cumin and smoked paprika in olive oil until fragrant—this step builds flavor that can't be replicated with instant spices. Penzeys Spices carries excellent quality if you want to splurge, but the bulk bins at Whole Foods or Trader Joe's are budget-friendly and still potent.
No ancho peppers? Dried chipotle peppers in adobo sauce (remove seeds) add smokiness, or use 1 tbsp chipotle powder plus 1 tsp smoked paprika. Substituting canned beans? Drain and rinse thoroughly—even low-sodium brands pack extra salt. The cocoa powder might seem odd, but it deepens the chili's complexity without making it sweet. Dutch-processed cocoa works best here. For extra richness, stir in 2 tbsp nutritional yeast at the end. The lime juice should be freshly squeezed—bottled just won't cut it. If you're prepping ahead, hold off on adding the cilantro until serving, or it'll wilt in the chili.
This chili tastes even better the next day as flavors meld, so make a double batch and freeze half. Portion into airtight containers with a thin layer of water on top to prevent freezer burn—it keeps for up to 3 months. For meal prep, reheat gently on the stove with a splash of broth to restore moisture. The texture thickens as it cools, so don't hesitate to add a little more broth if it seems too dense. Store leftovers in the fridge for 5-6 days, but honestly, it disappears faster than that. Garnish with extra cilantro, avocado slices, or a dollop of vegan sour cream before serving.
Why You'll Love This Recipe
- Throw-it-together dinner: I swear by this when I’ve got zero energy—just soak the ancho peppers overnight (or use a quick rehydrate trick with hot water), toss everything into one pot, and let it simmer. No chopping, no fuss, just layers of flavor building while you do whatever else needs doing.
- Smoky depth magic: That combo of smoked paprika and dried ancho? Absolute game. The beans get this rich, almost barbecue-like warmth without needing meat, and the cumin ties it all together with a cozy earthiness. Honestly, the first time I tasted it, I thought, “Why haven’t I been making this all along?”
- Meal prep MVP: It tastes better the next day—yes, really. I make a double batch on Sundays, portion it into containers, and boom: lunches for the week. The cannellinis hold their shape, the black beans get even more tender, and you can just reheat with a splash of water. My kids’ favorite “mystery lunch” (they don’t know it’s the same chili).
- Pantry superhero: Between us, this recipe costs me about $8 for four servings. Canned beans? Check. Dried peppers? Check. Spices I already own? Double check. It’s the kind of dish that makes me feel like I’m feeding my family something special without draining my wallet—or my patience.
Step-by-step instructions for slow-simmered black and white bean chili
This chili delivers deep, complex flavor through careful layering of spices and slow cooking.
Toast the Dried Ancho Peppers and Spices
Preheat your oven to 350°F. Place the 2 whole dried ancho chili peppers on a baking sheet and toast for 5 minutes until fragrant and slightly puffed. This step deepens their smoky flavor without burning them.
While the peppers toast, heat a dry skillet over medium heat and toast the 2 tbsp ground cumin and 1.5 tbsp smoked paprika for 1 minute until aromatic. The spices should smell warm and earthy—this releases their essential oils for maximum flavor. Immediately transfer to a bowl to cool slightly.
Build the Chili Base with Aromatics
Heat the 2 tbsp extra-virgin olive oil in a large Dutch oven over medium heat. Add the 1 whole yellow onion and cook for 5-6 minutes until softened and translucent. Add the 6 cloves minced garlic and cook for another 30 seconds until fragrant.
Stir in the toasted spices and 1 tbsp cocoa powder, cooking for 1 minute until the spices are fully incorporated and the mixture smells rich and complex. This is your flavor foundation—don't rush this step as it builds depth.
Add Beans, Tomato Paste, and Broth
Add the 1.5 cups black beans and 1.5 cups cannellini beans (drained and rinsed), stirring to coat them in the spice mixture. Pour in the 0.5 cup tomato paste and 3 cups vegetable broth, stirring well to combine. The mixture should be thick but pourable.
Bring to a gentle simmer over medium-low heat. Once simmering, reduce heat to low and add the toasted ancho peppers (remove stems and seeds first). The peppers will soften as they cook, releasing their smoky essence into the chili.
Slow-Simmer for Deep Flavor Development
Partially cover the Dutch oven and let the chili simmer gently for 45-50 minutes, stirring occasionally. The beans should soften and the flavors meld together. You're looking for a thick, stew-like consistency with a rich aroma.
After 30 minutes, taste and adjust seasoning with the 1.5 tsp sea salt and 1 tsp freshly cracked black peppercorns. The chili should be well-seasoned but balanced—sweet from the beans, smoky from the peppers, and rich from the spices.
Finish and Serve with Fresh Garnishes
Remove from heat and let the chili rest for 5 minutes. Stir in the juice of the 1 whole lime to brighten the flavors. The acidity cuts through the richness and balances the spices beautifully.
Ladle the chili into bowls and garnish with 0.25 cup chopped fresh cilantro. Serve immediately with warm cornbread or crusty bread to soak up the rich, hearty broth. This chili tastes even better the next day as the flavors continue to develop.
Pro Tips For Making Black And White Bean Chili
- Toast the Ancho Peppers: I learned this the hard way—dried ancho peppers taste like cardboard if you just toss them in. Instead, toast them whole in a dry skillet for 30 seconds per side until fragrant and slightly darkened. That’s when their smoky depth actually comes through, and you’ll taste the difference in every spoonful.
- Simmer Low and Slow: This isn’t a 20-minute weeknight dinner. After adding the beans and broth, drop the heat to a bare simmer and let it bubble gently for at least 45 minutes. Rushing turns the chili into a mushy, flavorless mess—low and slow keeps the beans tender and lets the spices meld properly.
- Rinse the Cannellinis: Those white beans can taste bitter if they’re not fresh. Give them a quick rinse under cold water before cooking, especially if they’re from a can. The starches settle at the bottom, so drain them well too—you want clean flavor, not a gluey chili.
- Bloom the Spices: Don’t just stir in the cumin and smoked paprika at the end. Heat them in the oil for a full minute until fragrant—you’ll smell it when they’re ready. This step makes a real difference in depth, especially with the ancho’s earthiness. (Yes, even if you’re impatient like me.)
Best sauces and condiments for this dish
Creamy Avocado Swirl
Blend 1 ripe avocado with 2 tbsp lime juice, 1 tbsp olive oil, and ¼ tsp salt until smooth. Spoon dollops over each serving just before eating—the creamy texture contrasts beautifully with the chili's heartiness.
For extra richness, stir 1 tbsp vegan sour cream into the chili before serving and top with avocado slices. 🥑
Smoky Chipotle Cream
Mix ½ cup vegan sour cream with 1 tsp adobo sauce (from chipotle peppers) and ½ tsp smoked paprika. This sauce adds smoky depth that complements the chili's natural flavors.
Drizzle generously over individual portions or serve on the side for dipping. For a lighter option, blend with 2 tbsp water to create a pourable sauce. 🌶️
Pickled Red Onions
Quick-pickle 1 cup thinly sliced red onion in ½ cup apple cider vinegar, 1 tbsp maple syrup, and ½ tsp salt for 15 minutes. The tangy crunch cuts through the chili's richness and adds a refreshing contrast.
Use within 1 week for best texture. Store in an airtight container in the fridge. 🧅
Fresh Cilantro-Lime Crema
Whisk together ½ cup vegan mayo (or Greek yogurt for tang), ¼ cup chopped cilantro, 2 tbsp lime juice, and ½ tsp cumin. This bright, herbaceous topping balances the chili's smoky flavors perfectly.
Serve immediately for maximum freshness, or store in the fridge for up to 3 days. 🌿
Spicy Cashew Sour Cream
Blend 1 cup soaked cashews (soaked for 2 hours), 2 tbsp lime juice, 1 tbsp apple cider vinegar, and ½ tsp cayenne pepper until smooth. This dairy-free alternative adds a creamy, slightly spicy contrast. For extra richness, add 1 tbsp melted coconut oil to the blend. 🥜
Roasted Corn Relish
Char 1 cup corn kernels in a dry skillet over medium-high heat for 5 minutes** until slightly blackened. Toss with 1 tbsp lime juice, 1 tbsp chopped cilantro, and ¼ tsp salt.
This sweet, smoky relish adds texture and a pop of color. Store in an airtight container for up to 4 days. 🌽
Nutrition facts
Frequently asked questions
Why does this chili use both black and white beans?
The combination creates a perfect texture contrast—creamy white beans balance the firmness of black beans, while the color contrast makes it visually appealing. Plus, white beans add subtle sweetness that rounds out the smoky, spiced flavors. This duo also boosts protein and fiber content compared to single-bean versions.
Can I make this chili in a slow cooker?
Brown your spices and aromatics in a skillet first, then transfer everything to the slow cooker. Cook on low for 6-7 hours or high for 3-4 hours. The slow cooker enhances the deep flavor development even more. Just stir occasionally and add a splash of broth if it gets too thick.
What if I can't find ancho peppers?
Use 1 tbsp chipotle powder plus 1 tsp smoked paprika for smokiness, or substitute 1 dried pasilla pepper (remove seeds). For heat, add ½ tsp cayenne pepper to compensate. The key is maintaining that smoky depth—don't skip this step entirely!
How do I prevent the chili from getting too thick?
Start with 3 cups broth and add ½ cup more if needed during cooking. The beans release starch as they simmer, thickening the chili. For meal prep, store with 1 tbsp broth per serving in separate containers—stir it in when reheating to restore moisture.
Is this chili spicy?
Not particularly! The ancho peppers provide smoky flavor without heat, and the recipe uses mild spices. For extra kick, add ½ tsp cayenne pepper or serve with hot sauce on the side. The lime juice at the end balances any spiciness beautifully.
