White fish simmered in sweet and creamy coconut milk, seasoned with fragrant Indian spices and fresh herbs, that's all there is to this simple and delicious recipe for Coconut Fish Curry, using the Instant Pot or stovetop. Try this easy, 30-minute recipe and enjoy this curry with coconut rice or steamed basmati rice.

Want to save this recipe?
Growing up, my family regularly went out for South Indian food, from crispy dosas and soft idlis to spicy Chicken Chettinad and my dad's favorite, Kerala-style Fish Curry, also known as Meen Moilee.
This mild yet flavor-packed curry features tender fish simmered in a creamy coconut milk broth with aromatics, fresh herbs, and gentle spices. The coconut milk adds a subtle sweetness that pairs beautifully with the buttery texture of the fish.
Inspired by that dish, this recipe comes together in under 30 minutes in the Instant Pot or on the stovetop. I love serving it with coconut rice or brown rice, and for a low-carb meal, with Indian-spiced cauliflower rice.
If you're looking to add more fish recipes to your weekly menu, this coconut fish curry is a must-try!
Jump to:
Why We Love This Recipe
- It's a flavor-packed 30-Minute dinner.
- Protein-rich. Each serving contains 35 grams of protein.
- Low-Carb: Each serving contains 8 grams of net carbs.
- It's gluten-free and dairy-free.
Ingredients - Notes & Substitutions
All you need is fish fillets and commonly used Indian spices to make this delicious Indian Fish Curry. Let's take a look at all ingredients and possible alternatives.

- Fish: Any white-fleshed fish would be great, like Mahi-Mahi, Tilapia, Cod, Sea Bass, or Halibut. If using frozen, thaw it in the fridge overnight.
- Oil: Use either olive oil or coconut oil for a stronger coconut flavor.
- Mustard Seeds: I use brown/black mustard seeds, available at any Indian market or online.
- Curry leaves: These add a citrusy aroma and flavor to the curry. If you can't find them, use a teaspoon of lime zest instead. Alternatively, use Thai basil leaves.
- Onion & Serrano pepper: Use any type of onion, sliced thinly. Serrano pepper is a personal preference and completely optional. For a milder curry, deseed the chili or skip it altogether.
- Ginger and Garlic: For the best flavor, I use freshly ground ginger-garlic paste or store-bought frozen cubes. These offer superior flavors compared to the jarred pastes.
- Bell Peppers: Peppers add textural contrast to the creamy curry; use any combination of bell peppers.
- Coconut Milk: Full-fat coconut milk is ideal for a creamy, rich flavor. Low-fat coconut milk is a great alternative if you're watching the calories!
- Spices: Classic ground Indian spices like turmeric, coriander, cumin, and garam masala flavor this curry. I add a touch of red chili powder for mild heat, but skip it if you prefer your curry mild.
- Fresh Herbs: Cilantro works great as a garnish and for a little green. Sometimes I add mint leaves. This is completely optional; however, I do love the subtle flavor it adds to the curry.
- Lime juice: Fresh lime or lemon juice adds the perfect citrusy finish.
Scroll to the recipe card for a detailed list of ingredients and quantities.

How to Make Coconut Fish Curry
Here are the step-by-step instructions for this delicious Indian fish curry in the Instant Pot:

- Sauté aromatics. Select Sauté and wait 30 seconds. Add oil and mustard seeds; once they splutter, add curry leaves, ginger, and garlic paste, and sauté for 30 seconds.

- Sauté veggies. Add sliced onions and bell peppers. Sauté for a minute.

- Add the spices and coconut milk. Add the spices and sauté for 30 seconds. Stir in the coconut milk, bring to a gentle simmer for 1 minute, then proceed-this helps prevent curdling under pressure.

- Add the fish. Add fish and cilantro sprigs, stirring gently to coat with coconut milk. Optionally, top with a few mint leaves for a subtle, sweet minty aroma.

- Cook the fish curry. Lock the lid in place. Select pressure cook or manual and adjust to LOW pressure. Cook for 2 minutes.

