12 Bean Soup Recipe Vegan: Hearty Plant-Based Protein in One Pot

Soups & Stews

12 Bean Soup Recipe Vegan: Hearty Plant-Based Protein in One Pot

This vegan 12 bean soup recipe transforms humble pantry staples into a protein-packed, hearty meal that rivals traditional versions. The secret lies in layering flavors through slow simmering—where dried beans develop deep, earthy richness while aromatic vegetables build complexity without a single drop of animal product. I've refined this recipe over years of testing, ensuring each spoonful delivers satisfying texture and bold seasoning that vegans and meat-eaters alike will crave.

The beauty of this one-pot wonder is its adaptability—whether you're meal prepping for the week or feeding a crowd. We'll start with a simple soak of twelve different beans (no fancy preparation required), then build flavor through sautéed onions, garlic, and spices that bloom beautifully during the 4-hour simmer. The result? A soup so hearty it stands alone as a main dish, yet light enough to pair with crusty bread or over rice.

What sets this apart is the balance of textures: creamy white beans contrast with firm black beans, while chickpeas add protein and structure. The broth, made from vegetable stock and tomato paste, develops a deep, savory base that carries all the flavors—no heavy cream or butter needed. Each bite delivers that perfect harmony of earthy, smoky, and slightly sweet notes that make plant-based eating feel indulgent.

Perfect for chilly evenings or holiday gatherings, this soup keeps well for days, making it ideal for batch cooking. The instructions walk you through every step—from soaking beans to adjusting seasoning—so you'll achieve restaurant-quality results in your own kitchen. Let's get started on creating this nourishing, protein-rich masterpiece.

👨‍🍳
Difficulty
Medium
🌱
Diet
Vegan
🔥
Calories
Med Cal

Ingredients for 12 bean soup recipe vegan

Twelve types of beans, one pot, endless flavor—this vegan soup is pure comfort food magic.

Ingredient Amount Notes
Dried Navy Beans 🫘 1 cup Rinsed before soaking
Dried Black Beans 🫘 1 cup Rinsed before soaking
Dried Chickpeas 🫘 1 cup Rinsed before soaking
Dried Kidney Beans 🫘 ½ cup Rinsed before soaking
Dried Lentils 🫘 ½ cup Green or brown preferred
Dried Pinto Beans 🫘 ½ cup Rinsed before soaking
Dried White Beans 🫘 ½ cup Cannellini or great northern
Dried Red Beans 🫘 ½ cup Rinsed before soaking
Dried Lima Beans 🫘 ¼ cup Butter or large variety
Dried Adzuki Beans 🫘 ¼ cup Rinsed before soaking
Dried Anasazi Beans 🫘 ¼ cup Rinsed before soaking
Dried Great Northern Beans 🫘 ¼ cup Rinsed before soaking
Yellow Onion 🧅 2 whole Diced, medium size
Garlic Cloves 🧄 6 cloves Minced, fresh preferred
Carrots 🥕 3 whole Diced, medium size
Celery Stalks 🧅 3 whole Diced, fresh preferred
Tomato Paste 🍅 ½ cup No salt added
Vegetable Broth 💧 6 cups Low-sodium preferred
Extra-Virgin Olive Oil 🫒 ¼ cup For sautéing vegetables
Cumin Seeds 🌿 1 tbsp Toasted for depth
Ground Cumin 🌿 1 tsp For extra flavor
Smoked Paprika 🌶️ 1 tsp For smoky depth
Dried Thyme 🌿 1 tsp Or fresh, finely chopped
Bay Leaves 🍃 2 whole Removed before serving
Salt 🧂 2 tsp Adjust to taste
Black Peppercorns 🌶️ 1 tsp Freshly ground preferred
Apple Cider Vinegar 🍎 1 tbsp Brightens flavors

