Shakshuka with Beans: Hearty One-Pan Recipe

Updated November 6, 2026

Total time
40 min
prep 15 min · cook 25 min
Serves
4
portions as written

Jump to recipe

Shakshuka with Beans: Hearty One-Pan Recipe

Shakshuka is a beloved North African and Middle Eastern dish of eggs poached in a spiced tomato sauce. Adding beans transforms it into a heartier, more substantial meal, boosting the fiber and protein while making it even more satisfying. This one-pan recipe is forgiving, flexible, and perfect for breakfast, lunch, or dinner.

Ingredients

  • 3 tbsp (45 ml) olive oil
  • 1 large yellow onion, diced (about 1 ½ cups / 200 g)
  • 1 red bell pepper, diced (about 1 cup / 150 g)
  • 3 cloves garlic, minced
  • 1 tsp ground cumin
  • 1 tsp smoked paprika
  • ½ tsp ground coriander
  • ¼ tsp cayenne pepper (optional, for heat)
  • 1 (28 oz / 800 g) can crushed tomatoes
  • 1 (15 oz / 425 g) can cannellini beans, drained and rinsed
  • ½ tsp salt, plus more to taste
  • ¼ tsp black pepper
  • 4 large eggs
  • ¼ cup (15 g) fresh parsley or cilantro, chopped, for garnish
  • 4 slices crusty bread or pita, for serving

Instructions

  1. Heat the olive oil in a large, deep skillet (12-inch / 30 cm) over medium heat. Add the onion and bell pepper, and cook, stirring occasionally, until softened, about 6-7 minutes.
  2. Add the garlic, cumin, smoked paprika, coriander, and cayenne (if using). Cook for 1 minute until fragrant, stirring constantly to prevent burning.
  3. Pour in the crushed tomatoes, add the drained beans, salt, and black pepper. Stir well to combine. Bring the sauce to a gentle simmer, then reduce heat to medium-low. Let it cook, uncovered, for 10 minutes, stirring occasionally, until the sauce thickens slightly.
  4. Using the back of a spoon, make 4 wells in the sauce. Crack one egg into each well. Season the eggs with a pinch of salt and pepper.
  5. Cover the skillet with a lid and cook over medium-low heat for 6-8 minutes, until the egg whites are set but the yolks are still soft and runny. If you prefer firmer yolks, cook for 9-10 minutes. For food safety, egg dishes should be cooked to a safe minimum internal temperature of 160°F (71°C) as measured with a food thermometer, if you are concerned about doneness.
  6. Remove from heat and sprinkle with fresh parsley or cilantro. Serve immediately with crusty bread or pita for dipping.

Tips

  • Bean choice: Cannellini, great northern, or chickpeas all work beautifully. If using chickpeas, consider adding a pinch of cinnamon for a slightly sweeter, more North African flavor.
  • Don’t overcook the eggs: The yolks should still be slightly jiggly when you take the pan off the heat; they will continue to set as the dish rests. If you like firm yolks, cook a couple of minutes longer, but be aware the whites may become rubbery.
  • Adjust the sauce consistency: If the sauce looks too thick before adding the eggs, stir in a splash of water or vegetable broth. If it’s too thin, let it simmer a few extra minutes to reduce.
  • Make it ahead: You can prepare the tomato-bean sauce up to 2 days in advance. Store it in the fridge, then reheat gently and poach the eggs when ready to serve.

Serving Suggestions

Serve shakshuka straight from the skillet with warm pita, naan, or crusty sourdough for dipping into the yolks and sauce. For a lighter option, pair it with a simple green salad dressed with lemon and olive oil. It also works well over couscous or quinoa for a more filling meal. A dollop of plain yogurt or labneh on top adds a cool, creamy contrast.

Variations

  • Spicy harissa shakshuka: Stir 1-2 tablespoons of harissa paste into the tomato sauce for a fiery, complex heat.
  • Feta and olives: Crumble ½ cup (75 g) feta cheese over the eggs during the last 2 minutes of cooking, and add a handful of Kalamata olives to the sauce.
  • Green shakshuka: Replace the tomatoes with 4 cups (about 300 g) of chopped spinach or Swiss chard, and use ½ cup (120 ml) vegetable broth instead. Cook until the greens are wilted, then proceed with the eggs.
  • Add sausage: Brown ½ lb (225 g) of ground lamb or beef in the skillet before adding the onion; cook until browned, then continue as directed. Ensure the meat reaches a safe minimum internal temperature of 160°F (71°C) for ground meat.

Storage and Reheating

Refrigerate any leftover shakshuka in an airtight container within 2 hours of cooking. It will keep for up to 3 days. To reheat, gently warm it in a skillet over low heat, adding a splash of water if the sauce has thickened. Be careful not to overcook the eggs, as they will become tough. You can also reheat individual portions in the microwave in 30-second bursts, but the eggs may become rubbery. For best results, if you know you’ll have leftovers, omit the eggs and store the sauce separately, then poach fresh eggs when reheating.

Frequently Asked Questions

Can I use other beans? Yes, any canned bean works—black beans, pinto beans, or even lentils. Just be sure to drain and rinse them well to remove excess sodium and starch.

Can I make this vegan? Absolutely. Skip the eggs and instead add extra beans or tofu. For a tofu version, crumble firm tofu and sauté it with the spices before adding the tomatoes, or simply add more beans for a hearty, protein-rich stew.

How do I know the eggs are done? The whites should be completely set and opaque, while the yolks should still be soft and slightly runny. If you prefer firm yolks, cook for an additional 2-3 minutes. For food safety, the egg dish should reach 160°F (71°C) if you’re serving vulnerable individuals.

Can I use fresh tomatoes instead of canned? Yes, use about 2 pounds (900 g) of ripe tomatoes, peeled and chopped, or 3 cups of diced fresh tomatoes. Simmer the sauce for an extra 5-10 minutes to allow it to thicken, as fresh tomatoes are more watery than canned.

Is this dish spicy? The base recipe is mildly spiced, with just a hint of warmth from the paprika and cayenne. If you prefer no heat, omit the cayenne. For more heat, add a chopped fresh chili or extra cayenne.

Can I double the recipe? Yes, but use a larger skillet or Dutch oven to ensure even cooking. You may need to increase the cooking time for the sauce by a few minutes, and poach the eggs in batches if they don’t all fit comfortably.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).