What’s not to love about delicious eggs poached in a spiced tomato sauce topped with marinated feta and fresh herbs? This easy shakshuka recipe is a great breakfast, brunch or even dinner!

Shakshuka with feta has everything I need in a meal – fragrant tomato and red pepper sauce, poached eggs with runny yolks, and a sprinkling of crumbled feta cheese with fresh parsley.

Serve it with a generous slice of crusty bread to mop up the delicious harissa tomato sauce and runny yolk. And voila, the perfect brunch dish to kick off a lazy weekend morning. Although, shakshuka makes a regular appearance as a quick and easy one-pan dinner too!

Harissa shakshuka with whole eggs and egg yolk and feta in a cast iron skillet viewed from above.

What is shakshuka

Shakshuka (or shakshouka) is a Maghrebi (Northwest African) dish of eggs poached in spicy tomato sauce with peppers, onion and spices. It is typically served for breakfast across the Middle East and North Africa. 

This shakshuka with feta recipe is just one of many variations that exist. Always serve shakshuka with bread to dip into the saucy eggs.

Shakshuka ingredients & substitutes

I love the floral, spicy flavour of rose harissa paste. It pairs perfectly with red pepper and eggs. The feta with black lime adds a new twist to an otherwise classic shakshuka.

This shakshuka recipe is very flexible, so substitute to your heart’s content.

Whole eggs and shakshuka sauce ingredients arranged in a flatlay.

Shakshuka ingredients

  • Cumin seeds: I love whole cumin seeds, but you can also use ground cumin. Add ground cumin when adding the red pepper. You can also use whole fennel or caraway seeds. Or swap the cumin for smoked paprika or sweet paprika instead.
  • Onion: You can use yellow onion, white onion or red onion. Or try it with banana shallots. Whichever you decide to use, make sure that it’s finely chopped so that it cooks quickly and dissolves in the sauce.
  • Red pepper: I use one large red bell pepper, chopped into small squares. Red bell peppers give the sauce a deep red colour, but you can use whatever you have available. You can even turn this into a pantry breakfast and opt for jarred roasted red pepper!
  • Garlic cloves: Take two fat cloves of fresh garlic. Peel them, then crush them with the flat side of your knife blade and finely chop (minced garlic).
  • Tomato paste: The tomato paste adds depth – both in colour and flavour – to the sauce. But you can omit it if you don’t have any. There are already plenty of lovely tomato flavours going on. 
  • Harissa paste: I use my favourite homemade rose harissa paste. Use your favourite brand and type of harissa, and you will be happy with the result! If you don’t have harissa, add a teaspoon of harissa powder or red pepper flakes, or turn up the heat with cayenne pepper. Or find more harissa substitutes to suit your pantry.
  • Tomatoes: I use a can of whole Italian tomatoes in tomato juice, but you can use canned chopped tomatoes or fresh whole plum tomatoes (about three large tomatoes). Fresh tomatoes should be very ripe, sweet and red. Good quality canned tomatoes are often more flavourful than out-of-season or unripe tomatoes – not to mention the convenience of canned tomatoes.
  • Water: Use water to control the thickness of your sauce. The final shakshuka sauce should be thick, but keep in mind that it will continue to thicken while the eggs cook.
  • Eggs: Use one or two large eggs per person. Or do what Melissa Clark does in Dinner in French and use only egg yolks. Then it is much easier to get a perfectly runny yolk without worrying about the egg white.
Prepared ingredients for shakshuka with feta in glass bowls viewed from above.

Feta with black lime & parsley ingredients

I adore the black lime-infused feta with fresh parsley. But if you are in no mood to marinate feta cheese, simply scatter a crumbled feta over your finished shakshuka.

  • Feta cheese: Feta creates a delicious savoury topping. I use standard cow’s milk feta here, but you can also use sheep or goat cheese.
  • Flat-leaf parsley: I love shakshuka with a scattering of fresh parsley. But you can use another soft green herb – chopped cilantro and dill fronds both work well.
  • Black lime powder: Black limes are dehydrated Persian limes. It is easy to make black limes at home without any fancy equipment. Grind black limes in a spice grinder for ground black lime powder. An excellent substitute for ground black lime powder is sumac. Or add a pinch of lime zest.
  • Olive oil: I prefer extra-virgin olive oil here. Use your favourite, and you will be happy with the results.

How to make shakshuka with feta

Shakshuka is a dish of eggs poached in a spiced tomato sauce. The rest is a matter of preference. 

Do you want the tomato sauce to be spicy? How do you prefer your eggs cooked? Do you want to add a topping, like crumbled feta or fresh herbs?

Any shakshuka recipe consists of three parts: 

  1. Make the spicy tomato sauce
  2. Poach the eggs in sauce
  3. Add the toppings

Step 1: Make the spicy tomato sauce

First, make your spicy tomato sauce. In the recipe card, I provide instructions for a tomato sauce with rose harissa and red bell pepper. But you can even use jarred pasta sauce with a tablespoon of shop-bought harissa if you are short on time! 

Cook your sauce until it is just thick enough to create little dips for the eggs.

Step 2: Poach the eggs in sauce

Create the little dips with the back of a wooden spoon and drop in your whole eggs or egg yolks. Cook the eggs to your liking. 

I love a runny yolk, and I mean RUNNY. So, I give my whole eggs a head start and add another sneaky yolk or two towards the end of cooking.

Step 3: Sprinkle the shakshuka with toppings (optional)

Finally, top your shakshuka with feta or chopped herbs and serve it straight from the skillet with pita bread or flatbreads.

