Kenyan Mchuzi wa Samaki (Swahili Fish in Coconut Tomato Curry) Recipe

Swahili Coast Recipes

Swahili-Coast Fish in Coconut Tomato Curry

Last updated: November 12, 2026

Quick Answer Mchuzi wa samaki is a Swahili-coast fish curry from the Kenyan shoreline: firm white fish simmered in a tangy tomato, onion, garlic-ginger and coconut-milk sauce brightened with tamarind. Rich yet bright, this one-pan main dish comes together in about an hour and is served over rice or with ugali for dinner.

Mchuzi wa samaki is the fish curry of the Kenyan coast, the dish that scents the lanes of Mombasa’s Old Town at dusk. It is a study in balance: sweet coconut milk, tangy tamarind, and a deep tomato base, all wrapped around tender pieces of white fish. Nothing about it is complicated, yet a plateful tastes of trade winds and spice markets.

The method is built in a single pan. You sear the fish just long enough to firm it up, build a fragrant tomato and spice sauce in the same pan, then loosen it with coconut milk and tamarind before sliding the fish back in to simmer. Serve it over steamed rice or with a mound of ugali and let the sauce do the talking.

A rustic bowl of Kenyan mchuzi wa samaki, white fish in an orange-red coconut tomato curry with cilantro, lime, and steamed rice
Mchuzi wa samaki, a Swahili-coast fish curry in a tangy coconut and tomato sauce, served with rice.

Why This Mchuzi wa Samaki Works

Great mchuzi wa samaki is really two things done well: a sauce layered with tomato, spice, and coconut, and fish cooked just to the point of tenderness and no further. Get those two right and everything else takes care of itself. The recipe here builds a fast but full-flavored sauce, then returns the fish for only a short simmer so it stays moist and whole.

The base starts the way most good coastal cooking does, with onion softened in oil, then garlic and a generous amount of fresh ginger stirred in until fragrant. Cumin and turmeric bloom in the hot oil, tomato paste and chopped tomatoes break down into a thick sauce, and the whole thing takes on the warm, savory depth that defines a Swahili curry.

Coconut milk and tamarind are what set this dish apart. The coconut rounds the sauce into something silky and mellow, while a spoonful of tamarind cuts straight through it with a sour edge that keeps every bite lively. Balancing that sweet-and-sour push is the secret to a sauce that tastes authentically of the coast.

It is also forgiving with the fish. Searing the pieces first firms them up so they hold together, and adding them only at the end means they poach gently in the sauce rather than boiling to pieces. Keep the sauce constant and use whatever firm white fish is freshest, and you will get a pot that tastes like Mombasa every single time.

Pro observation: Mchuzi wa samaki is fully halal as written, with no forbidden ingredients. The sauce gets all of its depth from tomato, ginger, garlic, warm spices, coconut milk, and tamarind, so you never miss a thing.

Prep Time
20 min
Cook Time
40 min
Total Time
60 min
Servings
4
Intermediate Pescatarian Dairy-Free About 380 cal / serving

Ingredients

Serves 4

Kitchen Measurement Converter

Need to convert an amount while you measure? Pick a category, enter a value, and the result updates instantly.

Want more options? Open the full tomato measurement converter.

Ingredient Notes & Substitutions

White Fish

Choose a firm fish that holds together in the sauce: snapper, kingfish, tilapia, or cod all work well. Cut it into large pieces so they stay intact while they simmer. On the coast, whole fish steaks on the bone are common and add extra flavor if you prefer them.

Coconut Milk & Tamarind

Full-fat canned coconut milk gives the silkiest sauce; shake the can well before opening. Tamarind paste brings the signature sour note, but if you cannot find it, a good squeeze of lime at the end stands in nicely. Add either gradually and taste as you go.

Aromatics & Spice

Fresh ginger and garlic are non-negotiable here and are best grated and minced fresh rather than from a jar. Cumin and turmeric are the base; many coastal cooks add a pinch of curry powder or a sliced green chili for heat. Bloom the spices in the hot oil to wake them up.

Tomatoes

Ripe fresh tomatoes break down into a bright, chunky sauce, while tomato paste deepens the color and savory backbone. Out of season, a cup of canned chopped tomatoes works just as well. The tomato is what balances the richness of the coconut, so do not skimp.

Equipment

  • Large heavy pan or skillet
  • Lid for the pan
  • Wooden spoon
  • Sharp knife and board
  • Box grater or microplane
  • Plate for the seared fish

Before You Start

1. Pat the fish bone-dry and salt it before searing. Surface moisture steams instead of browns, so the pieces stick and tear when you lift them. Blot each piece with a towel and salt it lightly so it firms up and releases cleanly from the hot pan.