- Serve the fish curry. Quickly release the pressure (QR) by following your cooker's instructions. Finish the curry with a light squeeze of lime (or lemon) and serve.
Fish Cooking Tip: How to Tell When Fish Is Cooked
Fish is cooked when it changes from translucent to opaque and flakes easily when gently cut with a fork.
Stovetop Fish Curry Steps
This recipe is easy to make on the stovetop. Here's how:
- Heat a chef's pan or sauté pan
on medium heat, then add oil and mustard seeds. - When the mustard seeds begin to splutter, add curry leaves and ginger-garlic paste. Sauté for 30 seconds, and add sliced onions and bell peppers. Sauté another 30 seconds.
- Add all spices, stir well, and sauté for another 30 seconds. Add coconut milk and mix well. Finally, add the Tilapia chunks and cilantro sprigs, and stir well. Optionally, add a few mint leaves on top.
- Cover the pan, reduce the heat to medium, and cook for 5-6 minutes, or until the fish turns opaque. Finish the dish with a light squeeze of lime and serve.
Serving Suggestions
Rice: I love to serve this fish curry with steamed white basmati rice, or the nuttier (and healthier) brown rice.
Low-Carb: For a low-carb meal, I pair it with Indian-style Cauliflower rice.
Side-dish: To complete this light and satisfying meal, pair it with a coconut-ty vegetable side dish, like Beetroot Thoran (Beets stir-fry) or Green Beans & Carrots.

Recipe Tips & Notes
- Choose your Fish: You can make this dish with your favorite kind of white-fleshed fish. Other varieties that go well in this recipe include Tilapia, Halibut, Sole, Cod, and Salmon. If using frozen fish, thaw it overnight in the refrigerator.
- Use Low pressure: Fish is a delicate food that can overcook very easily. Cooking at Low pressure ensures the fish stays flaky and tender.
- Adjust the cook time: If the fish pieces are thicker than 1 inch, increase the pressure-cooking time to 3 minutes at low pressure.
- To reduce calories, I like using full-fat coconut milk since I enjoy the creaminess it adds to the dish, but you can certainly use low-fat coconut milk and save a few calories.
- Curry Leaves: You can find them at your local supermarket, like Safeway, in the Asian produce section. If you cannot find those, Thai basil will be a good substitute.
Troubleshooting & FAQ
The biggest mistake when cooking fish is overcooking it. Fish cooks quickly, and once it goes too far, it can turn rubbery. For best results, add the fish toward the end of cooking, simmer it gently, and avoid stirring too much once it's added.
Firm white fish like cod, halibut, mahi-mahi, snapper, or tilapia work best in curry because they hold their shape and absorb flavors well.
I recommend skipping the serrano pepper or any red chilli powder if you prefer a milder taste.
The answer is simple. After you have finished pressure-cooking the fish, select Sauté on the Instant Pot, and sauté for 1-2 minutes, or until your curry has thickened to your liking.
Yes, you can! If using frozen fish, thaw the fish overnight in the refrigerator.
Popular Fish Recipes on the Blog
📖 Recipe

