Indian Fish Curry with Coconut Recipe
Picture this: the warm, fragrant aroma of toasted spices mingling with creamy coconut, filling your kitchen with an irresistible invitation to sit down and savor every bite. The rich golden hue of the curry, studded with tender flakes of perfectly cooked fish, promises a comforting yet exciting meal that’s both exotic and heartwarming. This Indian Fish Curry with Coconut Recipe is like a hug on a plate—quick enough for weeknights, yet impressive enough to share with loved ones and showcase your culinary skills.
Why You’ll Love This Indian Fish Curry with Coconut Recipe
- Ready in just about an hour: This recipe fits wonderfully into your busy life without sacrificing flavor or depth.
- Uses simple, wholesome ingredients: Everything you need is easy to find, and the magic unfolds as these humble components come together.
- Perfect for beginners: Clear steps and accessible techniques make this curry approachable, even if you’re new to Indian cooking.
- Impressive presentation: The bright, vibrant curry looks stunning on the table, making every meal feel special.
- Customizable to your spice level and taste: You can easily tweak the heat and tang to suit your palate perfectly.
Why This Indian Fish Curry with Coconut Recipe Works
This Indian Fish Curry with Coconut Recipe succeeds because of a few key reasons. First, the toasting and grinding of coriander, cumin, and fenugreek seeds along with dried coconut releases an intense burst of flavor that forms the backbone of the dish. Next, the slow sautéing of onions, ginger, and garlic until golden ensures a sweet, rich base that layers the curry with complexity. Lastly, the careful simmering with tamarind and coconut milk marries tang, creaminess, and spice into a perfectly balanced sauce that enhances the tender, flaky fish.

