Spicy Coconut Fish Curry

Spicy coconut fish curry over basmati rice.

About This Recipe

We eat a LOT of fish. We bake it, grill it, and fry it. We eat it raw in ceviche and sushi. However, this dish frequents our table the most. This spicy coconut fish curry is flavorful, filling, and can be prepared in under an hour. It’s a little ethnically ambiguous, with both Thai fish sauce and Indian curry powder, but we’re sure you’ll enjoy it!

What Fish to Use in Spicy Coconut Fish Curry

Firm, mild fish is best for fish curry. The best types, in our opinion, are wahoo, mahi, triggerfish, snapper, hogfish, and grouper. Avoid oily fish such as barracuda. Also avoid delicate fish like flounder and bluefish.
Whichever fish you use should be skinless, boneless, and should have any bloodline (dark meat) trimmed away. For four servings, you’ll need about one pound of fish, cut into one inch cubes. 

Preparing the Ingredients

In addition to the fish, you’ll need the following ingredients:

Curry Powder: You’ll need three tablespoons of high-quality curry powder such as Sharwood’s Hot Curry Powder.

Lime Juice: Freshly squeezed is best, but you can also use bottled lime juice.

Red Chili Powder: Use 100% red chili powder. It’s readily available in Indian grocery stores. Don’t use American style chili powder, which contains other ingredients like cumin, garlic powder, and oregano. If you can’t find it, make your own by grinding red chili flakes in a spice mill or food processor. 

Coconut Oil: Set aside two tablespoons of coconut oil. You can substitute ghee or vegetable oil if necessary.

Onion: Chop two medium onions and set aside.

Garlic: Mince two garlic cloves and set aside. You can also used garlic paste or minced garlic.

Fish Sauce: You’ll need two tablespoons of fish sauce. Don’t be tempted to omit the fish sauce. This dish won’t taste right without it. Just ignore the smell and add it anyway!

Sugar: Set aside two tablespoons of brown or white sugar. Feel free to adjust the quantity based on your taste.

Coconut Milk: The best coconut milk comes from freshly grated and squeezed coconuts, but if that’s not possible, we prefer Thai Kitchen or Kara brand. You’ll need two cups.

Ginger: Set aside one tablespoon of minced or grated ginger. In a pinch, you can also use a teaspoon of ginger powder. 

Stir Fry Vegetables: Set aside 3 cups of your favorite vegetables. They can be fresh or frozen. We like to use sliced bell peppers and onions, broccoli, or diced carrots and peas.

Cilantro: Chop and set aside a small bunch of cilantro. Discard any large stems. This can be omitted if you dislike cilantro. 

Salt: Set aside about two teaspoons of salt. Feel free to adjust based on your taste and the saltiness of the fish sauce you used.

How Spicy do you Want it?

The tablespoon of red chili powder in this recipe will make a rather spicy curry. Adjust the heat to your liking as follows:

You have the pain tolerance of a small child: use 1/2 teaspoon of chili powder.

You can handle buffalo wings: use 1/2 tablespoon of chili powder

You can eat jalapenos without breaking a sweat: use the full tablespoon of chili powder.

You enjoy excruciating pain with dinner: double the red chili powder and throw in a handful of bird’s eye chilis while you’re at it.

What to Serve with Spicy Coconut Fish Curry

We prefer to serve this dish over basmati rice to soak up all the delicious coconut curry sauce. Make about 1 cup of cooked rice per serving of curry. You could also try this spicy coconut fish curry with naan, roti, brown rice, or jasmine rice.

Step by Step Instructions

Follow these detailed instructions or Jump to Recipe

  1. Add the fish, lime juice, half of the curry powder, and the red chili powder to a large bowl and stir coat the fish. Set aside.

    Fish marinade

  2. In a wok, heavy bottomed pot, or Dutch oven, cook the onions over medium heat for about 5 minutes until they are soft and translucent.

    Sauteed onions

  3. Add the ginger, garlic, and the remaining tablespoon of curry powder to the onions and continue cooking for about one minute.

    Cooking onions, ginger, garlic, and curry powder

  4. Add the coconut milk, sugar, salt, and fish sauce. Reduce to a simmer, stirring occasionally for about 10 minutes or until the coconut milk begins to thicken. Do not cover the pot.

    Cooking coconut curry sauce

  5. Stir in the vegetables. Cover the pot and simmer for five minutes.

    Adding vegetables to spicy coconut fish curry

  6. Add the fish, doing your best to submerge the pieces. Return the pot to a simmer, cover and cook for another five minutes or until the fish is cooked through and the vegetables are tender.

    Adding tuna to spicy coconut fish curry

  7. Remove from heat, top with chopped cilantro (optional), and serve the spicy coconut fish curry with rice.

    Serving spicy coconut fish curry


Spicy Coconut Fish Curry

Fish and vegetables in a spicy coconut curry.
Course Main Course
Cuisine Caribbean, Indian, Thai
Keyword Coconut, Fish Curry, Mahi Mahi, Spicy, Tuna
Prep Time 20 minutes
Cook Time 30 minutes
Total Time 50 minutes
Servings 4


Fish Marinade

  • 1 pound mahi, tuna, kingfish, or other firm boneless fish cut into bite sized pieces
  • 2 tbsp lime juice
  • 1 tbsp curry powder we prefer Sharwood's
  • 1 tbsp red chili powder Use 100% ground red chilis, not US style chili powder


  • 2 tbsp coconut oil
  • 2 medium onions diced
  • 2 cloves garlic minced
  • 2 tbsp fish sauce
  • 1 tbsp sugar
  • 2 cups coconut milk we prefer Thai Kitchen or Kara brand
  • 1 tbsp ginger minced
  • 2 tbsp curry powder
  • 3 cups of your favorite stir-fry vegetables fresh or frozen bell pepper, water chestnuts, broccoli, peas, diced carrots, etc.
  • 1 bunch cilantro chopped
  • 2 tsp salt


Marinate Fish

  • In a large bowl or zip-lock bag, combine fish, lime juice, chili powder, and 1 tablespoon curry powder. Allow to marinate for about 30 minutes.

Prepare Curry

  • Add coconut oil to a large wok or Dutch oven.
  • Cook onions over medium heat, stirring often, until soft and translucent.
  • Add garlic, ginger, 2 tablespoons curry powder, and continue cooking for 1 minute
  • Add coconut milk, sugar, salt, and fish sauce. Simmer over low heat for about 10 minutes, stirring occasionally.
  • Stir in the vegetables. Cover the pot and simmer for 5 minutes.
  • Add the fish, doing your best to submerge the pieces. Return the pot to a simmer, then cover and cook for another 5 minutes or until the fish is cooked through and the vegetables are tender.
  • Top with chopped cilantro and serve with basmati rice.


6 thoughts on “Spicy Coconut Fish Curry”

  1. 5 stars
    Just made this using sea bass. I do not like cilantro and ginger so I left them out. I also cut back on the salt a little, 2 tea spoons seamed like a lot. It was tasty!

Leave a Comment

Your email address will not be published. Required fields are marked *

Recipe Rating