Best Fish Masala

Important Note: When you buy through our links, we may earn a commission. As an Amazon Associate we earn from qualifying purchases. Content, pricing, offers and availability are subject to change at any time - more info.

Learn how to make fish masala at home that will taste better than your local Indian restaurant’s. This simple fish masala recipe is made with pantry staples – onions, garlic, ginger, tomatoes, spices, herbs, and coconut. All you need is to get some fresh fish and you’re set!

What Fish Is Good For Indian Curry?

The best fish to use for masala fish or Indian curry is firm white fish, preferably freshwater fish. Some suggestions are Spanish mackerel, tilapia, cod (any type), barramundi (a type of sea bass), snapper, sole, basa, halibut, or ling. You could also use salmon or trout, but they have a bit stronger taste. 

If you want to keep this meal kosher, make sure you choose a fish with scales. This means, from the options above, you could choose cod, halibut, mackerel, salmon, trout, ling, red snapper, and barramundi. Fish without scales, such as tilapia, sole, and basa, are not kosher.
Now that you’ve picked your fish, let’s cook this aromatic delight!

Fish Masala

Prep Time: 10 minutes
Cook Time: 30 minutes
Total Time: 40 minutes
Servings: 6
Calories: 351kcal


For the marinade:

  • 2.2 lbs. fish
  • ½ Tbsp. ginger paste
  • ½ Tbsp. garlic paste
  • ¼ tsp. turmeric powder
  • ½ tsp. salt
  • ½ tsp. or more of red chili powder

For the sauce:

  • 2 Tbsp. vegetable oil
  • 1 tsp. cumin powder
  • 4 medium onions sliced
  • 4 medium tomatoes ripe
  • ½ Tbsp. ginger paste
  • ½ Tbsp. garlic paste
  • 1 tsp. salt or to taste
  • ¼ tsp. turmeric powder
  • 2 tsp. red chili powder
  • 4 Tbsp. grated fresh coconut or ½ cup coconut milk

For the curry:

  • 2 Tbsp. oil
  • 2 sprigs curry leaves
  • 2 to 4 green chilis chopped
  • 2 to 3 tsp. garam masala
  • 2 ½ to 3 cups water as needed


  • All ingredients ready? Let's begin!
  • Wash and dry the fish with paper towels, cut it into the desired size, or leave it whole.
  • Marinate fish with ginger paste, garlic paste, turmeric, red chili powder, and salt.
  • Heat about 1 teaspoon of oil in a flat frying pan and fry the fish pieces until fragrant. For about 2 to 3 minutes on each side. Set the fish aside.
  • In a large pot, heat 2 tablespoons of oil to start preparing the sauce.
  • Add cumin powder and when it starts sizzling, add the onions and sauté until golden.
  • Add ginger and garlic paste and fry for 30 seconds, stirring with a spatula. Add tomatoes and salt, and fry until the tomatoes are mushy and soft.
  • Now, add coconut or coconut milk, red chili powder, and turmeric. Sauté until fragrant – for about 2-3 minutes.
  • Cool the mixture and add to a blender jar with a few tablespoons of water. Blend until smooth or slightly coarse, according to your preference. You can also use an immersion blender. Set the sauce aside.
  • Prepare the fish curry: Add 2 tablespoons of oil to the same pot and heat on low. When the oil is heated, add the curry leaves and green chilies.
  • When fragrant, add the sauce you made earlier and the garam masala. Fry until it smells delicious.
  • Pour water into the pot and bring to a boil. Cook until some oil floats to the top and the stew starts to thicken. Carefully add the fish pieces and cook covered over medium heat for 3-4 minutes. Gently turn the fish pieces to the other side and cook until the fish starts to lump a bit. This means the fish is cooked. Taste the curry and add more salt and red pepper powder if needed.
  • Garnish fish masala with fresh coriander leaves and serve with fluffy basmati rice.



Calories: 351kcal | Carbohydrates: 16g | Protein: 36g | Fat: 17g | Saturated Fat: 5g | Polyunsaturated Fat: 5g | Monounsaturated Fat: 5g | Trans Fat: 0.1g | Cholesterol: 83mg | Sodium: 665mg | Potassium: 914mg | Fiber: 5g | Sugar: 7g | Vitamin A: 1329IU | Vitamin C: 33mg | Calcium: 69mg | Iron: 3mg

Notes & Tips

  • There are different types of garam masala, so make sure you choose one that suits your taste buds. Some are stronger than others. If you prefer to leave the fish flavor dominant, I advise you to adjust the amount of masala as you go. 
  • You can also sear the marinated fish instead of frying it. Both methods are effective in creating a crisp browning on the outside. This will enhance the flavor of the dish and make sure your fish doesn’t taste like it was boiled.
  • I love a smoother stew or sauce, so I like to blend the sauce until it’s creamy. But if you prefer your stew to be chunky, you can blend it less. There’s no need for a high-end blender here, an immersion blender works fine.
  • If this recipe is too large, you can cut it in half to serve 3 people. Or simply divide it by 6 and then multiply the ingredients by how many servings you want.

Serving Suggestions & Substitutions

I find that basmati rice and a fresh salad are the best accompaniments for masala fish. Some other good ideas are Naan bread, garlic Naan, or Omani bread (Khubz Ragag). You could also try coconut rice, puliyagore or Tamarind rice, or even baked potatoes.  

Now, I’ll go further into what is the difference between garam masala and curry powder in the next section. But if you don’t have garam masala, you can substitute curry powder and this dish will still be delectable. 

You can substitute finely chopped fresh ginger and garlic for the pastes. You’re going to blend the sauce after anyways, so it doesn’t matter. 

The freshly grated coconut or coconut milk can be replaced with 24 cashew nuts. In this case, I’d prefer to blend the sauce until creamy. But if you like to feel the ground nuts, you can still blend it coarsely. 

Lastly, remember to adjust the spice level to your taste buds. If you don’t like red chili powder or green chili peppers, then omit them. This is especially advised if you’re cooking for young kids. 

Fish Masala Vs Fish Curry

You may be wondering, is garam masala like curry? Well, both garam masala and curry powder are a blend of spices used to add warmth and flavor to savory dishes. 

The difference is that garam masala has a stronger flavor than curry powder and it is used in Indian cuisine. Curry powder, on the other hand, is not an authentic Indian spice blend – it was invented by the British. Masala is more of a warming aromatic blend, while curry powder is earthier in flavor.

But curry in itself refers to a cooked vegetable, meat, or seafood dish with spices and salt. Anything can be a curry. What makes curry a masala dish is adding garam masala to it to intensify the flavor and taste. 

Anyways, because adding garam masala is just a subtle difference to the recipe, most English speakers call Indian fish masala “fish curry” or “fish masala” interchangeably. 

How Do You Keep Masala Fish in the Fridge?

You can store fish masala in an airtight container in the fridge for up to 3 to 4 days. You can also stow it in the freezer in an airtight container for up to 3 months. But I do recommend enjoying this recipe for masala freshly made. 

Don’t freeze the rice with the masala fish. Defrosted cooked rice is mushy and soggy. It’s best to make a fresh batch of rice each time or keep it in the fridge for up to 4 days.

Recent Recipes