The beans are the heart of this soup, so quality matters. Trader Joe's and Whole Foods carry the widest variety of dried beans, but the regular grocery store bulk section works too—just check for vibrant color and no signs of pests. I always grab extra beans because they're the star here. For the best texture, use a mix of firm and creamy beans: black beans, chickpeas, and lentils add structure, while navy beans and white beans bring that creamy richness everyone loves. If you're short on time, canned beans (drained and rinsed) work in a pinch, but soaking overnight gives you that restaurant-quality depth.

No smoked paprika? Regular paprika plus a pinch of liquid smoke gets you close. Short on cumin seeds? Ground cumin at double the amount works fine. Fresh thyme? Use dried at one-third the amount. The tomato paste can be the squeeze-tube kind from Trader Joe's—it's perfect for this. For extra depth, add a dash of liquid smoke or a splash of balsamic vinegar if you've got it. The broth is non-negotiable—use low-sodium vegetable broth to control salt levels. If you can't find it, homemade vegetable stock is ideal, but even bouillon cubes in a pinch will do.

This soup tastes even better the next day as flavors meld. Store it in the fridge for up to 5 days or freeze portions for 3 months. I always make a double batch—one for dinner, one for lunches. The beans keep their texture beautifully when reheated gently. For serving, a sprinkle of fresh parsley or a drizzle of extra-virgin olive oil adds that restaurant touch. Leftovers? Perfect for sandwiches or as a side dish with rice.

❤️

Why You'll Love This Recipe

  • I’ll be real: my grocery budget stretches further when this is on the menu. A big pot feeds six for under $10, and those dried beans last forever. Plus, no fancy ingredients—just what you’ve probably got sitting in your cupboard. Budget-friendly doesn’t get much more reliable than this.
  • Dump-and-Go Magic: I swear, this is the kind of recipe where you can walk away while it simmers. Just toss in the soaked beans—navy, black, chickpeas, kidney—along with the lentils and spices, then let the pot do the work. No stirring every five minutes, no hovering. That’s 20 minutes of freedom right there.
  • Layered Texture Feast: Between the creamy lentils, the meaty bite of kidney beans, and the crispy chickpeas when toasted just right, every spoonful has something to offer. Honestly, the way the navy beans break down into that silky consistency while the black beans hold their shape? It’s like a party in your mouth.
  • Meal Prep MVP: This soup tastes better the next day, which is perfect because I always make a double batch. Serve it over rice for a hearty lunch, blend half for a thick vegan chili, or pack it in jars for work—it’s the one dish that does it all without feeling repetitive.

Step-by-step instructions for 12 bean soup

This hearty plant-based protein dish comes together in one pot with minimal effort.

1

Soak and Prepare All the Beans

Combine all the dried beans - the 1 cup dried navy beans, 1 cup dried black beans, 1 cup dried chickpeas, 0.5 cup dried kidney beans, 0.5 cup dried lentils, 0.5 cup dried pinto beans, 0.5 cup dried white beans, 0.5 cup dried red beans, 0.25 cup dried lima beans, 0.25 cup dried adzuki beans, 0.25 cup dried anasazi beans, and 0.25 cup dried great northern beans - in a large bowl. Cover with plenty of cold water (about 8 cups) and let them soak overnight or for at least 8 hours. This ensures they cook evenly and reduces cooking time significantly.

After soaking, drain and rinse the beans thoroughly under cold water. Give them a good shake in the colander to remove any excess water. This step is crucial because it prevents the soup from becoming watery later. I always do this over the sink to catch any stray beans that might escape the colander.

2

Sauté the Vegetables and Spices

Heat the 0.25 cup extra-virgin olive oil in a large pot over medium heat. Add the 2 whole yellow onions that have been diced and cook for 5 minutes until they become translucent and just beginning to soften. Add the 3 whole carrots and 3 whole celery stalks, both diced, and cook for another 5 minutes until they start to soften as well.