It is as simple as that.

A close-up of shakshuka with very soft egg yolks in a cast iron skillet viewed from above.

Shakshuka tips & tricks

  • When in doubt, lower your temperature. You can always speed things up later, but you can’t unburn garlic or tomato sauce – or anything really.
  • If your pan is not non-stick, add a splash of olive oil to the dip before dropping your egg in. The pan coverage of the sauce will depend on the size of your pan. And any exposed pan surface can make your egg stick if your pan is not non-stick.
  • The easiest way to get a runny yolk without worrying about properly cooked egg whites is to use only egg yolks. Just pop in your yolks, and cook until set to your liking. Or use a combination of whole eggs and yolks like I do.
  • If you like your egg yolk golden and runny, don’t use a lid when cooking the eggs. It creates a white film over the egg as it cooks. But if you’re not into golden yolks, lid away!
  • Don’t salt the raw egg yolks. The salt makes white salt spots that can spoil a perfect yolk moment. Instead, season the cooked eggs right before serving.
  • Always crack eggs into a small bowl before dropping them into the sauce. A rotten egg will ruin your sauce and your appetite! 
  • If you break an egg yolk, don’t fret. Scrambled shakshuka is a thing! For scrambled shakshuka, wait for the eggs to set a little, then gently stir through the sauce with a fork. Don’t overmix it. You still want eggy strands through the sauce.
Harissa shakshuka with bread dipped into a very runny egg yolk in a cast iron skillet.

How to serve shakshuka

Shakshuka is best when the sauce is warm with the eggs just cooked. So, gather everyone at the table before you drop the eggs in the sauce.

Then top your shakshuka with feta or fresh herbs, and take it straight to the table.

What to serve with shakshuka

Turn shakshuka into a pantry breakfast

Be prepared for spur-of-the-moment shakshuka sauce with jarred roasted red peppers, harissa paste and good-quality tinned tomatoes in your pantry.

Frequently asked questions

Can shakshuka be frozen?

You can freeze the shakshuka sauce for three months in a sealed container. Or store it in the fridge for a few days. But serve the eggs freshly cooked. Defrost your sauce and reheat it in the pan before dropping in your eggs.

How do you keep the yolk runny in shakshuka?

If you want runny yolks, poach whole eggs in shakshuka sauce over low heat for no more than 8 minutes. Don’t add a lid. It will steam the eggs and cover the orange yolk in a white film.

If you are worried about egg whites that are not cooked through, swap whole eggs for only egg yolks. Then you have more control over the doneness of the yolk.

Shakshuka with Feta

5 from 17 votes

Eggs poached in fragrant harissa, red pepper and tomato sauce topped with black lime-infused feta and fresh parsley. This shakshuka with feta is the perfect brunch recipe or easy one-pan dinner.
Prep Time 10 mins
Cook Time 35 mins
Total Time 45 mins
Course Breakfast
Cuisine Middle Eastern, North African
Servings 2 people


  • Non-stick frying pan or cast-iron skillet (I use a 10-inch skillet).


  • cup feta, crumbled
  • 1 tablespoon chopped flat-leaf parsley
  • ½ teaspoon black lime powder, or sumac
  • 4 tablespoons olive oil, divided
  • 1 teaspoon cumin seeds or
  • 1 onion, diced
  • 1 large red pepper, diced
  • 2 large garlic cloves, minced
  • 1 tablespoon tomato paste
  • 1 tablespoon harissa paste
  • 1 can (14.5 ounces) tomatoes, or three very ripe tomatoes
  • ¼ cup water
  • 2 to 4 eggs (or egg yolks), at room temperature

To Serve

  • salt flakes and black pepper
  • pita or flatbread


  • Place the crumbled feta cheese, finely chopped parsley, black lime powder (or sumac), and two tablespoons of olive oil in a small bowl and mix.
  • Heat a large skillet over medium heat and dry-roast the cumin seeds until fragrant – about 1 minute.
  • Add the diced onion and two tablespoons of olive oil to the pan with the cumin seeds. Cook – stirring now and then – for 5 minutes until soft and golden. Add the red pepper and cook for another five minutes. Then add the minced garlic and ½ teaspoon of salt. Cook for one more minute until the garlic is fragrant.
  • Next, add the tomato paste and harissa paste. Stir to coat everything evenly. Then add the tomatoes and ¼ cup of water. Crush the tomatoes with the edge of your spatula.
  • Turn the heat down to medium-low and gently simmer for 15 minutes – stirring occasionally – until the crushed tomatoes break down and you have a thick sauce. If your sauce is too thick, add another splash of water. Taste and adjust seasoning.
  • Turn the heat down low. Make a dip in the sauce for each egg (or egg yolk) and place each egg (or egg yolk) into a dip. Use a fork to gently stir the egg white, taking care not to break the yolks. Simmer the eggs for six to eight minutes until the white is set and the yolk is still runny (or cooked to your liking).
  • Sprinkle the shakshuka with marinated feta, flaked sea salt and a generous grind of black pepper. Serve immediately with crusty bread, pita or flatbreads.


  • You can cover the pan once the eggs are in, this will reduce cooking time to about 4 minutes, but the yolks will have a white film. I prefer to cook it uncovered for a soft, golden yolk. See the tips and tricks section for more shakshuka tips.
  • This recipe scales very well to feed a crowd. Use a larger pan and double the recipe.
  • See the ingredients section for ingredient details and substitute suggestions.


I would love to see! Tag @non_guilty_pleasures on Instagram and use the hashtag #nonguiltypleasuresrecipe