Kerala Fish Moilee
Introduction
Close your eyes and picture a sun-drenched coast, palm trees swaying, and a warm breeze carrying the scent of fresh coconut oil and crackling curry leaves. That is the essence of Kerala in a single bowl. Kerala Fish Moilee (or Fish Molee) is a stunningly gentle, creamy fish stew that relies on fresh ginger, green chilies, and a velvety coconut milk broth rather than a heavy blend of ground spices.
If you have ever been intimidated by Indian cooking, this is the perfect place to start. Unlike our fiery, spice-rich Authentic Goan Fish Curry, a Moilee is mild, elegant, and incredibly forgiving. It is a dish that respects the delicate nature of the fish, wrapping it in a silky, golden blanket of spiced coconut cream.
The magic of a great Moilee lies in the balance. You want just enough green chili to tickle the back of your throat, balanced by the natural sweetness of fresh coconut milk and the bright spark of lime juice at the very end. Let’s walk through it together, step by step.
Why You’ll Love This Recipe
- Perfect for Beginners: No complex spices to grind or temper—just straightforward, aromatic ingredients.
- Quick & Easy: Goes from prep to table in under 30 minutes, making it ideal for busy weeknights.
- Gentle & Kid-Friendly: Offers a mild, creamy profile that is accessible to those sensitive to fiery heat.
- Fewer Heavy Spices: Highlights the natural flavor of the fresh fish and aromatic herbs rather than masking them.
- Incredibly Velvety: Uses two stages of coconut milk to create a luxurious, glossy texture without heavy cream.
Ingredients
- 500 g firm white fish fillets (cod, halibut, or sea bass) (cut into bite-sized chunks)
- 1/2 tsp ground turmeric (divided)
- 1 tbsp lemon juice (for marinade)
- 1/2 tsp salt (or to taste)
- 2 tbsp virgin coconut oil (divided)
- 1/2 tsp mustard seeds
- 2 sprigs fresh curry leaves (about 15-20 leaves)
- 1 medium red onion (thinly sliced)
- 4 medium green chilies (slit lengthwise)
- 1 tbsp fresh ginger (julienned into matchsticks)
- 4 cloves garlic (thinly sliced)
- 1/2 cup thin coconut milk (canned coconut milk diluted with water 1:1)
- 1 cup thick coconut milk (pure canned coconut milk)
- 1 medium tomato (cut into thin wedges)
- 1 tbsp fresh lime juice (to finish)
How to Make
Step 1: Marinate the Fish
In a medium bowl, combine the fish chunks with 1/4 teaspoon turmeric, lemon juice, and salt. Toss gently to coat, then let it rest for 15 minutes. You will see the fish turn a beautiful bright yellow; this builds a savory foundation and firms up the flesh.
Step 2: Gently Sear the Fish
Heat 1 tablespoon of coconut oil in a wide pan over medium heat. Sear the marinated fish pieces for 1-2 minutes on each side. You want to see the edges turn opaque and form a very light, pale crust. Carefully remove the fish and set it aside; this prevents the fish from disintegrating later in the gravy.
Step 3: Sauté the Aromatics
Add the remaining 1 tablespoon of coconut oil to the same pan. Stir in the mustard seeds. Once you hear them pop and crackle, scatter in the curry leaves, slit green chilies, ginger, and garlic. Sauté for 1 minute until highly aromatic. Add the sliced onions and cook until they are soft and translucent, making sure they do not turn brown.
Step 4: Simmer with Thin Coconut Milk
Stir in the remaining 1/4 teaspoon of turmeric and pour in the 1/2 cup of thin coconut milk. Bring it to a gentle, bubbling simmer. This liquid acts as the cooking medium to extract all the sweet onion and spicy ginger juices.
Step 5: Add Fish and Tomatoes
Carefully slide the seared fish pieces and the tomato wedges into the simmering pan. Cook uncovered on medium-low heat for 5-6 minutes. You will see the tomatoes soften slightly and the fish turn perfectly tender and flake easily.
Step 6: Finish with Thick Coconut Cream
Lower the heat to low. Pour in 1 cup of thick coconut milk. Swirl the pan gently to blend rather than using a spoon. Let it heat through for 2 minutes without boiling. Turn off the heat, stir in the fresh lime juice, and watch the gravy turn incredibly glossy and velvety.
Chef’s Tips
- 💡 Chef’s Tip: Keep the heat low after adding the thick coconut milk. High heat is the enemy of coconut cream; boiling it will cause the fat to separate and ruin the silky emulsion.
- 💡 Chef’s Tip: Gently swirl the pan instead of stirring. Once the fish goes into the gravy, it becomes incredibly delicate. Swirling the pan coats the fish beautifully without breaking the pieces.
- 💡 Chef’s Tip: Adjust the heat by modifying the green chilies. If you prefer a milder curry, scrape the seeds out of the green chilies before slitting and adding them to the oil.
Common Mistakes to Avoid
- ❌ Using delicate, flaky fish: Varieties like tilapia or sole will crumble into tiny bits, leaving you with a textured soup instead of distinct chunks of fish.
- ❌ Browning the onions: Letting the onions brown changes the sweet flavor profile and ruins the characteristic sunny-yellow color of the Moilee.
- ❌ Boiling the thick coconut milk: Boiling at high heat splits the sauce, turning your smooth gravy curdled and oily.
- ❌ Skipping the lime juice at the end: Without that final splash of acid, the rich coconut milk can feel heavy and one-dimensional on the palate.
💡 Before You Start
Before you turn on the stove, get all your ingredients prepped and laid out on your counter. Indian cooking moves quickly once the oil is hot! Slice your ginger into matchsticks, thin-slice your garlic, and slit your chilies. Also, shake your canned coconut milk thoroughly before measuring so the fat is evenly distributed. Reading the recipe all the way through first ensures you won’t be rushing to open a can while your mustard seeds are popping.
Variations
- Prawn Moilee: Swap the fish for 500g of peeled, deveined prawns. They cook beautifully in just 3-4 minutes in the simmering thin coconut milk.
- Vegan Tofu Moilee: Substitute the fish with firm pressed tofu cut into cubes. Pan-sear them gently before simmering to give them a satisfying bite.
- Vegetable Moilee: Skip the seafood entirely and load up the curry with carrots, cauliflower florets, and green peas for a vibrant, wholesome vegetarian stew.
Serving Suggestions
- The Authentic Way (Appam): Pair this hot, creamy curry with lacy, fermented rice crepes (Appam). The soft, spongy centers of the appams are practically designed to drink up the silky Moilee gravy.
- The Weeknight Comfort: Pour it generously over a warm bowl of steamed basmati or jasmine rice. It’s the ultimate comforting, low-effort weekday dinner.
- The Weekend Feast: Serve this elegant stew alongside a plate of crispy, spiced Samosa Recipe as starters, creating a beautiful contrast of textures for your weekend dinner party.
- A Refreshing Side: Balance the rich, tropical creaminess of the stew with a crisp, cold red onion and cucumber salad dressed with lemon juice.
Storage
Store any leftovers in an airtight container in the refrigerator for up to 2 days. Because of the delicate nature of fish and coconut milk, this dish does not freeze well.
Reheating
To reheat, place the curry in a small saucepan over low heat. Stir gently and warm it slowly until hot. Do not microwave on high or let it boil, as this will cause the coconut milk to split and make the fish tough.
Frequently Asked Questions
What is the best fish to use for Kerala Fish Moilee?
The best fish is any firm white fish such as cod, halibut, sea bass, kingfish, or snapper. Avoid delicate, flaky fish like tilapia or flounder, as they will break apart in the simmering gravy.
Can I use canned coconut milk for this recipe?
Yes! Canned coconut milk works beautifully. For the thin coconut milk, mix equal parts of canned coconut milk and water. For the thick coconut milk, use the pure, creamy milk straight from the can.
Is Fish Moilee very spicy?
No, Fish Moilee is traditionally a very mild, creamy curry. The heat comes primarily from fresh green chilies and ginger rather than red chili powder, giving it a gentle, warming spice profile.
How do I prevent my coconut milk from curdling or splitting?
Always lower the heat to the absolute minimum before adding the thick coconut milk, and never let the curry boil after it has been added. Also, add the acidic lime juice only after turning off the stove.
Can I make this recipe with prawns or chicken instead?
Absolutely! Prawns are a wonderful substitute and cook very quickly. If using chicken, cut it into small pieces and simmer it in the thin coconut milk slightly longer until fully cooked before adding the thick cream.
Can I substitute dried curry leaves for fresh ones?
It is highly recommended to use fresh curry leaves, as they provide the signature citrusy-herbal aroma essential to Kerala cuisine. Dried leaves lose most of their volatile oils and won’t yield the same authentic flavor.
Conclusion
Kerala Fish Moilee is proof that you do not need a cabinet full of complex spices to create a deeply flavorful, authentic Indian dish. With just fresh aromatics, good quality coconut oil, and creamy coconut milk, you can bring the gentle warmth of the Malabar coast right into your kitchen. Once you master this simple, comforting stew, you’ll find yourself returning to it week after week. Grab your apron, put on some music, and enjoy the process of cooking this coastal gem!
Recipe Index
More Recipes You’ll Love
Kerala Fish Moilee
Ingredients
Method
- In a medium bowl, combine the fish chunks with 1/4 teaspoon turmeric, lemon juice, and salt. Toss gently to coat, then let it rest for 15 minutes. You will see the fish turn a beautiful bright yellow; this builds a savory foundation and firms up the flesh.
- Heat 1 tablespoon of coconut oil in a wide pan over medium heat. Sear the marinated fish pieces for 1-2 minutes on each side. You want to see the edges turn opaque and form a very light, pale crust. Carefully remove the fish and set it aside; this prevents the fish from disintegrating later in the gravy.
- Add the remaining 1 tablespoon of coconut oil to the same pan. Stir in the mustard seeds. Once you hear them pop and crackle, scatter in the curry leaves, slit green chilies, ginger, and garlic. Sauté for 1 minute until highly aromatic. Add the sliced onions and cook until they are soft and translucent, making sure they do not turn brown.
- Stir in the remaining 1/4 teaspoon of turmeric and pour in the 1/2 cup of thin coconut milk. Bring it to a gentle, bubbling simmer. This liquid acts as the cooking medium to extract all the sweet onion and spicy ginger juices.
- Carefully slide the seared fish pieces and the tomato wedges into the simmering pan. Cook uncovered on medium-low heat for 5-6 minutes. You will see the tomatoes soften slightly and the fish turn perfectly tender and flake easily.
- Lower the heat to low. Pour in 1 cup of thick coconut milk. Swirl the pan gently to blend rather than using a spoon. Let it heat through for 2 minutes without boiling. Turn off the heat, stir in the fresh lime juice, and watch the gravy turn incredibly glossy and velvety.







