Soups & Stews
This black bean chili recipe from scratch delivers restaurant-quality depth with smoky spices and hearty texture that lingers long after the last bite. The secret lies in slow simmering—letting flavors meld over 45 minutes while developing that perfect balance of smoky, spicy, and slightly sweet.
I've perfected this version to be rich enough to satisfy meat lovers but still deeply satisfying for plant-based eaters.
What sets this chili apart is the layered complexity: charred onions and garlic form the aromatic base, while cumin, smoked paprika, and a touch of cocoa powder create that signature smoky depth without overpowering.
The beans stay tender yet hold their shape, and the broth reduces to a velvety consistency that coats every spoonful. This isn't just chili—it's a textured, flavor-packed experience that transforms simple pantry ingredients into something extraordinary.
Toppings are where you can customize—crumbled avocado adds creamy richness, cashew cream brings velvety contrast, and fresh cilantro brightens each bite. The chili reheats beautifully, making it perfect for meal prep or feeding a crowd.
Whether you're serving it at a weekend gathering or enjoying a cozy weeknight dinner, this recipe delivers hearty satisfaction with every spoonful.
Ready in just 1 hour but worth every minute of simmering, this chili proves plant-based meals can be just as robust and flavorful as traditional versions. The technique is straightforward, but the results are anything but basic—deep, complex, and impossible to resist. Let's get cooking!
Ingredients for black bean chili recipe from scratch
Sixteen ingredients transform into smoky, textured chili that rivals restaurant versions.
| Ingredient | Amount | Notes |
|---|---|---|
| Black Beans 🌱 | 2 cups | Drained and rinsed thoroughly |
| Yellow Onions 🧅 | 1 ½ cups | Diced, charred for depth |
| Garlic Cloves 🧄 | 6 cloves | Minced, charred with onions |
| Canned Diced Tomatoes 🍅 | 2 cups | Fire-roasted preferred |
| Vegetable Broth 💧 | 3 cups | Low-sodium preferred |
| Ground Cumin 🌿 | 2 tbsp | Toasted for deeper flavor |
| Smoked Paprika 🌶️ | 1 ½ tbsp | Key for smoky depth |
| Unsweetened Cocoa Powder 🍫 | 1 tbsp | For subtle richness |
| Extra-Virgin Olive Oil 🫒 | 2 tbsp | For charring onions/garlic |
| Avocados 🥑 | 2 whole | Ripe, for creamy topping |
| Cashews 🥜 | ½ cup | Soaked for velvety cream |
| Fresh Cilantro 🌿 | ¼ cup | Chopped, for brightness |
| Lime 🍋 | 1 whole | Juiced for acid balance |
| Sea Salt 🧂 | 1 ½ tsp | Diamond Crystal preferred |
| Black Pepper 🌶️ | ½ tsp | Freshly cracked |
The onions and garlic are non-negotiable for depth—char them in extra-virgin olive oil until blackened at the edges. Whole Foods bulk bins offer the best quality for spices like cumin and smoked paprika, but any reputable grocery store carries adequate options. For the beans, drained and rinsed thoroughly removes excess starch that can make the chili gummy. Charred tomatoes add another layer of complexity, so fire-roasted canned tomatoes are ideal if you want to skip the stovetop charring step. The cocoa powder might seem unusual, but it's what gives this chili that subtle richness without overpowering the smoky notes.
No smoked paprika? Substitute with equal parts chili powder and a pinch of liquid smoke, though the flavor won't be identical. Fresh cilantro is ideal, but dried works at one-third the amount if you're in a pinch. For the avocado topping, ripe but firm avocados yield the best texture—if they're too soft, the creaminess suffers. The cashew cream requires soaking (at least 2 hours or overnight), but pre-soaked cashews from the refrigerated section at Trader Joe's save time. The lime juice should be freshly squeezed; bottled lime juice lacks the bright acidity needed to balance the richness.
This chili reheats beautifully—simmer for 10 minutes on the stove or microwave for 2-3 minutes with a splash of broth to restore moisture. Store in airtight containers for 5 days in the fridge or 3 months in the freezer. For meal prep, portion into individual containers with the toppings on the side so they stay fresh. The cashew cream freezes well too, so make extra for future use. The charred onion and garlic base can be prepped ahead and stored separately for 1 week in the fridge, cutting total cooking time on busy days.
Why You'll Love This Recipe
- No Chopping Struggle: I swear by this recipe because it only asks for one onion and a few garlic cloves—nothing fancy. Honestly, I’ll often just use the back of a spoon to smash the garlic cloves straight into the pot while the onions caramelize. That’s it. Minimal prep, maximum flavor.
- Deep Umami Magic: The way the black beans soften into the broth while the tomatoes break down into a jammy consistency? It’s the kind of slow-simmered richness that makes you pause mid-bite. Between us, I’ll add a splash of vinegar at the end just to cut through the richness—trust me, it’s the secret.
- Lunch for Days: This chili tastes even better the next day, which is perfect because I’ll make a double batch on Sundays. The beans thicken just enough to hold up in the fridge, and I’ll portion it into containers with a sprinkle of cheese or avocado on top. My kids actually ask for leftovers—rare, I know.
- Pantry Superhero: I’ll make this with whatever’s already in my cupboards. Swap the vegetable broth for chicken if you’re feeling fancy, or toss in a handful of frozen corn if you’re out of tomatoes. It’s the kind of recipe that doesn’t judge your ingredient choices. Plus, black beans are dirt cheap—this feeds four for under $8.
Step-by-step instructions for black bean chili with smoky toppings
This method builds rich, complex flavor through precise technique and layered components.
Develop the Chili Base with Charred Aromatics
Heat the 2 tablespoons extra-virgin olive oil in a heavy Dutch oven over medium-high heat. Add the 1.5 cups diced yellow onions and cook, stirring occasionally, for 8-10 minutes until deeply caramelized with dark brown spots. This charring creates the foundation for smoky depth.
Add the 6 cloves minced garlic cloves and cook for 30 seconds until fragrant—don't let them burn. Immediately add the 2 tablespoons ground cumin and 1.5 tablespoons smoked paprika, stirring constantly for 1 minute to toast the spices and release their aromatic oils. This step unlocks the full complexity of the chili.
Build the Chili Foundation with Tomatoes and Beans
Pour in the 2 cups canned diced tomatoes and 3 cups vegetable broth, scraping up any browned bits from the bottom of the pot. Add the 2 cups drained and rinsed black beans, 1 tablespoon unsweetened cocoa powder, 1.5 teaspoons sea salt, and 0.5 teaspoon black pepper. Bring to a simmer over medium heat.
Reduce heat to low and let the chili simmer uncovered for 45-50 minutes, stirring occasionally. The beans should become tender and the flavors meld into a cohesive base. Taste and adjust seasoning—this is where you ensure perfect balance before adding toppings.
Prepare the Creamy Cashew Topping
While the chili simmers, prepare the cashew cream by draining and rinsing the 0.5 cup soaked cashews. In a food processor, blend the cashews with 2 tablespoons water until smooth, scraping down the sides as needed. This creates a velvety base for the topping that won't overpower the chili's smoky flavor.
Transfer the cashew cream to a small bowl and stir in 2 tablespoons extra-virgin olive oil, 0.25 cup chopped fresh cilantro, and 1 tablespoon lime juice. The lime juice brightens the richness of the cashews while the cilantro adds fresh herbal notes that cut through the chili's depth.
Assemble and Garnish for Perfect Presentation
Ladle the finished chili into serving bowls. Spoon the cashew cream over each portion, then top with 2 whole avocados sliced into thick wedges. The avocado's creamy texture contrasts beautifully with the smoky chili while adding healthy fats that balance the dish.
Finish with an additional sprinkle of fresh cilantro and a pinch of smoked paprika for visual appeal and extra smoky flavor. Serve immediately while the chili is hot and the avocado is at its peak creaminess—this dish tastes best when all components are at their freshest.
Pro Tips For Making Black Bean Chili Recipe From Scratch
- Sauté Onions Low and Slow: I used to rush this and end up with bitter, charred onions—kill the flavor before it starts. Cook them over medium-low heat for at least 8-10 minutes until they’re translucent and starting to caramelize. That’s when they’ll actually sweeten the whole chili.
- Soak Beans Overnight (Or At Least 4 Hours): Skipping this makes your chili gummy. Rinse the black beans first, then let them soak—even a quick 4-hour soak in hot water helps. Drain and rinse again before cooking to cut down on digestive issues (yes, it matters).
- Deglaze with Broth Early: After browning onions and garlic, splash in ½ cup of vegetable broth right away. Let it bubble for 2 minutes to lift all the stuck-on bits—this builds flavor faster than scraping later. You’ll taste the difference in the final depth.
- Simmer Uncovered for 30 Minutes: I learned this the hard way—covering too soon turns your chili into a soup. After adding tomatoes and broth, let it bubble uncovered for the first 30 minutes to thicken naturally. Then cover loosely for the last 20-30 minutes to let flavors meld.
Common mistakes when making perfect results
Skipping the Char
One of the biggest mistakes I see is skipping the charring step for onions and garlic. That deep, smoky flavor comes from the Maillard reaction—those browned bits are flavor gold.
If you're in a rush, at least caramelize them until golden instead of skipping entirely. I've tested this recipe both ways, and the difference is night and day. 🔥
Under-Soaking Cashews
For the cashew cream topping, many people underestimate the importance of proper soaking. If you skip soaking or don't soak long enough (2 hours minimum), your cream will turn out gritty and uneven.
I recommend soaking overnight for the smoothest texture. For a quick fix, use pre-soaked cashews from the refrigerated section at Trader Joe's—they're a game-changer.
Over-Simmering the Chili
Patience is key with chili, but there's such a thing as over-simmering. After 50 minutes, the beans can start breaking down and the broth may reduce too much, making the chili thick and pasty.
I like to check at 45 minutes and taste test—if the beans are tender but still hold their shape, it's perfect. If it's too thick, add 2-3 tablespoons of broth to restore balance.
Ignoring the Cocoa Powder
This might seem like an odd ingredient, but that 1 tablespoon of cocoa powder is what gives this chili its signature depth. Without it, the flavor profile feels flat.
If you're avoiding it for dietary reasons, substitute with 1 teaspoon instant espresso powder for a similar earthy note. The cocoa enhances the smoky paprika rather than overpowering it.
Using Low-Quality Beans
Not all black beans are created equal. For this recipe, I recommend using dried black beans if you have time to soak them overnight, or high-quality canned beans like Dr. McDougall's or Annie's organic.
Cheap canned beans often have a metallic taste and mushy texture that ruins the dish. Always drain and rinse them thoroughly to remove excess sodium and starch.
Adding Toppings Too Early
Avocados and cashew cream should be added just before serving. If you mix them in too early, the avocado will turn brown and the cashew cream may separate. I like to prepare the toppings separately and assemble right before eating.
For meal prep, store the chili and toppings separately in airtight containers—this keeps everything fresh and vibrant. ✨
Nutrition facts
Frequently asked questions
Can I make this black bean chili without smoked paprika?
For a 1:1 substitution, mix 1 tablespoon chili powder with ½ teaspoon liquid smoke. The liquid smoke adds smokiness, but the flavor won't be identical. Alternatively, try ½ teaspoon chipotle powder for a deeper, spicier kick. Adjust other spices to taste after simmering.
How do I adjust the heat level in this recipe?
For a milder version, reduce the smoked paprika to 1 teaspoon and omit the cocoa powder. For extra heat, add ½ teaspoon cayenne pepper or 1 diced jalapeño with the onions. Always taste as you go—chili flavors develop during simmering, so you can adjust at the end if needed.
What's the best way to reheat leftovers?
Reheat gently on the stove over low heat for 10-15 minutes, stirring occasionally. Add 1-2 tablespoons broth if it thickens too much. For microwave reheating, cover with a damp paper towel and heat for 2-3 minutes on medium power. Never reheat avocado toppings—always add fresh when serving.
Can I make this chili in an Instant Pot?
Yes! Sauté onions and garlic first, then add all ingredients except toppings. Cook on high pressure for 8 minutes, then quick-release. The beans will be slightly firmer, so extend simmering to 10-15 minutes on the stove afterward if you prefer softer texture. Reduce broth by ½ cup since Instant Pot cooking reduces less liquid.
What are good sides to serve with this chili?
This hearty chili pairs beautifully with cornbread (especially vegan versions), cilantro-lime rice, or crusty whole-grain bread for scooping. For a complete meal, add a simple mixed green salad with lime vinaigrette to balance the richness. The creamy toppings make it satisfying on its own, but sides add great texture contrast.
