Breakfast & Brunch
This black bean shakshuka recipe transforms a simple breakfast into a restaurant-quality experience with rich tomato sauce, hearty black beans, and perfectly poached eggs. The slow-simmered spices create deep, aromatic layers that make every bite feel like a warm embrace—ideal for chilly mornings or lazy weekends.
What sets this version apart is the black bean addition, turning a classic into something even more satisfying and protein-packed.
The foundation of great shakshuka lies in the sauce: tomatoes caramelized with onions, garlic, and a blend of cumin, paprika, and chili flakes. I let it simmer for 20 minutes to develop that deep, complex flavor without burning, while the black beans add texture and earthiness.
The secret? A gentle poach for the eggs—no cracking, no fuss, just silky yolks that melt into the sauce at the perfect moment.
By the time you're done, you'll have a dish that's comforting yet vibrant—golden-brown edges on the crust, tender beans, and eggs that slide effortlessly off the fork.
It's the kind of meal that feels indulgent but is actually simple to prepare, with just 10 ingredients and 30 minutes of active time. The best part? Leftovers taste even better the next day, making it perfect for meal prep.
Serve with crusty bread to soak up every last drop of sauce or alongside a fresh salad for balance. This isn't just breakfast—it's a flavor-packed centerpiece that works for brunch, lunch, or even dinner. Let's get cooking!
Ingredients for black bean shakshuka
Ten ingredients, restaurant-quality flavor—this black bean shakshuka is pure comfort in a skillet.
| Ingredient | Amount | Notes |
|---|---|---|
| Canned Black Beans 🫘 | 1 ½ cups | Drained and rinsed thoroughly |
| Canned Crushed Tomatoes 🍅 | 1 can (28 oz) | San Marzano preferred |
| Yellow Onion 🧅 | 1 whole | Thinly sliced for even cooking |
| Garlic Cloves 🧄 | 4 cloves | Minced for aromatic depth |
| Ground Cumin 🌿 | 1 tbsp | Toasted for enhanced flavor |
| Smoked Paprika 🌶️ | 1 tbsp | For rich, smoky notes |
| Chili Flakes 🔥 | ½ tsp | Adjust for heat preference |
| Large Eggs 🥚 | 4 whole | Freshly laid preferred |
| Extra-Virgin Olive Oil 🫒 | ½ cup | For drizzling and frying |
| Salt 🧂 | 1 tsp | Diamond Crystal preferred |
| Fresh Cilantro 🌿 | ¼ cup | Chopped for garnish |
| Crusty Bread 🍞 | 4 slices | For serving |
The black beans are the game-changer here. Look for no-salt-added canned beans—they keep the flavor balanced. I always grab Goya or Bush's from the Latin market or grocery store, but any good-quality brand works. The crushed tomatoes? San Marzano is worth the splurge—their sweetness and low acidity make all the difference. Thinly slice that onion (about 1/4-inch thick) so it caramelizes beautifully. Fresh garlic cloves should smell pungent when peeled—no musty odors! Toast your cumin seeds in a dry pan for 30 seconds before grinding for extra depth.
No smoked paprika? Regular paprika plus a pinch of liquid smoke gets you close. Short on chili flakes? Crushed red pepper flakes at half the amount work in a pinch. Eggs are non-negotiable for texture, but if you're vegan, swap them for silken tofu cubes (they take on the sauce beautifully). The olive oil matters—use something fruity and peppery, not that bland supermarket stuff. For the cilantro, I always buy extra because half gets torn over the top and half goes into the sauce. Trader Joe's has the freshest bunches, but any bright green leaves work.
This dish tastes even better the next day—leftovers keep for 4-5 days in the fridge. Store in an airtight container with a lid on top to prevent skin formation. For meal prep, I portion it into individual containers with a slice of crusty bread on the side. Freezes beautifully for 3 months—just reheat gently on low heat, adding a splash of water if it thickens too much. The bread? Toast it fresh when serving—nothing beats warm, crispy crust to soak up that rich sauce.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this—just toss everything into one skillet, let it simmer, and walk away. No chopping, no fuss, and no extra dishes. The beans and tomatoes melt together while you handle whatever else life throws at you.
- Earthy & Smoky Depth: That cumin and garlic? Chef’s kiss. The crushed tomatoes caramelize into a rich sauce, while the black beans add hearty texture—it’s like a hug in a bowl, but make it vegetarian and packed with flavor.
- Meal Prep MVP: Make a big batch on Sunday, and you’ve got lunch for days. It reheats beautifully, whether you’re packing it for work or serving it cold in tacos. (Yes, even on a Tuesday night.)
- Budget-Friendly Powerhouse: Canned beans and tomatoes keep this dish dirt cheap without sacrificing taste. Honestly, I’ve fed four people for under $10 with this—leftovers? Even better. It’s my go-to when money’s tight but flavor isn’t.
Step-by-step instructions for black bean shakshuka
This smoky, spiced tomato-bean sauce with poached eggs is easier than it looks—let's make it together.
Sauté Aromatics Until Fragrant
Heat the 0.5 cup extra-virgin olive oil in a large, deep skillet over medium heat. Add the 1 whole yellow onion, sliced thinly, and cook for 5-6 minutes until soft and translucent. You'll know it's ready when the edges start to turn golden—this builds flavor.
Push the onions to one side of the pan and add the 4 cloves garlic cloves, minced. Stir for 30 seconds until fragrant—garlic burns quickly, so keep an eye on it. Return the onions to the center and sprinkle with the 1 tbsp ground cumin and 1 tbsp smoked paprika, stirring constantly for 1 minute to toast the spices and release their aromas.
Build the Spiced Tomato-Bean Sauce
Pour in the 1 can (28 oz) canned crushed tomatoes and stir to combine with the onions and spices. Bring the mixture to a gentle simmer, then reduce heat to low. Let it cook uncovered for 15 minutes, stirring occasionally, until the sauce thickens slightly and the flavors meld.
Add the 1.5 cups canned black beans, drained and rinsed, along with the 0.5 tsp chili flakes and 1 tsp salt. Stir well to distribute everything evenly. The sauce should now have a rich, smoky depth with visible bean chunks—this is where the magic happens. Let it simmer for another 10 minutes to let the flavors develop fully.
Create Wells for the Poached Eggs
Increase the heat to medium-low and use a spoon to create 4 small wells in the sauce, spacing them evenly. Crack each of the 4 whole large eggs into a separate small bowl or ramekin first—this prevents shell fragments from falling into the sauce. Gently slide each egg into its well.
Cover the skillet with a lid and cook for 5-6 minutes, until the egg whites are set but the yolks remain runny. The sauce should be bubbling gently around the eggs—this gentle heat ensures the yolks stay creamy. Avoid peeking under the lid; every time you lift it, you risk disturbing the eggs.
Finish and Serve with Fresh Herbs
Once the eggs are perfectly poached, remove the skillet from heat. Let the shakshuka rest for 2-3 minutes to allow the eggs to finish setting slightly. Sprinkle the 0.25 cup fresh cilantro, chopped, evenly over the top for a bright, fresh finish.
Serve immediately with the 4 slices crusty bread on the side for dipping. The sauce should be thick enough to hold its shape around the eggs, with a balance of smoky, spicy, and slightly sweet tomato flavors. Each bite delivers warm, creamy eggs nestled in the rich bean-tomato sauce—pure comfort food at its best.
Pro Tips For Making Black Bean Shakshuka
- Sauté Onions Slowly: Don’t rush the onions—they’re the flavor base here. Cook them on medium-low heat for 8–10 minutes until deep golden, not browned, or you’ll taste bitterness. I learned this the hard way after burning three batches and wondering why my shakshuka kept tasting smoky.
- Drain and Rinse Beans: Skip the salt rinse, but drain those beans thoroughly—even canned ones hold liquid. Leftover moisture dilutes the sauce and makes it watery. Just pop the can in a colander for 30 seconds, shake it out, and you’re good.
- Simmer, Don’t Boil: Once the tomatoes and beans hit the pot, keep it at a gentle simmer (tiny bubbles, occasional swirls). Boiling scalds the tomatoes and turns the sauce mushy. Lower the heat if it gets too lively—this is where the texture makes or breaks your dish.
- Toast the Cumin First: Bloom that ground cumin in the oil for 30 seconds before adding onions. It deepens the earthy flavor and cuts through the beans’ richness. Sounds weird, but it works—your future self will notice the difference when the spices sing instead of just sitting there.
Pro cooking tips for this recipe
Sauce Perfection
The secret to a restaurant-quality shakshuka sauce starts with San Marzano tomatoes—their sweetness and low acidity prevent bitterness. I always simmer uncovered for 25 total minutes to develop deep flavor while preventing skin formation.
The black beans add texture, so I stir them in after the initial tomato simmer to preserve their shape. 🌶️
For extra depth, toast 1 tbsp cumin seeds in a dry pan for 30 seconds before grinding—this releases aromatic oils that transform the sauce. If your sauce thickens too much, add 2 tbsp water at the end to loosen it just enough for perfect egg poaching.
The sauce should coat the back of a spoon but still be pourable.
Egg Poaching Mastery
Use fresh eggs straight from the fridge—they poach more cleanly than room-temperature eggs. Create small, deep wells in the sauce (about 1.5 inches wide) and gently slide eggs in using a small bowl to avoid shell fragments.
Cover the pan and cook on low heat—this prevents the eggs from jiggling and breaking. 🥚
Never peek under the lid while poaching! Every time you lift it, you risk disturbing the eggs. Instead, trust the 5-6 minute timer—that's when the whites set but yolks stay runny. If the sauce bubbles too vigorously, reduce heat immediately to prevent overflow.
Spice Balance
Adjust heat to taste by controlling the chili flakes—start with 0.5 tsp and add more if you love spice. For smokiness, I add 1 tsp liquid smoke along with the paprika.
The cumin should be toasted until fragrant but not burnt—over-toasting creates bitterness. Taste the sauce before adding eggs to ensure proper seasoning.
For a sweeter sauce, add 1 tsp honey at the end. For more acidity, squeeze in 1 tbsp lemon juice after removing from heat. The eggs should slide off the fork easily when done—if they stick, the sauce needs more liquid.
Equipment Essentials
A deep, heavy skillet (like Le Creuset or Lodge) is ideal—it holds heat well and prevents burning. I use a long-handled spoon to create wells without disturbing the sauce. A small bowl or ramekin for cracking eggs helps prevent shell fragments from falling into the sauce. 🔥
For serving, I recommend individual bowls with 4 slices crusty bread on the side. The bread should be toasted fresh—it absorbs the sauce beautifully. If you're serving a crowd, preheat the bowls in the oven for 5 minutes to keep the shakshuka warm.
Nutrition facts
Frequently asked questions
Can I make this black bean shakshuka without eggs?
For a vegan version, simply omit the eggs and add 1 cup silken tofu, cut into cubes, during the final 5 minutes of cooking. The tofu will absorb the sauce beautifully. Alternatively, use chickpeas or white beans for extra protein and texture—just increase the simmer time by 5 minutes to soften them.
How do I prevent the sauce from getting too thick?
If your sauce thickens too much, add 2-3 tablespoons water or vegetable broth at the end to loosen it just enough for perfect egg poaching. The ideal consistency should coat the back of a spoon but still be pourable. For extra insurance, simmer uncovered to prevent reduction—this recipe's 25-minute simmer is perfect for developing flavor without over-thickening.
What's the best way to reheat leftovers?
Reheat gently on low heat in a skillet with a splash of water to prevent drying. Stir occasionally and cover with a lid to trap moisture. For microwave reheating, use 30-second intervals on low power, stirring between each interval. The eggs will firm up slightly but remain tender—just add a splash of water and let it sit covered for 1-2 minutes before serving.
Can I use fresh tomatoes instead of canned?
Yes, but you'll need to prep them first. Use 2 pounds fresh tomatoes, roasted at 400°F for 25 minutes until soft and blistered. Peel, seed, and blend until smooth before using in place of crushed tomatoes. Fresh tomatoes have more water content, so you may need to simmer slightly longer to reduce the sauce. For best results, combine half fresh and half canned for balanced flavor.
Why did my eggs break while poaching?
This usually happens from three common issues: too much movement (peeking under the lid), overly vigorous bubbling (reduce heat immediately), or eggs not fresh enough. Always use eggs straight from the fridge, create small, deep wells, and maintain low, gentle heat. If the sauce bubbles too much, reduce heat to medium-low and cover tightly to create a steam environment.