Add the 6 cloves garlic that have been minced and cook for 1 minute until fragrant. This is where the flavors really start to develop. Next, add the 1 tbsp cumin seeds and toast them for 30 seconds until they begin to sizzle and release their aroma. Immediately add the 1 tsp ground cumin, 1 tsp smoked paprika, 1 tsp dried thyme, and 2 whole bay leaves, stirring to combine with the vegetables.

3

Build the Flavor Base

Stir in the 0.5 cup tomato paste and cook for 2 minutes, stirring constantly to prevent burning. The tomato paste will deepen in color and develop a rich, savory flavor. Pour in the 6 cups vegetable broth and bring the mixture to a gentle boil. Add the drained beans and stir well to combine everything.

Add the 2 tsp salt and 1 tsp black peppercorns, then stir in the 1 tbsp apple cider vinegar. The vinegar brightens all the flavors and balances the richness of the beans and broth. This is the moment that matters: all the flavors come together in this pot, so don't rush this step. Let it simmer gently for 10 minutes to allow the spices to infuse.

4

Simmer Until Tender

Reduce the heat to low and let the soup simmer uncovered for 1.5 to 2 hours. You'll know it's ready when the beans are fork-tender and the flavors have melded beautifully. I like to stir occasionally, but not too often - this helps prevent the beans from breaking apart. The soup should have a thick, hearty consistency with the beans holding their shape.

Here's the thing - your oven might run hot, so start checking at the 1 hour 30 minutes mark. The beans are done when they're tender but still hold their shape. If the soup looks too thick, add a little water or more vegetable broth to reach your preferred consistency. If it's too thin, let it simmer uncovered for another 15-20 minutes to reduce.

5

Finish and Serve

Remove the 2 whole bay leaves from the soup. Taste and adjust the seasoning if needed - you might need a little more salt or a splash of vinegar to balance the flavors. Let the soup sit off the heat for 10 minutes before serving. This resting period allows the flavors to fully develop and the soup to thicken slightly.

Serve the soup warm with crusty bread or over rice. Each spoonful delivers a perfect balance of earthy bean flavors, aromatic spices, and the bright tang of apple cider vinegar. This soup is incredibly versatile - you can enjoy it as a main dish or serve it as a side with grilled vegetables or a fresh salad. The best part? It tastes even better the next day as the flavors continue to meld.

👨‍🍳

Pro Tips For Making 12 Bean Soup Recipe Vegan

  • SOAK NAVY BEANS ONLY: I learned this the hard way—navy beans take forever to soften if dry-soaked, while the others catch up. Skip soaking them overnight; just cover with water, bring to a boil for 2 minutes, then let them sit for an hour before draining. The black beans, chickpeas, and lentils will soften faster anyway.
  • SEPARATE KIDNEY BEANS: Kidney beans need extra attention—raw ones contain lectins that can upset your stomach. Rinse them thoroughly, then simmer them in their own pot of water for 10 minutes before adding them to the soup. Don’t skip this, even if the recipe says to toss them in raw.
  • SIMMER LOW AND LONG: This isn’t a race. After the initial boil, drop the heat to a gentle simmer—just small bubbles breaking the surface—and let it cook uncovered for 2+ hours. Rushing it leaves lentils mealy and beans tough. Trust me, the flavor deepens when you resist the urge to speed things up.
  • USE BROTH, NOT WATER: Water makes the soup bland. Swap out half the liquid for low-sodium veggie broth—it adds layers of flavor without extra salt. If you’re short on time, even a bouillon cube dissolved in water works. The difference in taste is night and day.

Serving suggestions for this recipe

Crusty Bread Pairing

Nothing beats this soup with a warm, crusty loaf of sourdough or ciabatta—the bread's chewy texture contrasts beautifully with the creamy beans. I love using Trader Joe's sourdough or a whole-grain baguette from the bakery section. For extra flair, brush the bread with garlic-infused olive oil before toasting. The crust soaks up the rich broth while adding satisfying crunch to each bite. 🥖