2. Dissolve the tamarind into a little warm water first. Spooned in as a lump, it stays in sour pockets instead of flavoring the whole sauce. Stir it into two tablespoons of warm water until smooth so it disperses evenly when you add it.

3. Grate the ginger and mince the garlic before the oil is hot. Both scorch and turn bitter in seconds once they hit the pan, so have them ready at the stove; you cannot stop to grate ginger while the garlic is already browning.

Step-by-Step Instructions

Mchuzi wa samaki moves quickly once the sauce is built, so prep everything first. Cut and salt the fish, chop the onion and tomatoes, grate the ginger, mince the garlic, and dissolve the tamarind so each addition goes straight into the pan when the moment comes.

1

Prep the Fish and Aromatics

Pat the fish pieces dry and season them lightly with salt. Finely chop the onion, chop the tomatoes, mince the garlic, and grate the ginger so everything is ready at the stove. Stir the tamarind paste into two tablespoons of warm water until smooth and set it aside.

2

Sear the Fish

Warm the vegetable oil in a large heavy pan over medium-high heat. Lay in the fish pieces and sear for about 1 to 2 minutes a side, just until lightly golden but not cooked through. Lift them onto a plate and set aside; they will finish in the sauce later.

Firm white fish pieces searing to golden in oil in a large pan
Sear the fish briefly just to firm it up and color the edges, then set it aside.
3

Build the Spiced Tomato Base

In the same pan, add the onion with a pinch of salt and cook 4 to 5 minutes until soft. Stir in the garlic and ginger and cook 1 minute until fragrant, then add the cumin and turmeric and let them bloom for 30 seconds. Add the tomato paste and chopped tomatoes and cook, stirring, for 6 to 8 minutes until the tomatoes collapse into a thick sauce.

4

Add the Coconut Milk and Tamarind

Pour in the coconut milk and the dissolved tamarind, stir well, and bring to a gentle simmer. Let the sauce cook uncovered for about 8 to 10 minutes so it thickens slightly and the flavors marry. Taste now and balance it; it should be rich, tangy, and savory before any fish goes back in.

Coconut milk being poured into a bubbling red tomato curry sauce in a large pan
Stir in coconut milk and tamarind and simmer to a silky, tangy sauce before the fish returns.
5

Simmer the Fish in the Curry

Slide the seared fish pieces back into the sauce, spooning some over the top so they are nestled in. Lower the heat so the sauce barely simmers, cover, and cook 6 to 8 minutes, until the fish turns opaque and flakes easily. Simmer gently here; a hard boil will break the delicate fish apart.

6

Finish and Serve

Take the pan off the heat as soon as the fish is just cooked through. Scatter over the chopped cilantro and add a squeeze of fresh lime, then taste and adjust the salt. Serve the mchuzi wa samaki hot over steamed rice or with ugali, spooning plenty of the coconut tomato sauce over each plate.

Finished mchuzi wa samaki in a wide bowl with white fish, coconut tomato sauce, cilantro, lime, and steamed rice
Finish with cilantro and lime, then serve over rice with plenty of the coconut tomato sauce.

Chef’s Tips From Real Kitchen Testing

1

Sear the fish before it ever meets the sauce. A quick golden crust firms the pieces so they hold their shape through the simmer instead of shredding into the curry.

2

Balance the sauce before the fish goes back in. Coconut mellows and tamarind sharpens, so taste and adjust the sweet-and-sour push while you can still stir freely without breaking the fish.

3

Keep the pan at a gentle simmer, never a rolling boil. High heat splits coconut milk into oily specks and toughens the fish, while a soft simmer keeps the sauce silky and the fish tender.

Recipe Variations

Serving Suggestions

  • Steamed white rice or fragrant coconut rice
  • A mound of ugali for scooping up the sauce
  • A bright side of kachumbari tomato-onion salad
  • Warm chapati or extra lime wedges to finish

Nutrition Facts

Estimated nutrition per serving of mchuzi wa samaki.
NutrientAmount per serving
Calories380
Protein38 g
Carbohydrates14 g
Fat20 g
Saturated Fat12 g
Fiber3 g
Sugar7 g
Sodium650 mg

Values are estimates per serving and vary with the exact fish and brands you use.

Make-Ahead Tips

The coconut tomato sauce is even better made a day ahead. Cook it through the simmer stage, cool, and refrigerate. When you are ready to eat, reheat the sauce to a gentle simmer and add the seared fish fresh, so it is never overcooked.

Storage, Freezing & Reheating

