Swahili Coast Recipes
Swahili-Coast Fish in Coconut Tomato Curry
Last updated: November 12, 2026
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.

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.
Ingredients
Kitchen Measurement Converter
Need to convert an amount while you measure? Pick a category, enter a value, and the result updates instantly.
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.
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.
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.

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.
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.

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.
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.

Chef’s Tips From Real Kitchen Testing
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.
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.
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
| Nutrient | Amount per serving |
|---|---|
| Calories | 380 |
| Protein | 38 g |
| Carbohydrates | 14 g |
| Fat | 20 g |
| Saturated Fat | 12 g |
| Fiber | 3 g |
| Sugar | 7 g |
| Sodium | 650 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
Common Mistakes to Avoid
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.
