East African Images are for illustrative purposes only, may be inaccurate, and do not guarantee the presence or absence of specific ingredients.
Serving Images are for illustrative purposes only, may be inaccurate, and do not guarantee the presence or absence of specific ingredients. Mchuzi wa Samaki
Swahili fish curry — fresh white fish poached in a golden, turmeric-bright coconut and tomato sauce, fragrant with garlic, ginger, and coastal spice.
Contains common allergens
In the app, Listahan checks these against your household automatically.
Instructions
8 steps- 1
Season the fish pieces with salt, turmeric, and a squeeze of lime juice, and set aside to marinate for 10 minutes.
- 2
Heat the oil in a wide pan over medium heat and saute the onion for 5 to 7 minutes until soft and golden.
- 3
Add the garlic and ginger and cook for 1 minute until fragrant, then stir in the curry powder and cook for 30 seconds.
- 4
Add the tomatoes and chilies and cook for 5 to 7 minutes, stirring occasionally, until the tomatoes break down into a thick base.
- 5
Pour in the coconut milk and bring to a gentle simmer, then season with salt.
- 6
Carefully lower the fish pieces into the sauce in a single layer and simmer, uncovered, for 10 to 12 minutes, spooning sauce over the top occasionally, until the fish is just cooked through and flakes easily.
- 7
Stir in most of the cilantro and a final squeeze of lime juice, then garnish with the remaining cilantro.
- 8
Serve hot with rice or ugali to soak up the golden sauce.
Images are for illustrative purposes only, may be inaccurate, and do not guarantee the presence or absence of specific ingredients. Listahan Family Score™
56/100
Works for many families
Score reflects how well this recipe fits a typical busy household. In the app, your Family Score is personalized to your household's allergens, kids, and pantry.
Nutrition
per serving375
Calories
27 g
Protein
11 g
Carbs
28 g
Fat
Estimated per serving. Actual values depend on the brands and portions you use.
Listahan cooking guide
Chef notes & practical guide
Technique notes, ingredient swaps, serve-alongside ideas, storage guidance, and equipment for this recipe.
Cultural context
Mchuzi wa Samaki (fish curry) is a Swahili coastal dish from Kenya and Tanzania, shaped by centuries of Indian Ocean trade that brought coconut cooking, tamarind, and curry spices to the East African coast. The dish is a staple in the fishing communities of Mombasa, Malindi, Zanzibar, and Lamu, where fresh whole fish or fillets are the daily protein. The tamarind and coconut combination is the distinctly Swahili coastal flavor profile that sets this curry apart from Indian or Southeast Asian fish curries.
Listahan note
This version uses firm white fish fillets in large pieces that hold together in the sauce, and the tamarind is added after the coconut milk to preserve its brightness without cooking out its sourness.
Technique cues
- Build the aromatics (onion, garlic, ginger) and spices (turmeric, curry powder) until the raw spice smell is fully gone and the mixture is beginning to darken before adding the tomatoes; undercooked spices in coconut milk curry produce a gritty, harsh taste.
- Simmer the coconut milk base for at least 10 minutes before adding the fish to reduce and concentrate the sauce; fish added to thin sauce cooks through before the sauce can thicken around it.
- Fish fillets need only 6 to 8 minutes in the simmering sauce; overcooking turns the flesh dry and makes it flake into shreds, which disintegrates into the sauce and loses the textural distinction between fish and curry.
Kitchen flow
- Parallel prep
- Measure and combine all the dry spices in one small bowl while the onion softens in the pan; the spice bloom step is brief and benefits from everything being ready.
- Make-ahead
- Build the sauce through the coconut-milk-simmering stage up to a day in advance and refrigerate; add fresh fish and finish cooking just before serving.
- Leftover move
- Flake leftover fish into the sauce and stir into cooked rice for a quick coconut fish pilaf with the remaining curry sauce.
- Cleanup rhythm
- One saucepan or wide skillet handles the entire dish; serve directly from the pan to minimize dishes.
Ingredient brief
Role, handling, and swap guidance for each key ingredient.
1.5 lbs firm white fish fillets (cut into large pieces)
primary protein
Purpose: Firm white fish like snapper, cod, or tilapia holds its shape in simmering coconut curry without falling apart, giving each serving identifiable pieces of fish in the sauce.
Handling: Pat the fillets dry before cutting and season lightly with salt; damp fish steams rather than searing if you choose to brown the surface briefly before adding to the curry.
Adaptation: Shrimp (large, shell-off) cook in 3 to 4 minutes and are a quick-cooking substitute, though the texture and richness of the final dish will be lighter.
1 can (400ml) coconut milk
sauce base and richness
Purpose: Coconut milk provides the characteristic Swahili coastal creaminess that softens the curry spice and carries the tamarind's acidity into a balanced, full-bodied sauce.
Handling: Shake the can well before opening; add the coconut milk after the tomatoes have fully broken down and the sauce has concentrated.
Adaptation: Full-fat coconut cream (thinned with 4 tablespoons of water) gives a richer, more intensely coconut sauce.
1 tbsp tamarind paste
souring agent and complexity
Purpose: Tamarind provides a fruity, deep sourness that cuts through the coconut milk's richness and is the flavor that most distinctly identifies this as a Swahili coastal dish.
Handling: If using tamarind concentrate, 1 tablespoon is correct; if using block tamarind, dissolve a golf-ball-sized piece in 3 tablespoons of warm water, then strain and use the liquid.
Adaptation: Two tablespoons of fresh lime juice added at the end of cooking provides a cleaner, brighter sourness without the fruity depth of tamarind.
1/2 tsp ground turmeric
color and mild earthiness
Purpose: Turmeric gives the curry its golden color and contributes a faint earthy bitterness that grounds the coconut sweetness.
Handling: Add to the hot oil with the garlic and ginger so it blooms before the liquid goes in; blooming in fat activates the curcumin and deepens its color.
Adaptation: No direct substitute for color, but saffron (a tiny pinch) gives a more golden tone with a floral note.
1 tsp curry powder
aromatic spice blend
Purpose: Curry powder provides the complex layered spice note that reflects the Indian Ocean trade influence on Swahili coastal cuisine.
Handling: Use a mild or medium curry powder since the tamarind and ginger already provide heat and sharpness; a hot curry powder can overwhelm the other flavors.
Adaptation: A blend of cumin, coriander, and fenugreek (equal parts) is a from-scratch alternative that gives more control over the spice profile.
Technique notes
- Lay the fish pieces into the sauce gently in a single layer rather than stirring them in; stirring breaks the fillets into small pieces and gives you shredded fish instead of distinct portions.
- Taste the sauce for salt before adding the fish since the coconut milk and tamarind both carry varying amounts of salt and acid depending on the brand; adjust before the fish goes in.
- Let the finished curry rest off the heat for 3 minutes before serving; resting allows the fish to finish cooking through residual heat and the sauce to settle around the pieces.
Ingredient swaps
- Gluten-free direction
- All ingredients are naturally gluten-free; verify the curry powder brand for gluten-containing anti-caking agents if cross-contamination is a concern.
- Lighter option
- Use light coconut milk and increase the tamarind slightly to maintain the sauce's flavor depth despite the reduced fat content.
- Vegan direction
- Replace the fish with large chunks of firm tofu (pressed and lightly pan-fried first) and extra vegetables like zucchini and bell pepper; reduce the final simmering time to 5 minutes.
Serve alongside
- steamed basmati or jasmine rice
- chapati flatbread for scooping the sauce
- simple cucumber raita with fresh mint
- pickled green mango slices
- fresh cold lime soda water
- iced mango lassi (dairy or coconut-based)
Serving suggestions only — check pairings for your household's allergens.
Storage & reheating
- Refrigerate in an airtight container for up to 2 days; fish curry should be eaten quickly as the fish texture deteriorates after day two.
- Reheat very gently over low heat, stirring carefully to avoid breaking up the fish further; do not boil.
- Freezing is not recommended as the fish becomes rubbery and the coconut milk can separate and turn grainy after thawing.
Equipment
- wide, deep skillet or saucepan (3-quart or larger)
- wooden spoon or silicone spatula
- microplane or fine grater for ginger
- small bowl for spice measuring
Make this household-aware
Listahan Pro checks this recipe against your household's allergens, finds pantry-aware swaps, builds the shopping list, and helps you plan the week around it.
Plan it in Listahan
Add Mchuzi wa Samaki to your week, check it against your household's allergens, and build the shopping list automatically.
More East African recipes
East African Lens Verified Images are for illustrative purposes only, may be inaccurate, and do not guarantee the presence or absence of specific ingredients. Viazi Karai
A Zanzibari street favorite of soft boiled potatoes coated in a turmeric-yellow batter and deep-fried until crackling, served with fiery tamarind sauce.
East African Lens Verified Images are for illustrative purposes only, may be inaccurate, and do not guarantee the presence or absence of specific ingredients. Mutura
Kenyan spiced blood sausage stuffed with meat, onion, and herbs, then grilled until the casing crisps and snaps — a bold, smoky roadside delicacy.
East African Lens Verified Images are for illustrative purposes only, may be inaccurate, and do not guarantee the presence or absence of specific ingredients. Kachumbari
Bright, refreshing salad of ripe tomatoes and sharp raw onion, spiked with chili and lime — the cool, crisp counterpoint to rich East African grills.