This Mediterranean Shakshuka is made with eggs poached in a spiced tomato and bell pepper sauce. This popular North African and Middle Eastern dish comes together in one pan in about 30 minutes. Here's how to make it with step-by-step photos and a quick recipe video.
Unlike my egg fry, where boiled eggs are fried with spices, the eggs in shakshuka cook right in the flavorful tomato sauce on the stovetop, soaking up all the delicious flavors. Serve it with warm pita or crusty bread for breakfast, brunch, or a light dinner.

I first tried shakshuka during a trip to the Middle East, and I loved the flavors. I tried making it at home and served it with warm pita bread and a cooling Greek yogurt cucumber salad.
My Mediterranean-style shakshuka recipe combines the classic tomato-and-egg base with olive oil, bell peppers, coriander, paprika, cumin, feta, and fresh herbs. It's meal prep friendly. Cook the tomato sauce in advance and refrigerate. Add the eggs when ready to serve. This is a stovetop shakshuka recipe. You don't need an oven.
This easy one-pan shakshuka recipe is easy to customize with extra spice, cheese, or vegetables. If you have leftovers, they keep well in the refrigerator and reheat well the next day, although the egg yolks will become firmer.
Looking for more Mediterranean recipes? Try our Mediterranean Chicken Wraps, Mediterranean Stuffed Peppers, Mediterranean Chicken Stew, or Mediterranean Chicken and Rice.
Quick Look: Mediterranean Shakshuka Recipe
- Prep Time: 10 minutes
- Cook Time: 20 minutes
- Total Time: 30 minutes
- Servings: 6
- Calories: ~170 kcal per serving
- Cook Method: Sauté onions and bell peppers → add garlic and spices → add tomatoes and simmer → add eggs and cook until set on the stovetop.
- Flavour Profile: Spiced, savory, and slightly tangy
- Difficulty: Easy, great for breakfast, brunch, or a light dinner
Jump to:
What is Shakshuka?
Shakshuka, also spelled shakshouka, is a popular North African and Middle Eastern dish made with eggs poached in a spiced tomato sauce.
The sauce is usually made with tomatoes, onions, bell peppers, garlic, and spices such as cumin and paprika. The eggs are then cracked directly into the simmering sauce and cooked until the whites are set and the yolks reach your preferred doneness.
This easy egg dish is traditionally served with warm pita bread or crusty bread, which is perfect for scooping up the flavorful tomato sauce.
Shakshuka Ingredients

See the recipe card at the end of the post for full ingredients, quantities, and a printable version.
- Tomatoes: Fresh, ripe tomatoes form the base of this Mediterranean shakshuka sauce. Canned tomatoes are a convenient substitute when fresh tomatoes aren't available.
- Eggs: Shakshuka is made with eggs, which are commonly poached. They are cooked directly in the simmering tomato and bell pepper sauce until the whites are set, and the yolks are as runny or firm as you like.
- Vegetables: I use onions, red bell pepper, and fresh garlic. You can use any color bell pepper or leave it out if you prefer. You can also add spinach or any greens to this recipe.
- Green chili: Optional. I add green chilies for extra heat. Skip them if you prefer a milder shakshuka. For a spicier shakshuka, add another green chili or a pinch of red pepper flakes.
- Spices: Paprika, cumin, coriander, and freshly ground black pepper give the tomato sauce its spiced flavor. You can substitute Kashmiri red chili powder for paprika.
- Cilantro (Coriander Leaves): Adds freshness to the shakshuka. Parsley is a good substitute.
- Feta cheese: Optional, but I love adding crumbled feta before serving. My kids love shakshuka with feta. Parmesan or another grated cheese also works well.
Variations
There are many variations of shakshuka. Some cooks add cheese, olives, harissa paste, or sausages, while others add lamb or chicken mince and potatoes. Even the recent popular version is green shakshuka made without tomatoes.
How to make Mediterranean Shakshuka Recipe (with Step-by-Step Photos)
1. Heat the pan: Heat 2 tablespoons of olive oil in a large skillet or pan over medium heat.
2. Soften the veggies: Add the chopped onions and bell peppers (image 1). Sauté for 5-7 minutes, or until they become soft and tender (image 2).