Refrigerator
Leftover mchuzi wa samaki keeps 1 to 2 days in an airtight container. The fish is best on day one; reheat gently so it does not toughen.
Freezer
Freeze the plain coconut tomato sauce for up to 2 months. Freezing cooked fish is not recommended, since it turns watery and soft once thawed, so add fresh fish after reheating the sauce.
Reheating
Warm gently over low heat just until hot through. Stop as soon as it steams so the fish stays tender and the coconut sauce does not split.

Common Mistakes to Avoid

×Boiling the coconut milk hard. A rolling boil splits it into greasy flecks and a grainy sauce; keep it at a bare simmer so it stays smooth and glossy.
×Skipping the sear on the fish. Raw pieces slipped straight into the sauce fall apart as they cook and cloud the curry; a quick golden sear sets the surface so they stay whole.
×Adding raw tamarind in a lump. Undissolved, it leaves sharp sour pockets instead of an even tang; stir it into warm water first so it blends through the whole sauce.
×Under-cooking the tomatoes. Rushed, they stay watery and raw-tasting and thin the sauce; let them collapse fully before the coconut milk goes in so the base is thick and sweet.
×Stirring the fish too much once it is in. Constant stirring breaks the tender pieces apart; spoon sauce over them instead and let them simmer undisturbed until they flake.

Troubleshooting

Sauce too thin? Simmer it a few minutes longer before the fish goes in, or stir in an extra spoonful of tomato paste to thicken and deepen it.

Sauce looks split or oily? It boiled too hard. Lower the heat, add a splash of water, and stir gently off the boil to bring the coconut sauce back together.

Fish falling apart? It was stirred too much or simmered too long. Sear it first, add it only at the end, and spoon sauce over it rather than stirring.

A Note on Swahili Cooking

Mchuzi wa samaki comes from the Swahili coast of Kenya, the string of trading ports around Mombasa where African, Arab, and Indian flavors have mingled for centuries. The name is plain Swahili: “mchuzi” means sauce or curry, and “samaki” means fish, so the dish is simply “fish in sauce”. Its coconut, tamarind, and warm spices are the taste of the monsoon trade that linked the coast to the wider Indian Ocean.

It sits in a big family of coconut-and-tomato seafood dishes. The one it is most often confused with is Tanzanian samaki wa nazi: where samaki wa nazi is coconut-forward and mild, mchuzi wa samaki leans tangier, with more tomato and a clear hit of tamarind. It shares a soul with other fishermen’s curries across the ocean, from Brazilian moqueca to a Seychellois fish curry, all of them turning the day’s catch into something rich and generous.

What has kept mchuzi wa samaki on coastal tables is exactly what created it: it is forgiving, quick, and built on pantry staples. Use whatever firm fish is freshest, keep the tomato and coconut in balance, and serve it over rice or with ugali, and you have a meal that still tastes of the Mombasa shoreline.

Frequently Asked Questions

Mchuzi wa samaki is a Swahili-coast fish curry from Kenya: firm white fish simmered in a tangy tomato, garlic-ginger and coconut-milk sauce brightened with tamarind. It is rich and savory, meant to be served over rice or with ugali to soak up the sauce.
Firm white fish that holds its shape is ideal: snapper, kingfish, tilapia, or cod all work well. On the coast, whole fish steaks on the bone are traditional and add extra flavor. Keep the sauce constant and use whatever is freshest.
They are close siblings from the same coast. Samaki wa nazi is coconut-forward and mild, while mchuzi wa samaki leans tangier, with more tomato and a clear hit of tamarind, so its sauce is brighter and more savory than sweet.
The sauce is fully halal, with no forbidden ingredients. Its depth comes from onion, garlic, and plenty of fresh ginger, bloomed cumin and turmeric, tomato paste and ripe tomatoes, silky coconut milk, and a tangy spoonful of tamarind.
The fish is done when it turns opaque all the way through and flakes easily with a fork, usually 6 to 8 minutes of gentle simmering. Keep the heat low and pull the pan off as soon as it flakes, so the fish stays moist and whole.
Steamed white rice or coconut rice is classic, and ugali is the traditional partner for scooping up the sauce. A bright kachumbari tomato-onion salad, warm chapati, and extra lime wedges round out the plate.
Make the coconut tomato sauce up to a day ahead and refrigerate it; the flavor deepens overnight. When you are ready to eat, bring the sauce back to a gentle simmer and add the seared fish fresh, so it cooks to order and never turns rubbery.
This recipe has about 380 calories per serving, with roughly 38 g of protein and 20 g of fat. Most of the fat comes from the coconut milk, while the fish keeps the dish high in protein and naturally filling.
Was this recipe helpful?
☆☆☆☆☆
Thanks for rating!
Timer
0:00