Tomato Fish Curry – Tangy, Spiced & Comforting
A light yet flavorful curry where tender fish slices are simmered in a tangy tomato base infused with aromatic Indian spices, perfect with steamed rice.

A light yet flavorful curry where tender fish slices are simmered in a tangy tomato base infused with aromatic Indian spices, perfect with steamed rice.
Tomato Fish Curry is a simple yet deeply satisfying dish from coastal and river-based cuisines across India. The star of the recipe is fresh fish, gently cooked in a fragrant, tangy sauce made with ripe tomatoes, onions, and a handful of warm spices. The mustard oil lends a bold, pungent note that pairs beautifully with seafood, while ajwain (carom seeds) adds a subtle hint of earthiness and aids digestion.
This curry is light enough for everyday meals yet flavorful enough for special occasions. Serve it with steamed rice, jeera rice, or even phulkas for a wholesome, homely experience. You can adjust the spice level by varying the amount of Kashmiri red chili powder and green chilies.
Prep the Fish
Wash fish slices thoroughly and drain excess water. Set aside.
Prepare the Base
Heat mustard oil in a deep pan over medium-high heat.
Once hot, add carom seeds and let them crackle for 4–5 seconds.
Add onions and sauté until light brown.
Add ginger garlic paste and cook until the onions turn golden brown.
Build the Curry
Stir in coriander powder, turmeric powder, Kashmiri red chili powder, and salt. Sauté for 10–12 seconds.
Add grated tomatoes and cook until the oil starts separating from the sides (6–8 minutes).
Cook the Fish
Add 3 cups of water and bring the curry to a boil.
Gently slide in the fish slices along with green chilies and garam masala powder.
Simmer for 10–12 minutes until the fish is cooked through. Avoid stirring too much to prevent breaking the fish.
Serve
Adjust salt if needed.
Garnish with fresh coriander leaves and serve hot with steamed rice.
Yes, adding ½ cup coconut milk towards the end will give it a coastal South Indian flavor.
Yes, but fish is delicate, so store separately from the curry base and combine just before reheating.
Add the fish only after the curry base is ready and avoid vigorous stirring—just swirl the pan gently.