3. Spice it up: Lower the heat and add the minced garlic, coriander powder, cumin powder, paprika, and pepper. Stir and cook for 30 seconds to release the flavors (images 3 & 4).

4. Simmer the tomato sauce: Add the chopped tomatoes and green chilies, if using. Season with salt, and then stir to combine (images 5 & 6).

5. Cover the pan with a lid and simmer on medium-low heat for 15 minutes, or until the tomatoes are softened (images 7 & 8). Keep checking it every 5 minutes. If the sauce looks too dry, add 1-2 tablespoons of water, stir, cover, and continue cooking until the tomatoes are soft.

6. Adjust the seasoning: After 15 minutes, open the lid and mash some of the tomatoes with the back of a spoon or spatula to break them down and thicken the sauce. Taste the sauce and adjust seasonings with salt, pepper, or paprika as needed. Stir in the chopped parsley or cilantro (images 9 & 10).

7. Keep the heat low. Gently create small indentations in the sauce with the back of the spoon to make nests for the eggs (image 11).

8. Crack and nestle the eggs: Crack each egg into a small bowl first, then gently slide it into a nest in the sauce (image 12). This makes it easier to place the eggs without breaking the yolks. Repeat with the remaining eggs (images 13 & 14), spacing them evenly around the pan. You can refer to the shakshuka recipe video for a visual guide (optional).

9. Cook the eggs: Sprinkle some pepper and fresh parsley or cilantro over the eggs (image 15). Cover the pan and cook over low heat for 5-8 minutes, or until the egg whites are set and the yolks are cooked to your liking. For runny yolks, start checking around 5 minutes. Cook longer for firmer yolks.

10. Cheese, herbs, and serve: Top with crumbled feta cheese, if using, and fresh parsley or cilantro (image 16). Your Mediterranean shakshuka is ready. Serve immediately with crusty bread or pita bread and a lemon wedge for squeezing.
Tips to make the Best Mediterranean Shakshuka
- Fresh vs. canned tomatoes: Fresh tomatoes give the best shakshuka flavor, but canned tomatoes are a convenient substitute and cook faster.
- Cook the sauce until thick: The tomato sauce should be thick enough to hold the eggs in place. If it is too watery, simmer it uncovered for a few extra minutes before adding the eggs.
- Cook eggs your way: Poach the eggs to your desired doneness. Cook for about 5-8 minutes over low heat for runny yolks. Cook a little longer for firmer yolks.
- Pan size matters: The number of eggs depends on your pan size. I use a pan that comfortably fits 6 eggs. Avoid overcrowding so the eggs cook evenly.
- Make-ahead: Prepare the tomato sauce up to 2 days ahead and refrigerate it. When ready to serve, reheat the sauce in the skillet, make the wells, add the eggs, and cook until they reach your preferred doneness.
Recipe FAQs
It depends on how you like your yolks.
Runny yolks: Cook for about 5 minutes on low heat, until the whites are set, but the yolks are still runny.
Firmer yolks: Cook for 8 minutes or longer, until the eggs reach your preferred doneness.
Tip: Covering the pan helps the eggs cook faster. Also, remember, they will continue cooking from the hot sauce after you remove the pan from the heat.
Yes. You can add ground lamb or spiced sausage to shakshuka. Cook the meat first, then add the tomatoes and continue with the recipe.
Shakshuka is delicious with crusty bread or pita bread for dipping into the tomato sauce. I also like topping it with feta cheese and parsley or cilantro.
For a more filling meal, serve it with garlic naan, jeera rice, or fluffy pilaf. Greek yogurt also makes a nice cooling side.
Yes. Use one 28-ounce can of diced or crushed tomatoes instead of the fresh tomatoes. Canned tomatoes usually cook down faster, so start checking the sauce after about 10 minutes.
Recipe Card

