This is a ground pork shakshuka made soupy on purpose — more broth than sauce, with eggs poached directly in it. Fish sauce stands in for stock, adding a savory depth that tomatoes and pork alone can’t quite reach. It comes together in one pan and works as a complete meal without any sides required.
Before you start
The two things that actually matter here are browning the pork properly and timing the eggs. Ground pork needs to go into a hot, dry pan and be left alone for a minute before stirring — that contact with heat is what builds the browned, flavorful bits that give the broth its backbone. If you stir too soon, the meat steams instead of browns and the base tastes flat. For the eggs, add them only once the broth is at a steady simmer, not a rolling boil. A hard boil will break the whites apart before they set. Watch the whites, not the yolks — once the whites are fully opaque and no longer translucent, the eggs are done. Ground pork must reach an internal temperature of 160°F (71°C); by the time the sauce has simmered and the eggs are set, the pork will be well past that.
What can go wrong
- The broth tastes too salty before the eggs go in: Fish sauce is concentrated. Taste the broth after adding water and before cracking in the eggs — it should taste slightly saltier than you want the finished dish, since the eggs will dilute it a little. If it’s already too salty, add a splash more water.
- The eggs sink into the pork and disappear: Ground meat floats and clusters. Use a spoon to push the pork aside and create small wells in the broth before cracking the eggs in. This keeps the eggs visible and lets them cook evenly.
- The broth goes from soupy to thick too fast: Tomato puree reduces quickly over high heat. Keep the heat at medium once the liquid is in, and put a lid on if you notice it thickening before the eggs are ready.
- The fish sauce smell is overwhelming while cooking: That’s normal and it fades. Add it to the hot pan with the pork rather than pouring it in at the end — heat mellows the sharp fermented aroma into background savoriness.
- The egg yolks set completely before the whites do: This usually means the heat is too high or the broth is too shallow. Lower the heat and spoon a little hot broth over the tops of the eggs to help the whites cook from above without overcooking the yolks.
Substitutions that actually work
- Fish sauce: If you genuinely can’t use it, replace it with a mix of soy sauce and a small squeeze of lemon juice — not identical, but it gives you salt plus a fermented note. Worcestershire sauce is a reasonable backup in a pinch.
- Ground pork: Ground lamb works well here and handles the spices similarly. Ground beef works too but is leaner, so add a small drizzle of olive oil when browning to compensate. Skip the garnish if you’re swapping proteins — not worth the extra dish when the broth is already doing the heavy lifting.
- Tomato puree: Crushed canned tomatoes blended briefly are a direct swap. Avoid fresh tomatoes unless they’re very ripe — they won’t give enough body to the broth.
Keeping and reheating
Store leftovers in a sealed container in the fridge for up to 3 days. The broth and pork reheat well — the flavors do deepen overnight. The eggs, however, will continue to firm up in the fridge and turn rubbery when reheated. If you’re planning on leftovers, cook only as many eggs as you’ll eat right away and poach fresh ones directly in the reheated broth the next day. Reheat the broth and pork in a small saucepan over medium heat until it reaches a steady simmer before adding new eggs. Freezing is not recommended once the eggs are in, but the pork and tomato broth base — before eggs are added — freezes fine for up to 2 months.

Fragrant and Soupy Shakshuka Recipe
Ingredients
1 quart water
2 tablespoons ghee
1 teaspoon garlic powder
3 tablespoons fish sauce
1 cup passata or crushed tomatoes (tomato puree with seeds removed)
1 cup ground beef (minced beef)
½ cup Ricotta cheese
½ bunch cilantro (coriander)
4 medium egg
Instructions
- Brown beef in a nonstick skillet with ghee- bask in the glory of melting good 'ol fat.
- Add garlic powder and fish sauce (prepare for the funky smell).
- Add the tomato puree and let it all blend for 2 to 3 minutes.
- Add water and reduce to a simmer for 10 minutes.
- Add chopped bottom part of cilantro (the stems go in first).
- Add 4 eggs, and let them harden in the broth for about 5 minutes.
- Add cilantro leaves and serve.
Nutrition
Your questions, answered
Can I use a different ground meat if I don’t eat pork?
Yes — ground lamb is the closest match in terms of fat content and flavor. Ground beef works too, though it produces a slightly leaner, less rich broth; a small drizzle of olive oil when browning helps compensate.
How do I know when the eggs are actually done?
The eggs are ready when the whites are fully set and no longer translucent — there should be no clear or jelly-like white visible around the yolk. The yolks can still be soft at that point, which is fine; if you prefer firm yolks, put a lid on the pan for the last couple of minutes of cooking.
I’ve never used fish sauce before — how much does it really change the dish?
It makes a noticeable difference to the depth of the broth — it adds a savory, rounded quality that plain salt doesn’t give. The finished dish won’t taste fishy at all; fish sauce loses its sharp edge completely once it’s cooked into the meat and tomatoes.
Try these next
- Savory Pork Noodle Stir-Fry
- Fragrant Lamb Coconut Stew
- Hearty Beef Kale Soup
- Peruvian Cilantro Pork Stew