Ingredients You’ll Need
Each ingredient in this Indian Fish Curry with Coconut Recipe plays an essential role in building its vibrant flavor profile while keeping things simple and accessible.
- Coriander seeds: Provides a warm, citrusy aroma when toasted and ground.
- Cumin seeds: Adds earthiness and depth to the curry’s foundation.
- Fenugreek seeds: Offers a subtle nutty bitterness that balances the richness.
- Dried coconut: Imparts natural sweetness and texture to the spice blend.
- Avocado oil: Neutral and heart-healthy, it’s perfect for frying spices and onions.
- Onion: Gives body and sweetness when sautéed slowly.
- Ginger and garlic: Essential aromatics that brighten and build complexity.
- Tomato sauce or paste: Adds acidity and color to the curry base.
- Mustard seeds and curry leaves: Infuse the curry with authentic South Indian flavors.
- Kashmiri chili powder and turmeric: Provide mild heat and beautiful color.
- Salt and green chilies: Seasoning and additional heat to taste.
- Tamarind paste: Delivers bright sour notes to balance creaminess.
- Water: Adjusts consistency for the sauce.
- Garam masala (optional): Adds a warm, aromatic finish.
- Fish: Firm, flaky varieties like cod or salmon work beautifully here.
- Full-fat coconut milk: Gives the curry its luscious creaminess.
- Cilantro: Fresh herb to garnish and lighten the dish.
Ingredient Substitutions & Tips
- Coriander seeds: Use pre-ground coriander powder, but toast lightly for extra aroma.
- Avocado oil: Substitute with peanut, sunflower, or light olive oil.
- Tamarind paste: Replace with fresh lemon juice, but add gradually and taste test as acidity levels differ.
- Fish: Use any firm-fleshed white fish like halibut or snapper for best results.
👨🍳 Pro Tips for Perfect Results
- Toast your spices fresh: Heating coriander, cumin, and fenugreek seeds unlocks their essential oils and intensifies flavor.
- Don’t rush the onions: Sautéing them slowly until golden brings natural sweetness and depth to the curry base.
- Handle the fish gently: Add fish pieces carefully and avoid stirring too much to keep them intact and flaky.
- Adjust water for sauce consistency: You’re aiming for a texture similar to a rich pasta sauce, not too thick or runny.
- Balance heat and tang: Taste as you go and tweak tamarind and chili to your preferred zing and spice level.
How to Make Indian Fish Curry with Coconut Recipe
Step 1: Toast and Grind the Spices
Begin by toasting coriander, cumin, and fenugreek seeds in a dry pan over medium heat until they release a heady, nutty aroma—this takes about 2 minutes. Immediately transfer them to a spice grinder, add dried coconut, and grind everything into a fine, fragrant powder. This ground mix forms the flavorful backbone of your curry sauce.
💡 Pro Tip: Keep an eye on the seeds while toasting—they can burn quickly and turn bitter.
Step 2: Sauté the Onions and Aromatics
Heat one and a half tablespoons of avocado oil in a wide pan over medium-high heat until shimmering. Add the chopped onions and gently sauté until they turn a lovely light golden brown and soften, about 10 minutes. Then stir in the grated ginger and garlic, cooking for another minute until fragrant and inviting.
💡 Pro Tip: Stir frequently to prevent onions from sticking and ensure even caramelization.
Step 3: Blend the Onion and Tomato Base
Transfer the golden onion mixture to a food processor. Add your tomato sauce or alternatively fresh chopped tomatoes. Pulse just until smooth but still slightly coarse, leaving a bit of texture to enrich the sauce.
💡 Pro Tip: This blend is the heart of the curry; don’t over-blend to retain that homemade feel.
Step 4: Temper the Seeds and Curry Leaves
In the same pan, heat the remaining oil over medium-high heat. Toss in mustard seeds, cumin seeds, and fenugreek seeds, letting them splutter and pop. Then add the curry leaves, perfuming the oil with their unique aroma. Cook for about one minute—watch closely so nothing burns.
💡 Pro Tip: Tempering spices at this stage creates layers of flavor that define this curry’s character.
Step 5: Combine and Spice the Sauce
Add the blended onion-tomato mixture back into the pan. Stir in Kashmiri chili powder, turmeric, salt, green chilies, and half of your ground seed-coconut powder. Cook this mixture, stirring occasionally, until you see it bubbling at the edges—about 2 minutes. This step thickens and builds complexity in the sauce.
💡 Pro Tip: Taste the sauce now to adjust salt or spice before simmering.
Step 6: Simmer with Tamarind and Water
Stir in tamarind paste, water, and optional garam masala. Cover the pan and reduce heat to low. Let it gently simmer for 20 to 30 minutes, stirring occasionally, until the sauce thickens to a luscious consistency resembling a rich pasta sauce. Adjust seasoning now to achieve perfect balance.
💡 Pro Tip: If the sauce thickens too much, add a splash more water to loosen it just right.
Step 7: Add Coconut Milk and Remaining Spice Mix
Pour in the coconut milk and sprinkle in the rest of the ground seed and coconut powder. Stir gently and cook for another minute to marry the flavors and enrich the sauce’s silky texture.
💡 Pro Tip: Coconut milk adds luxurious creaminess—use full-fat for best results.
Step 8: Gently Cook the Fish
Carefully slide the fish pieces into the curry, gently swirling the pan to coat without breaking the fillets. Cover and let them simmer on low heat for about 10 minutes until the fish is tender, flaky, and mostly opaque. Cooking time can vary depending on the thickness of your fish.
💡 Pro Tip: Avoid stirring too much once the fish is in to keep the fillets intact and visually appealing.
Step 9: Final Simmer and Garnish
Add half of the chopped cilantro to the curry and simmer uncovered for another 5 minutes until you notice delicious oil rising to the surface, signaling full flavor extraction. Finish by garnishing with the remaining fresh cilantro. Serve piping hot alongside steamed rice for a soul-satisfying meal.
💡 Pro Tip: Fresh cilantro adds a burst of color and freshness that lifts the curry perfectly.
Common Mistakes to Avoid
Learn from these common pitfalls to make your Indian Fish Curry with Coconut Recipe flawless:
- Overcooking the fish: Fish becomes dry and brittle if left simmering too long—watch cooking times closely.
- Burning spices: Toast seeds on medium heat and attend carefully; burnt spices turn bitter.
- Skipping tempering: Missing mustard seeds and curry leaves means losing key authentic flavor notes.
- Rushing onions: Under-cooked onions lead to a flat-tasting sauce that lacks sweetness and depth.
- Using low-fat coconut milk: This dilutes the creamy richness that defines this curry.
- Adding fish too early: Fish cooks fast; adding it too soon can make the sauce overcooked and mushy.
Delicious Variations to Try
Once you’ve mastered this classic Indian Fish Curry with Coconut Recipe, why not experiment?
Creamy Tamarind and Coconut Prawn Curry
Swap fish for juicy prawns for a seafood twist with the same luscious sauce.
Spicy Mango Fish Curry
Add diced raw mango during simmering for a fresh, tangy surprise that balances heat with fruitiness.
Vegetarian Tofu and Coconut Curry
Replace fish with firm tofu or paneer cubes for a meat-free version bursting with the same complex flavors.
Dry Coconut and Mustard Seed Fish Fry
After cooking the curry, pan-fry the fish with toasted mustard seeds and dried coconut for extra texture and aroma.
Green Chili and Curry Leaf Infused Curry
Boost the heat and fresh herbal aroma by doubling the green chilies and adding more fresh curry leaves.
How to Serve Indian Fish Curry with Coconut Recipe

