This authentic Kerala fish curry showcases the coastal cuisine of South India with tender fish simmered in rich coconut milk, aromatic spices, and finished with fragrant curry leaf oil. A soul-warming dish that captures the essence of traditional Kerala cooking.

Recipe Details
Units:
Prep: 20 Cook: 25
Ingredients

For the Fish Curry

  • 600g fresh white fish fillets (snapper, kingfish, or cod), cut into 5cm pieces
  • 400ml thick coconut milk (first extraction or canned)
  • 200ml thin coconut milk (second extraction or diluted)
  • 2 medium yellow onions, finely sliced
  • 2 medium ripe tomatoes, cut into wedges
  • 3-4 fresh green chilies (serrano or jalapeño), slit lengthwise
  • 2 tbsp fresh ginger-garlic paste
  • 1 tsp ground turmeric
  • 2 tsp ground coriander
  • 1 tsp Kashmiri red chili powder (or paprika for mild)
  • 3 tbsp virgin coconut oil, divided
  • 1 tsp black mustard seeds
  • ½ tsp fenugreek seeds (methi)
  • to taste sea salt
  • 1 tsp tamarind paste (or 1 tbsp lime juice)

For the Curry Leaf Oil

  • 20-25 fresh curry leaves, washed and dried
  • 2 tbsp virgin coconut oil
  • 2 dried red chilies, broken in half
  • 2 small shallots or pearl onions, thinly sliced

For Serving

  • 300g steamed basmati rice
  • as needed traditional Indian pickles (mango or lime)
  • 4 pieces crispy papadum (optional)
Instructions
  1. Season 600g fresh white fish fillets (snapper with half the 1 tsp ground turmeric and a pinch of to taste sea salt. Set aside for 10 minutes to marinate while you prepare the curry base.

  2. Heat 2 tablespoons of 3 tbsp virgin coconut oil in a heavy-bottomed pan or traditional clay pot over medium heat. Add 1 tsp black mustard seeds and ½ tsp fenugreek seeds (methi), cooking until they splutter and become fragrant, about 30 seconds.

  3. Add 2 medium yellow onions to the pan and sauté until golden brown and caramelized, about 8-10 minutes. This step is crucial for developing the curry's deep flavor base.

  4. Stir in 2 tbsp fresh ginger-garlic paste and cook for 1 minute until aromatic. Add remaining 1 tsp ground turmeric, 2 tsp ground coriander, and 1 tsp Kashmiri red chili powder (or paprika for mild). Cook the spices for 30 seconds, stirring constantly to prevent burning.

  5. Add 2 medium ripe tomatoes and 3-4 fresh green chilies (serrano or jalapeño) to the pan. Cook until tomatoes break down and become jammy, about 5-6 minutes, mashing them gently with the back of your spoon.

  6. Pour in 200ml thin coconut milk (second extraction or diluted) first, stirring well to combine with the spice paste. Bring to a gentle simmer and cook for 3-4 minutes to allow flavors to meld.

  7. Add 400ml thick coconut milk (first extraction or canned) and 1 tsp tamarind paste (or 1 tbsp lime juice), stirring gently. Season with to taste sea salt to taste. Simmer for 2-3 minutes until the curry has a creamy, unified consistency.

  8. Gently slide the marinated 600g fresh white fish fillets (snapper into the curry. Do not stir vigorously to avoid breaking the fish. Cover and simmer for 8-10 minutes until fish is cooked through and flakes easily.

  9. While the fish cooks, prepare the curry leaf oil. Heat 2 tbsp virgin coconut oil in a small pan over medium heat. Add 2 dried red chilies and fry for 10 seconds until fragrant.

  10. Add 2 small shallots or pearl onions to the oil and fry until golden and crispy, about 2-3 minutes. Finally, add 20-25 fresh curry leaves and fry until they splutter and become crispy, about 1 minute. Remove from heat immediately.

  11. Drizzle the hot curry leaf oil over the finished fish curry. Serve immediately with 300g steamed basmati rice, as needed traditional Indian pickles (mango or lime), and 4 pieces crispy papadum (optional) on the side.

Tips

Fish Selection: Choose firm, white fish like snapper, kingfish, cod, or halibut that won't fall apart during cooking. Fresh fish is essential for authentic flavor and texture.

Coconut Milk Quality: Use high-quality coconut milk without stabilizers for the richest flavor. If using fresh coconut, extract thick milk first by blending grated coconut with minimal hot water, then strain. Thin milk comes from the second extraction.

Spice Freshness: Freshly ground spices make a significant difference. Toast whole coriander seeds and grind them fresh if possible. Kashmiri chili powder provides beautiful color without excessive heat.

Curry Leaf Importance: Fresh curry leaves are irreplaceable in authentic Kerala cuisine. They're available at Indian grocery stores and can be frozen for longer storage. Avoid dried curry leaves as they lack the essential oils.

Cooking Technique: Never boil coconut milk vigorously as it will curdle. Maintain a gentle simmer throughout cooking. The curry should have a creamy, velvety consistency.

Storage: This curry tastes even better the next day as flavors develop. Store refrigerated for up to 3 days. Reheat gently without boiling.

Traditional Serving: In Kerala, this curry is traditionally served on banana leaves with red rice, but basmati rice works beautifully. The pickles provide necessary acidity to balance the rich coconut milk.