Hyderabadi Fish Curry
A tangy, spiced fish curry with the gentle richness of coconut and the warmth of Hyderabadi flavors. The gravy is lively with tamarind, onions, and tomatoes, making it perfect with plain rice.
For 4 servings
- prep · ~10 min
Soak the tamarind and grind the coconut.
1.Soak tamarind in a little warm water for 10 minutes.2.Squeeze well and extract the pulp, then discard the fibers.3.Grind grated coconut with a little water to a smooth paste. - prep · ~10 min
Season the fish pieces.
Rub the fish lightly with a little of the salt and a pinch of turmeric powder. Set aside for 10 minutes while you prepare the curry base.
TIPHandle the fish gently so the pieces stay whole in the curry. - saute · ~7 min
Make the tempering and cook the onions.
1.Heat oil in a wide pan over medium heat.2.Add mustard seeds and let them crackle.3.Add fenugreek seeds and curry leaves for a few seconds.4.Add sliced onion and cook until light golden, about 6 minutes.TIPKeep the heat medium once the fenugreek goes in so it does not turn bitter. - saute · ~8 min
Build the masala.
1.Add green chili and ginger-garlic paste, then cook for 1 minute.2.Add tomato and cook until soft and pulpy, about 5 minutes.3.Add coriander powder, cumin powder, red chili powder, the remaining turmeric powder, and the remaining salt.4.Cook the masala for 2 minutes, stirring often. - simmer · ~8 min
Make the curry gravy.
Add the coconut paste, tamarind pulp, and water. Mix well and bring to a gentle simmer until the gravy thickens slightly and the raw smell fades, about 6 to 8 minutes.
TIPThe gravy should be pourable, not too thick, because it will tighten a little after the fish goes in. - simmer · ~10 min
Cook the fish in the gravy.
Slide the fish pieces into the simmering gravy in a single layer. Cover and cook on low heat for 8 to 10 minutes, gently shaking the pan once or twice, until the fish is cooked through and flakes easily.
TIPAvoid stirring with a spoon at this stage or the fish may break. - garnish
Garnish with cilantro.
- serve
Serve hot with plain rice.
What to keep in mind.
7 tips from the recipe — small details that make a real difference to the final dish.
- 1Use a wide pan so the fish can cook in a single layer without breaking.
- 2Do not brown the fenugreek seeds too much; even a few extra seconds can make the curry bitter.
- 3Cook the tomatoes until they turn pulpy and the oil looks slightly separated for a fuller masala base.
- 4Keep the gravy a little loose before adding fish, because coconut and fish both make it thicken as it rests.
- 5Once the fish goes in, move the pan with gentle shakes instead of stirring with a spoon.
- 6Rest the curry for 10 minutes before serving so the tamarind, coconut, and spice flavors meld better.
- 7This curry tastes even better the next day, but reheat very gently so the fish pieces stay intact.
Adapt it for your goals.
Spicier
Add extra green chili or a little more red chili powder for a hotter curry that still keeps the coconut-tamarind balance.
prawnPrawn
Swap the fish for prawns and reduce the final cooking time so they stay juicy and tender in the same Hyderabadi-style gravy.
low oilLow-oil
Use slightly less oil and cook the onions a bit longer on medium heat; you still get a flavorful masala with a lighter finish.
bonelessBoneless
Use boneless firm fish fillets if you want easier serving and cleaner eating, especially for children or weeknight meals.
Why this is on our healthy list.
Protein-Rich Main Dish
Fish makes this curry filling and satisfying while providing high-quality protein in the main meal.
Contains Beneficial Spices
Ginger, garlic, turmeric, cumin, and coriander add more than flavor and make the dish spice-forward without relying only on heat.
Balanced With Coconut and Tamarind
Fresh coconut adds richness, while tamarind brings tartness that keeps the curry lively instead of heavy.
Frequently asked questions
Use a firm white fish that holds its shape in gravy, such as seer fish, snapper, cod, halibut, or similar sturdy varieties.