Garnishes
Freshly chopped cilantro and a squeeze of lime juice add brightness. A handful of fried curry leaves sprinkled on top creates a gorgeous, crisp contrast.
Side Dishes
Serve with fluffy steamed basmati rice or warm naan bread to soak up that rich, coconut curry sauce. A side of lightly sautéed greens or cucumber raita refreshes the palate.
Creative Ways to Present
For a special dinner, serve the curry in a rustic clay pot surrounded by small bowls of chutneys, pickles, and sliced fresh vegetables. Add edible flowers or microgreens for extra color and elegance.
Make Ahead and Storage
Storing Leftovers
Keep leftover curry in an airtight container in the refrigerator for up to two days. The flavors intensify wonderfully but consume promptly due to seafood.
Freezing
Fish curry doesn’t freeze well as the texture of cooked fish may become grainy. If you must freeze, remove the fish and freeze only the sauce separately for up to 1 month.
Reheating
Reheat gently on the stovetop over low heat, stirring carefully. Add a splash of water or coconut milk to loosen the sauce if it thickens too much.
FAQs
Can I use frozen fish for this curry?
Yes, just thaw completely and pat dry before cooking to avoid excess moisture diluting the sauce.
What type of fish is best for this recipe?
Choose firm, white fish such as cod, halibut, snapper or salmon steaks that hold together during simmering.
Can I make this curry vegan?
Absolutely! Replace fish with tofu or vegetables and use coconut milk as usual for creamy richness.
How spicy is this curry?
It is mildly to moderately spicy, but you can easily adjust chili powder and green chilies according to your preference.
Is tamarind paste necessary?
Tamarind adds a characteristic tang but fresh lemon juice can be a good substitute in a pinch.
Can I prepare the curry base in advance?
Yes, you can make the spice paste and sautéed onion-tomato base ahead and refrigerate for a day to save time.
What to serve with this curry?
Steamed basmati rice or naan bread are best to soak up the rich coconut sauce.
How thick should the curry sauce be?
A consistency similar to pasta sauce, rich enough to coat each fish piece but not too runny.
Final Thoughts
This Indian Fish Curry with Coconut Recipe is a beautiful blend of fragrant spices, creamy coconut, and tender fish that comes together to create a satisfying and memorable meal. It’s the kind of dish that feels like a mini-vacation for your taste buds, inviting warm conversations and happy memories around the dinner table.
Have you tried this Indian Fish Curry with Coconut Recipe? I’d love to hear how it turned out! Leave a comment below. If you loved this recipe, please share it with friends and family. Happy cooking! 🍛
PrintIndian Fish Curry with Coconut Recipe
This Indian Fish Curry with Coconut is a rich, aromatic dish featuring a robust blend of toasted spices, tangy tamarind, and creamy coconut milk. Perfectly simmered fish in a flavorful tomato-based sauce, it’s a comforting and satisfying meal that blends traditional Indian flavors with a creamy texture, ideal for serving hot alongside steamed rice.
- Prep Time: 15 minutes
- Cook Time: 50 minutes
- Total Time: 1 hour 5 minutes
- Yield: 8 servings 1x
- Category: Curry
- Method: Stovetop
- Cuisine: Indian
Ingredients
Spice Blend
- 2 teaspoons coriander seeds (or ground coriander)
- 1 teaspoon cumin seeds (or ground cumin)
- ¼ teaspoon fenugreek seeds
- ¼ cup dried coconut (desiccated or flakes)
Base and Aromatics
- ¼ cup avocado oil (peanut oil or olive oil)
- 1 large onion (chopped, approximately 2½ cups)
- 2 teaspoons grated ginger
- 2 teaspoons grated garlic
Tomato Sauce and Tempering
- 2 cups tomato sauce (or ¾ cup tomato paste diluted with water or 2 chopped tomatoes)
- ¾ teaspoon mustard seeds
- ¾ teaspoon cumin seeds
- ¼ teaspoon fenugreek seeds (or 1 tablespoon kasuri methi)
- 8 to 10 curry leaves
Spices and Flavorings
- 1½ teaspoons Kashmiri chili powder (adjust to taste)
- ½ teaspoon turmeric
- ½ teaspoon salt (adjust to taste, may need ¾ tsp)
- 2 green chilies (slit and remove seeds to reduce pungency)
- 1 tablespoon tamarind paste (concentrated or lemon juice)
- 1 pinch garam masala (optional)
Additional Ingredients
- 1½ cups water
- 1½ lbs fish (firm fleshed variety, darne cut (steak) or 3-inch fillets)
- ⅓ cup full-fat coconut milk
- 3 tablespoons chopped cilantro
Instructions
- Ground Spices: In a cast-iron casserole dish or wide saute pan, toast the coriander seeds, cumin seeds, and fenugreek seeds until aromatic, about 2 minutes. Transfer the seeds to a spice grinder, add dried coconut, and grind the mixture to a fine powder.
- Aromatics: Add 1½ tablespoons of oil to the dish or pan and heat it over medium-high until shimmering. Add chopped onions and sauté until light golden brown and translucent, about 10 minutes. Then add grated ginger and garlic, cooking for an additional minute until fragrant.
- Process: Transfer the cooked onions to a food processor. Add tomato sauce or chopped tomatoes and process until the mixture is smooth but slightly coarse.
- Tempering: Add the remaining oil to the dish and heat over medium-high. Add mustard seeds, cumin seeds, and fenugreek seeds. When the seeds begin to splutter, add curry leaves and cook until aromatic, about 1 minute, taking care not to burn the seeds.
- Sauce: Stir in the ground onion and tomato mixture, then add chili powder, turmeric, ½ teaspoon salt, green chilies, and half of the ground seed-coconut powder. Cook until the mixture starts to bubble around the edges, stirring occasionally, about 2 minutes.
- Simmer: Stir in tamarind paste, 1½ cups water (adjust as needed), and garam masala if using. Cover, reduce heat, and let it simmer for 20 to 30 minutes, stirring occasionally, until the sauce thickens. Adjust tamarind, spices, and seasonings to taste.
- Tip: The sauce consistency should resemble pasta sauce. Add water to adjust if necessary. As some oil rises to the surface, add coconut milk and remaining ground seed-coconut powder, stirring and cooking for 1 minute.
- Fish: Carefully slide in fish pieces, gently swirl to incorporate, cover and simmer for 10 minutes until fish is tender, flaky, and almost opaque. Cooking time varies based on fish thickness and type.
- Cilantro: Add half of the chopped cilantro, simmer another 5 minutes until more oil rises to the surface. Avoid excessive stirring to prevent breaking the fish. Garnish with remaining cilantro and serve hot with steamed rice.
Notes
- Adjust chili powder according to your heat preference.
- Use tamarind paste for authentic tanginess; lemon juice is a milder alternative.
- Curry leaves add aromatic authenticity but can be omitted if unavailable.
- Choose firm white fish like cod, tilapia, or kingfish for best results.
- Grounding the toasted spices with dried coconut adds depth and richness to the curry.
- Be gentle when stirring after adding fish to prevent breaking the fillets.
Keywords: Indian fish curry, coconut fish curry, spicy fish curry, Indian seafood recipe, tamarind fish curry, curry with coconut milk