Rice or Quinoa Base

Serve over jasmine rice or brown rice to turn this into a complete meal. Cook the rice separately and let it absorb some of the soup's flavor before serving. For a protein boost, try quinoa or farro—both add nutty depth that complements the beans. I often make extra rice to use as a base for leftovers, making this soup even more versatile. 🍚

Fresh Garnishes

Brighten the dish with chopped cilantro or parsley for freshness. A drizzle of extra-virgin olive oil or a squeeze of lime adds brightness, especially if you prefer a tangier profile. For a smoky finish, sprinkle with crumbled vegan chorizo or a pinch of smoked salt. I keep a small bowl of garnishes on the table so everyone can customize their bowl. 🌿

Cheesy Toppings

Even though this is vegan, you can still add richness with vegan cheese options. Try dairy-free feta or nutritional yeast for a cheesy flavor without dairy. For a creamy touch, dollop with cashew sour cream or avocado slices. These toppings elevate the soup into a hearty, satisfying meal that feels indulgent. 🧀

Side Salad Contrast

A crisp arugula salad with lemon vinaigrette cuts through the soup's heartiness. Toss the greens with shaved fennel, cherry tomatoes, and toasted pumpkin seeds for texture. The acidity of the dressing balances the soup's earthy flavors, making each bite feel fresh. I often serve this as a starter to let guests enjoy the soup's depth without overwhelming their palate. 🥗

Beverage Pairings

Pair this soup with a bold red wine like Zinfandel or Cabernet Sauvignon to complement the smoky spices. For a non-alcoholic option, sparkling water with lemon or iced hibiscus tea refreshes the palate. If you prefer beer, a dark ale or stout enhances the soup's richness. I always keep a cold glass of sparkling water with lime nearby for a crisp contrast. 🍷

Nutrition facts

Servings 6
Amount Per Serving
Calories 380kcal
% Daily Value *
Total Fat 12g15%
Saturated Fat 1.5g8%
Cholesterol 0mg0%
Sodium 680mg29%
Total Carbohydrate 65g23%
Dietary Fiber 22g79%
Sugars 8g
Protein 28g56%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently asked questions

1

Can I use canned beans instead of dried for this vegan 12-bean soup?

Yes, but with adjustments! Use 3 cans (15 oz each) of drained and rinsed beans per 1 cup dried in the recipe. For best texture, combine firm beans (black, kidney) with softer ones (white, chickpeas). The soup will be ready faster, but the flavor depth won't be as rich as overnight-soaked dried beans.

2

How do I adjust the spice level for sensitive palates?

Start with half the smoked paprika and cumin, then taste as you go. For extra mildness, omit the cumin seeds entirely and use just 0.5 tsp ground cumin. Add apple cider vinegar gradually—it brightens flavors without heat. If you want warmth, add a pinch of cayenne at the end instead.

3

Why does my soup turn out too thick or too thin?

Thick? Simmer uncovered for 15-20 extra minutes to reduce. Too thin? Add ½ cup hot vegetable broth at a time while stirring. The beans release starch as they cook—this is normal! For a creamier texture without dairy, stir in ¼ cup coconut milk at the end.

4

Can I make this soup in an Instant Pot or pressure cooker?

Use the same ingredients but reduce simmer time to 30 minutes on high pressure. After cooking, let pressure release naturally for 10 minutes before opening. The beans will be tender but still hold their shape. For extra depth, sauté the aromatics separately and add them to the pot after pressure cooking.

5

What's the best way to store and reheat leftovers?

Store in airtight containers in the fridge for 5 days or freeze for 3 months. To reheat, warm gently on the stove with 1-2 tbsp water or broth per serving. For microwave reheating, cover with a damp paper towel and heat in 1-minute intervals, stirring between each. The texture stays best when reheated slowly.

★★★★★4.9(13 reviews)
Categories Soups & Stews