Tanzanian Coconut Fish Curry: Mchuzi wa Samaki from the Swahili Coast

Posted on June 30, 2026

Tanzanian coconut fish curry served with tender fish simmered in a rich coconut curry sauce and garnished with fresh herbs.

Prep: 15 min 🔥Cook: 25 min 👤Serves: 4 🌍Origin: Zanzibar, Tanzania

Tanzanian coconut fish curry, mchuzi wa samaki, originated in Zanzibar and is now eaten all along the Swahili coast, a dish that carries centuries of trade between East Africa and India in every spoonful. Firm white fish simmered gently in a sauce of tomatoes, onion, garlic, ginger and warm curry spices, finished with coconut milk until it turns rich and creamy. Mild, fragrant, and on the table in well under an hour.

Ingredients

  • 1.5 lbs firm white fish fillets, tilapia, snapper, cod or hake all work well, cut into 4–5 inch pieces
  • 1 teaspoon curry powder, plus ½ teaspoon more for the sauce
  • ½ teaspoon salt, plus more to taste
  • ¼ teaspoon black pepper
  • 2 tablespoons oil, divided
  • 1 medium onion, finely chopped
  • 3 cloves garlic, minced
  • 1 tablespoon fresh ginger, grated
  • 1 green bell pepper, chopped, optional, adds a slight sweetness and crunch
  • 2 medium tomatoes, chopped
  • 1 tablespoon tomato paste
  • ½ teaspoon turmeric
  • 1 green chili, chopped, or to taste
  • 1 can (13.5 oz) full-fat coconut milk
  • 1 tablespoon lime juice
  • Fresh cilantro, chopped, for garnish

Step by step

  1. Season and sear the fish. Pat the fish dry. Combine 1 teaspoon curry powder, salt and pepper, and sprinkle over the fish. Heat 1 tablespoon oil in a large pan over medium-high heat. Sear the fish 3–4 minutes until browned on the bottom but still undercooked on top. Remove and set aside, it will finish cooking in the sauce.
  2. Build the base. In the same pan, add the remaining oil. Add the onion and bell pepper if using, and sauté until softened, about 4 minutes. Stir in the garlic and ginger, cooking 1 minute until fragrant.
  3. Cook down the tomatoes. Add the remaining curry powder, turmeric and chili. Stir for 30 seconds to toast the spices. Add the chopped tomatoes and tomato paste. Cook for 5–7 minutes, stirring occasionally, until the tomatoes break down into a thick paste and the mixture starts to look glossy.This is the step that builds most of the flavor, let the tomatoes cook down properly until they lose their raw edge and the paste thickens, rather than rushing straight to the coconut milk.
  4. Add the coconut milk and fish. Pour in the coconut milk and stir to combine, scraping up any browned bits from the bottom of the pan. Bring to a gentle simmer. Return the fish to the pan along with any juices. Reduce heat to low, cover, and cook for 8–10 minutes until the fish is cooked through.Avoid stirring too much once the fish goes back in, spoon the sauce over the top instead to keep the fillets from breaking apart.
  5. Finish and serve. Squeeze in the lime juice. Taste and adjust salt. Sprinkle with fresh cilantro and serve hot with rice.
Tanzanian Coconut Fish Curry recipe

Why it tastes the way it does

Tanzania sits along old spice trade routes connecting East Africa to India, and that history is right there in the curry powder and the way the spices are used here, closer to an Indian-influenced curry base than anything found further inland in Africa. The coconut milk is what roots it firmly on the coast. Together they produce something that’s distinctly its own, neither fully Indian nor typical of inland East African cooking.

Make it your own

Claire’s note

Shrimp or a mix of seafood works beautifully in place of or alongside the fish, just add it in the last few minutes of cooking since shellfish cooks much faster than fillets. For a vegetarian version, swap the fish for chickpeas or cubed firm tofu and use vegetable broth instead. Leftovers keep refrigerated for up to 3 days; reheat gently over low heat so the fish doesn’t overcook and fall apart further.

Serve with

Tanzanian coconut fish curry is traditionally served with steamed rice, coconut rice, or ugali, with a side of kachumbari (tomato and onion salad) for brightness. For more from the African collection the complete African food guide has it all.

Add Tanzanian coconut fish curry to your weekly meal planner, a fast, fragrant dinner ready well under an hour. And for more recipes, follow us on Pinterest.

Print
clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon
Tanzanian coconut fish curry served with tender fish simmered in a rich coconut curry sauce and garnished with fresh herbs.

Tanzanian Coconut Fish Curry


5 Stars 4 Stars 3 Stars 2 Stars 1 Star

No reviews

  • Author: Claire Bennett
  • Total Time: 40 minutes
  • Yield: 4 servings 1x
  • Diet: Seafood

Description

A fragrant and creamy coconut fish curry from Zanzibar, combining East African and Indian influences.


Ingredients

Scale
  • 1.5 lbs firm white fish fillets, cut into 45 inch pieces
  • 1 teaspoon curry powder, plus ½ teaspoon more for the sauce
  • ½ teaspoon salt, plus more to taste
  • ¼ teaspoon black pepper
  • 2 tablespoons oil, divided
  • 1 medium onion, finely chopped
  • 3 cloves garlic, minced
  • 1 tablespoon fresh ginger, grated
  • 1 green bell pepper, chopped (optional)
  • 2 medium tomatoes, chopped
  • 1 tablespoon tomato paste
  • ½ teaspoon turmeric
  • 1 green chili, chopped (or to taste)
  • 1 can (13.5 oz) full-fat coconut milk
  • 1 tablespoon lime juice
  • Fresh cilantro, chopped, for garnish

Instructions

  1. Season and sear the fish. Pat the fish dry. Combine 1 teaspoon curry powder, salt and pepper, and sprinkle over the fish. Heat 1 tablespoon oil in a large pan over medium-high heat. Sear the fish 3–4 minutes until browned on the bottom but still undercooked on top. Remove and set aside.
  2. Build the base. In the same pan, add the remaining oil. Add the onion and bell pepper if using, and sauté until softened, about 4 minutes. Stir in the garlic and ginger, cooking 1 minute until fragrant.
  3. Cook down the tomatoes. Add the remaining curry powder, turmeric and chili. Stir for 30 seconds to toast the spices. Add the chopped tomatoes and tomato paste. Cook for 5–7 minutes, stirring occasionally, until the tomatoes break down into a thick paste.
  4. Add the coconut milk and fish. Pour in the coconut milk and stir to combine. Bring to a gentle simmer. Return the fish to the pan along with any juices. Reduce heat to low, cover, and cook for 8–10 minutes until the fish is cooked through.
  5. Finish and serve. Squeeze in the lime juice. Taste and adjust salt. Sprinkle with fresh cilantro and serve hot with rice.

Notes

For a vegetarian version, swap the fish for chickpeas or cubed firm tofu and use vegetable broth instead. Leftovers keep refrigerated for up to 3 days; reheat gently over low heat.

  • Prep Time: 15 minutes
  • Cook Time: 25 minutes
  • Category: Main Course
  • Method: Stovetop
  • Cuisine: African

Nutrition

  • Serving Size: 1 serving
  • Calories: 450
  • Sugar: 5g
  • Sodium: 500mg
  • Fat: 25g
  • Saturated Fat: 15g
  • Unsaturated Fat: 10g
  • Trans Fat: 0g
  • Carbohydrates: 20g
  • Fiber: 4g
  • Protein: 30g
  • Cholesterol: 70mg

Tags:

You might also like these recipes

Leave a Comment

Recipe rating 5 Stars 4 Stars 3 Stars 2 Stars 1 Star