
There are some curries that are meant to be eaten right away, and then there are curries that somehow get better after they sit for a while. This Kerala-style Salmon Fish Curry is definitely the latter.
This is my take on a traditional Kerala fish curry, using salmon instead of the more traditional fish. The salmon is lightly marinated with salt, turmeric, and red chili powder before being gently cooked in a fragrant curry made with coconut oil, shallots, ginger, garlic, curry leaves, coconut milk, and Kodampuli.
The Kodampuli is what gives this curry its signature Kerala flavor—deeply tangy, slightly smoky, and completely different from the flavor of regular tamarind.
And just like with many good curries, don’t rush it. Let the onions cook down, give the masala time to develop, and once the fish goes in, leave it alone. The less you fuss with the salmon, the better.
Ingredients
For the Salmon
- 1½ lbs salmon, cut into large pieces
- ½ teaspoon turmeric powder
- 1 teaspoon red chili powder
- ½ teaspoon salt
For the Curry
- 3 tablespoons coconut oil
- ½ teaspoon mustard seeds
- ¼ teaspoon fenugreek seeds
- 2 sprigs curry leaves
- ½-inch piece ginger
- 6 cloves garlic
- 10 Indian shallots, finely chopped
- 2 green chilies, slit lengthwise
- ½ teaspoon turmeric powder
- 2 teaspoons red chili powder
- 2 teaspoons coriander powder
- 3 pieces Kodampuli (Malabar tamarind)
- 1 cup coconut milk
- ½–1 cup water
- Salt, to taste
Method
Marinate the Salmon
- Place the salmon pieces in a bowl and gently coat them with salt, turmeric, and red chili powder.
- Let the salmon sit for 15–20 minutes while you get everything else ready.
- You don’t need a complicated marinade here. The salmon already has plenty of flavor—the spices are simply there to season the fish and give it a beautiful color.
Build the Curry
- Heat the coconut oil in a heavy-bottomed pan over medium heat. If you have an earthen pot, even better.
- Add the mustard seeds and fenugreek seeds. Once the mustard seeds start popping, add the curry leaves.
- Crush the ginger and garlic together and add them to the pan. Add the chopped shallots, green chilies, and a little salt.
- Now comes the part where you need a little patience.
- Cook the shallots slowly until they soften and turn lightly golden. Don’t crank up the heat to hurry this along. This is where the foundation of your curry starts to develop.
Make the Masala
- In a small bowl, mix together the turmeric, red chili powder, and coriander powder with a few tablespoons of water to make a thick paste.
- Add the spice paste to the pan and cook for 3–4 minutes, stirring frequently.
- You want the raw smell of the spices to disappear and the masala to become fragrant and well cooked. If it starts sticking, add a small splash of water and keep going.
- This is one of those recipes where the masala will take the time it needs. Let it.
Add the Kodampuli
- Add about ½ cup water to the masala.
- Soak the Kodampuli in about 1 cup of hot water for approximately 20 minutes. Add the Kodampuli pieces and their soaking water to the pan.
- Cover and let everything simmer for about 5 minutes.
- The Kodampuli is the star here. It gives the curry that unmistakable Kerala-style tang, so don’t substitute regular tamarind if you can avoid it.
Add the Coconut Milk
- Lower the heat and add the coconut milk.
- Gently stir everything together and let it come to a gentle simmer.
- Don’t let the coconut milk boil aggressively. Keep the heat low and let the curry slowly come together.
- Taste the gravy and adjust the salt if needed.
Add the Salmon
- Carefully place the marinated salmon pieces into the curry.
- Make sure the fish is nestled into the gravy, but don’t start stirring it around.
- Cover the pan and cook gently for about 6–8 minutes, depending on the thickness of your salmon pieces.
- Salmon cooks quickly, and overcooking it will leave you with dry fish. Once it’s cooked through, turn off the heat.
- If you need to move the fish around, gently shake or swirl the pan rather than using a spoon. Trust me—your salmon will thank you.
Let It Rest
- And now, the hardest part: leave it alone.
- Let the curry rest for at least 30 minutes before serving. If you have the patience, give it an hour or two.
- The flavors continue to develop as the curry rests, and the salmon absorbs some of that delicious, tangy gravy.
- Honestly, this is one of those dishes that can taste even better the next day.
Cooking Tips
- The shallots are the backbone of the curry. Give them time to soften and lightly caramelize before adding the spices.
- Cook the Masala well. If you can still smell raw chili or coriander powder, it’s not ready. Keep cooking and add a splash of water if necessary.
- Don’t use store-bought ginger-garlic paste.
Use fresh ginger and garlic and crush them together in a mortar and pestle just before cooking. You don’t need a perfectly smooth paste—a coarse, fragrant crush is exactly what you want.
Use fresh garlic, not pre-peeled garlic.
I know pre-peeled garlic is convenient, but the flavor just isn’t the same. Fresh garlic gives the curry a much deeper and more aromatic flavor. This is one shortcut I wouldn’t take—the difference really comes through in the finished curry. - Be careful with the Kodampuli. It packs a punch. Start with the recommended amount and adjust the tanginess the next time you make it based on your preference.
- Don’t boil the coconut milk. A gentle simmer is all you need.
- Hands off the salmon! Once the fish goes into the curry, resist the urge to constantly stir. Salmon is delicate and will break apart. Gently shake the pan instead.
- And finally—give it time. This isn’t a curry to make and immediately dig into. Letting it rest allows the flavors to settle into the fish and gravy. If you can make it a little ahead of time, even better.
A Note About the Fish
You can make this curry with almost any firm white fish, but I personally love using salmon. The salmon has a richer, slightly oily flavor that holds up beautifully against the bold spices, coconut, and tangy Kodampuli. It also adds a depth of flavor to the curry that you don’t quite get with a very mild white fish.
Traditionally, this Kerala-style curry is often made without coconut milk and uses sardines (Mathi Meen) or another naturally oily, pungent fish. The stronger flavor of the fish works incredibly well with the spicy, tangy Kodampuli-based gravy.
If you are using sardines or another strongly flavored, oily fish, you can skip the marination altogether. Simply clean and cut the fish, season it lightly with salt if needed, and add it directly to the curry. The fish has enough natural flavor and richness that an additional marinade isn’t necessary.
When using salmon, however, I like the quick marinade of salt, turmeric, and red chili powder. It seasons the fish from the start, helps mellow the richness of the salmon, and gives it a beautiful color while adding another layer of flavor to the finished curry.
So, think of this recipe as a little variation on the traditional version—salmon and coconut milk are my additions, but the soul of the curry remains Kerala-style.
Serving Suggestions
Serve this with steaming hot rice—plain white rice or Kerala matta rice are my favorites.
Spoon that tangy, spicy coconut gravy generously over the rice, break off a piece of salmon, and let the gravy do the rest.
Simple, comforting, and full of flavor. Exactly what a good Kerala fish curry should be.