Coconut Fish Curry Recipe
Want to save this recipe?
Video
Equipment
Ingredients
- 1½ pound Mahi-Mahi or Tilapia filets cut in 2-inch pieces (or any white flesh fish)
- 2 tablespoon olive Oil or coconut oil
- 1 teaspoon mustard Seeds
- 10-12 curry leaves (see notes for substitute)
- 1 serrano pepper (whole) optional
- 1 tablespoon ginger paste 1-inch ginger
- 1 tablespoon garlic paste 3 cloves minced
- 1 medium onion thinly sliced (1 cup)
- ½ green pepper sliced, (½ cup)
- ½ orange pepper or yellow pepper sliced (½ cup)
- 14 ounce Coconut Milk (1 can) or 2 cups
Spices
- ¾-1 teaspoon salt (adjust to taste)
- ½ teaspoon turmeric powder
- ¼ teaspoon red chili powder (or cayenne): adjust to your taste
- 2 teaspoons ground coriander
- ½ teaspoon ground cumin
- 1 teaspoon garam masala
- 3 sprigs of cilantro
- 8 mint leaves (optional)
For finishing
- 1 teaspoon fresh lime juice
Instructions
- Prep: Cut fish in 2-inch pieces. Slice onions and bell peppers. Finely grate or grind ginger and garlic.
Instant Pot Method
- Sauté aromatics: Select Sauté and wait 30 seconds. Add oil and mustard seeds; once they splutter, add curry leaves, ginger, and garlic paste, and sauté for 30 seconds.
- Sauté veggies: Add sliced onions and bell peppers. Sauté for a minute.
- Add the spices and coconut milk, then sauté for 30 seconds. Stir in the coconut milk, bring to a gentle simmer for 1 minute, then proceed-this helps prevent curdling under pressure.
- Add the fish: Add fish and cilantro sprigs, stirring gently to coat with coconut milk. Optionally, top with a few mint leaves for a subtle, sweet minty aroma.
- Cook the fish curry: Lock the lid in place. Select pressure cook or manual and adjust to LOW pressure. Cook for 2 minutes.
- Serve the fish curry: Quick release the pressure according to your cooker's instructions. Finish with a squeeze of lime or lemon and serve.
Stove top recipe
- Heat a saucepan on medium-high heat, and add oil and mustard seeds.
- When the mustard seeds begin to splutter, add curry leaves and ginger-garlic paste. Sauté for 30 seconds, add sliced onions and bell peppers. Sauté for a minute.
- Add all spices, stir well and sauté for 30 seconds. Add coconut milk and mix well. Now add the fish pieces, a few cilantro sprigs, and stir well. Optionally, add a few mint leaves on top.
- Cover the pan, reduce the heat to medium and cook for 5-6 minutes, or until the fish is cooked completely. Finish the dish with a light squeeze of lime and serve.
Notes
- Choose your Fish: You can make this dish with your favorite kind of white flesh fish. Other varieties that work well in this recipe include cod, halibut, mahi-mahi, snapper, or tilapia. Cut the fish into 2-inch pieces.
- Use Low pressure: Fish is a delicate food that can overcook very easily. Cooking at Low pressure ensures the fish stays flaky and tender.
- Adjust the cook time: If the fish pieces are thicker than 1 inch, increase the pressure-cooking time to 3 minutes at low pressure.
- For reducing calories: Use low-fat coconut milk to save a few calories.
- Curry Leaves: If you cannot find those, substitute with a teaspoon of lime zest or Thai basil.


















Jackie says
Lovely curry, so quick I did add some mushrooms for bulk. Will look out for more recipes. Thankyou
Aneesha Gupta says
Hi Jackie, I'm so glad you enjoyed this curry. Try the coconut chicken curry- I'm sure you'll enjoy that too.
sumaya purba says
Indulging in a bowl of coconut curry is akin to a culinary voyage through tropical paradise. The velvety richness of coconut milk intertwines with an array of aromatic spices, creating a symphony of flavors that dance on the taste buds. The subtle sweetness of coconut is harmoniously balanced by the heat of spices, producing a satisfyingly complex profile. The tender chunks of protein or vegetables absorb the luscious sauce, offering a delightful textural contrast.
Each spoonful is a gastronomic adventure, a journey into the heart of exotic cuisines where coconut curry reigns supreme. The dish's versatility transcends borders, from Thai and Indian kitchens to Caribbean and Southeast Asian fare. It’s a comforting embrace of warmth and spice, a dish that not only nourishes the body but also satisfies the soul. Whether served over rice or accompanied by flatbreads, coconut curry is a culinary masterpiece that elevates the dining experience to a realm of sublime satisfaction.
Aneesha says
Beautifully described, thank you! I'm so glad you enjoyed this recipe so much!
Sosthenes Behn says
I made this and unfortunately found it to be very bland. (Perhaps because I didn’t ad any salt.
Aneesha says
Hi there, yes, you guessed it right. Leaving out the salt will make this dish taste bland for sure.
Shaheen says
Awesome fish curry recipe, i really enjoyed a lot.
Aneesha says
Thank you Shaheen, I'm so glad you enjoyed it!
Traci Garets says
I didn’t have leaves and didn’t measure a lot, so it turned out pretty hot but it’s good!!
Aneesha says
Glad you enjoyed it!
Mary Bianchetti says
Can I use frozen Fish?
Aneesha says
Hi Mary, Sure you can, You can increase the pressure cooking time to 3 minutes if adding frozen fish. Enjoy!
tam says
Wow, this curry was soooo tasty and easy to prepare! I will definitely check more recipes from your blog ❤️ thank you!!
Aneesha says
Thank you! I hope you enjoy the others as well!
Amy Miller says
Do you think I could use this sauce with chicken? Should I cook the chicken separately or directly in the sauce. Should I marinate the chicken in anything?
Thanks Amy
Aneesha says
Hi Amy, do you mean to cook chicken in leftover sauce or swap chicken for fish in this recipe?