Shakshuka - a North African and Middle Eastern method for for cooking eggs and tomatoes with limitless possiblities

Basic Shakshuka

This is the base of this recipe and the possibilities for variations are endless. Each time I make this dish, I do something different, based on whatever ingredients I have on hand. Below, I've included a few suggestions to help inspire you ✨


(serves 2 foodies)

  • Olive oil

  • 1 onion, peeled & diced
  • 2 cloves garlic, diced
  • 5 tomatoes, diced
    1 can chopped tomatoes
  • 4 eggs
  • Salt & pepper
  • Chopped fresh chilies or dried (optional)

To Serve

  • Green onions, finely chopped
  • Parsley, finely chopped
  • Cheese, anything works but cheddar, a light parmesan, or goat cheese would be best
  • Bread of your choosing, but the more rustic and crusty, the better 


  1. Heat frying pan over medium-high heat, add olive oil when hot, then add onions. Fry until soft and translucent (about 5 min). Add garlic and fry until fragrant (about 1-2 minutes). If you enjoy spicy foods (like me), then now is the time to add the chopped or dried chillies. 
  2. Add diced (or canned) tomatoes to the pan. There should be quite a lot of liquid in the pan (if not, then add some water). Season with salt and pepper, then reduce for 5-10 minutes until most of the water has evaporated. You want the mixture to be fairly chunky with little remaining liquid (see pictures).
  3. Use a spoon to make 4 wells in the tomato mixture and crack an egg into each one. Sprinkle some salt and crack some pepper over your eggs and cover the pan with a tight-fitting lid. Cook over medium-low heat until the egg whites are set, but the yolk is still perfectly runny. 
  4. When the eggs are cooked to your liking, serve in the pan or plate with 2 eggs per plate over a bed of the tomatoey base. Garnish with green onions, parsley, a healthy sprinkling of cheese, and a side of fresh bread.

Note: You can also make a stew-style shakshuka, by adding more water, cream, or coconut milk during Step 2 and poaching the eggs.


1. Lime and Mint Pesto

For this variation, I added some diced leeks and chopped mint to the tomato mixture. I also garnished with some fresh mint leaves, lime zest, and a serving of my lime and mint pesto (recipe coming soon!).

2. Avocado Purée

Yes, it's easier than you would think. Use a smoothie blender or food processor to purée a fresh avocado with some lime or lemon juice, salt, garlic, and dried chilies. Before plating the shakshuka, spread some of the purée on the plate, then add a dollop on top, finishing with a generous sprinkle of dried chillies to provide a great contrast the cooling, citrusy avocado.

3. Sweet potatoes, spinach, and cucumber purée

Add finely diced sweet potato when sautéing onions and cook until tender. After adding the tomatoes, add a generous handful of spinach and let it wilt while reducing the tomato mixture. Just like in Variation 2, serve the shakshuka over a spread of the cucumber purée (recipe coming soon!), with a little more on top. 

4. Pad Thai-inspired

When cooking the onions, add some fish sauce, tamarind paste, chopped ginger, and add an extra pinch of chili when you crack in the eggs. Be sure to serve the dish with some fresh lime and chopped green onions.

5. BBQ-esque

Shakshuka already has all the necessary ingredients for a great homemade BBQ sauce, so naturally, I tried putting it all together and loved the results. Simply add some smoked paprika (the smokier, the better) when pan frying the onion to help the spice release its flavors. Add crushed garlic, worcestershire sauce, honey (or brown sugar), salt, and let the mixture caramelize for a few minutes. Then, add the tomatoes and proceed as normal, garnishing the finished dish with green onions and cheddar cheese.