Mediterranean Shakshuka Recipe
Video

Equipment
- 1 heavy bottom pan or skillet with a lid
Ingredients
- 6 eggs
- 2 tablespoon extra-virgin olive oil
- 1.5 cups onions, chopped (2 onions)
- 1 red bell pepper, chopped (1 cup)
- 2 teaspoon finely chopped/minced garlic
- 2 teaspoon ground coriander
- 1 teaspoon cumin powder
- 2 teaspoon paprika (smoked or regular both works fine)
- ½ teaspoon freshly ground black pepper
- 3.5 cups fresh tomatoes, chopped (or 1-28 ounce canned tomatoes, chopped)
- salt to taste
- 2 green chilies (optional)
- 2-3 tablespoon finely chopped fresh parsley or cilantro
- ¼ cup crumbled feta
- lemon wedges, for serving
Instructions
- Heat 2 tablespoons of olive oil in a large skillet or pan over medium heat.
- Add the chopped onions and bell peppers. Sauté for 5-7 minutes, or until they become soft and tender.
- Lower the heat, add the minced garlic, coriander powder, cumin powder, paprika, and pepper. Stir and cook for 30 seconds to release the flavors.
- Add the chopped tomatoes and green chilies, if using. Season with salt, then stir to combine. Cover the pan with a lid and simmer on medium-low heat for 15 minutes, or until the tomatoes are softened. If the sauce looks too dry, add 1-2 tablespoons of water, stir, cover, and continue cooking until the tomatoes are soft.
- Open the lid and mash some of the tomatoes with the back of a spoon or spatula to break them down and thicken the sauce.
- Taste the sauce and adjust seasonings with salt, pepper, or paprika as needed. Stir in the chopped parsley or cilantro. Keep the heat low. Gently create small indentations in the sauce with the back of the spoon to make nests for the eggs.
- Crack each egg into a small bowl first, then gently slide it into a nest in the sauce. This makes it easier to place the eggs without breaking the yolks. Repeat with the remaining eggs, spacing them evenly around the pan. You can refer to the shakshuka recipe video for a visual guide (optional).
- Sprinkle some pepper and fresh parsley or cilantro over the eggs. Cover the pan and cook over low heat for 5-8 minutes, or until the egg whites are set and the yolks are cooked to your liking. For runny yolks, start checking around 5 minutes. Cook longer for firmer yolks.
- Top with crumbled feta cheese, if using, and fresh parsley or cilantro. Your shakshuka is ready. Serve immediately with crusty bread or pita bread and a lemon wedge for squeezing.
Notes
- Fresh vs. canned tomatoes: Fresh tomatoes give the best flavor and texture, but they take longer to cook. You can use canned diced tomatoes when you want a quicker option.
- Cook the eggs your way: Cook the eggs for 5-8 minutes on low heat for runny yolks. Cook longer for firmer yolks. Covering the pan helps the eggs cook faster.
- Pan size matters: The number of eggs depends on the size of your pan. I can fit 6 eggs in mine. You can use 4-8 eggs, depending on your pan. Avoid overcrowding so the eggs cook evenly.
- Make-ahead sauce: Prepare the shakshuka sauce up to 2 days ahead and refrigerate it in an airtight container. Reheat the sauce, add the eggs, and cook until they reach your preferred doneness.
- Storing & reheating: Refrigerate leftover shakshuka within 2 hours of cooking and use within 2-3 days. Reheat gently on the stovetop until piping hot.
Nutrition
Nutrition information is automatically calculated, so should only be used as an approximation.











Raxel
I tried this shakshuka recipe. It's so flavorful. Eggs absorbs the flavor of tomato sauce and spices.Saving this for future.
Preeti
That's awesome. Shakshuka is such a great dish, and you're right, the way the eggs poach in that flavorful tomato sauce is what makes it so special. Glad you found a recipe you love and that it's now in your regular rotation.