Jamaican Curry Fish with Coconut Milk: Easy Recipe

Updated November 4, 2026

Total time
49 min
prep 25 min · cook 24 min
Serves
4
portions as written
Safe temperature (USDA)
145°F / 63°C
check the thickest piece

Jump to recipe

Jamaican Curry Fish with Coconut Milk: Easy Recipe

Jamaican curry fish is a warmly spiced seafood dish simmered in coconut milk with onion, thyme, garlic, and Scotch bonnet pepper. The creamy sauce softens the curry’s heat and makes a generous topping for rice; seasonings and heat levels vary from cook to cook, so this version is easy to adjust.

Ingredients

  • 1½ lb firm white fish fillets, such as snapper, cod, or mahi-mahi (680 g), skin removed if desired and cut into pieces about 2 inches (5 cm) wide
  • 1 tsp fine salt (5 g), divided
  • ½ tsp freshly ground black pepper (1 g)
  • 1 tbsp fresh lime juice (15 ml)
  • 2 tbsp neutral cooking oil, such as canola (30 ml)
  • 1 medium yellow onion, thinly sliced (about 1 cup / 150 g)
  • 1 medium red or green bell pepper, thinly sliced (about 1 cup / 150 g)
  • 3 garlic cloves, finely chopped (about 1 tbsp / 9 g)
  • 1 tbsp finely grated fresh ginger (6 g)
  • 2 tbsp Jamaican curry powder (about 12 g), or use a mild curry powder with an extra ½ tsp turmeric (1 g)
  • ½ tsp ground allspice (1 g)
  • 4 fresh thyme sprigs (about 2 g), or 1 tsp dried thyme (1 g)
  • 1 whole Scotch bonnet pepper (about 20 g), left whole for gentle heat or pierced once for more heat; see Tips for a substitute
  • 1 can unsweetened coconut milk, well shaken (13.5 oz / 400 ml)
  • ½ cup water or unsalted fish stock (120 ml)
  • 2 scallions, thinly sliced (about 30 g)
  • 1 tbsp chopped fresh cilantro or extra scallion tops (about 4 g), optional

Instructions

  1. Season the fish and prepare the aromatics. Pat the fish dry with paper towels and check for any remaining pin bones. In a bowl, gently toss the pieces with the lime juice, black pepper, and half the salt. Set aside for 10 minutes while you slice the onion and bell pepper and chop the garlic and ginger. This brief rest seasons the fish without leaving it in acidic lime juice long enough to affect its texture.
  2. Soften the vegetables. Set a wide, deep skillet or sauté pan over medium heat and add the oil. When it shimmers, add the onion and bell pepper with the remaining salt. Cook for 5 minutes, stirring occasionally, until the onion is softening and the pepper has lost some of its raw crunch. Keep the heat moderate so the vegetables soften rather than brown heavily.
  3. Bloom the spices. Stir in the garlic, ginger, curry powder, allspice, and thyme. Cook for 1 minute, stirring constantly, until fragrant. Do not let the garlic scorch; if the pan looks dry, add a small splash of water. Blooming the curry briefly in oil helps release its aroma, but prolonged frying can make the spices taste bitter.
  4. Build the coconut sauce. Pour in the coconut milk and water or stock, stirring and scraping the bottom of the pan to loosen the spices. Add the whole Scotch bonnet and scallions. Bring the mixture just to a gentle simmer, then lower the heat and simmer uncovered for 8 minutes. Stir once or twice. The sauce should be fragrant and slightly thickened, not rapidly boiling or separating.
  5. Simmer the fish gently. Nestle the fish pieces into the sauce in a single layer as much as possible. Spoon a little sauce over the tops, cover the pan, and cook at a gentle simmer for about 8 minutes, depending on the thickness of the pieces. Avoid stirring vigorously; fish can break apart before it is served. Check the thickest piece with a food thermometer. USDA FSIS gives fish a safe minimum internal temperature of 145°F (63°C); if a piece has not reached that temperature, cover and simmer for another minute or two, then check again.
  6. Finish and serve. Remove the thyme stems and whole Scotch bonnet, taking care not to squeeze or break the pepper unless you want more heat. Taste the sauce and adjust the salt or add a little black pepper. Sprinkle with cilantro or scallion tops and serve hot with plenty of sauce. The stated 24 minutes of cooking covers the timed sauté, spice blooming, sauce simmer, fish simmer, and finishing; thicker fish may need a little extra time to reach a safe temperature.

Tips

  • Choose fish that holds its shape. Snapper is a familiar choice for Jamaican-style curry fish, while cod, mahi-mahi, grouper, or another firm white fish works well. Very thin fillets cook quickly and may flake into the sauce, so cut them into broad pieces and check them early. If using frozen fish, thaw it in the refrigerator and pat it thoroughly dry before seasoning.
  • Control the Scotch bonnet carefully. Scotch bonnet is prized in Caribbean cooking for its fruity aroma as well as its heat. Keeping it whole gives the sauce a gentler pepper fragrance; piercing it or adding a small piece makes the sauce hotter. If you cannot find one, use a habanero for a similar fruity heat, or a jalapeño for a milder, less fruity result. Handle hot peppers carefully and wash your hands afterward.
  • Check your curry powder before adding more. Jamaican curry powders vary in salt, turmeric, and heat. If yours is especially salty or hot, begin with 1½ tablespoons (about 9 g) and taste the sauce before serving. A general-purpose curry powder is a practical substitute, though its flavor may be less earthy and its color less golden; adding the listed turmeric helps with color, not with recreating the exact blend.
  • Keep the sauce at a simmer, not a hard boil. Vigorous bubbling can break up delicate fish and may cause coconut milk to look grainy or separate. Stir the sauce before adding the fish, then handle the pieces as little as possible. If the finished sauce seems too thick, loosen it with a tablespoon or two of water; if it is thin, lift out the fish when cooked and simmer the sauce briefly before returning the fish.

Serving Suggestions

Serve the curry fish over steamed white rice, rice and peas, or plain brown rice, with enough coconut sauce to coat the grains. Rice and peas is a particularly satisfying pairing because its mild, savory flavor balances the curry and pepper. If you want a lighter plate, offer boiled green bananas, steamed callaloo, or sautéed cabbage alongside the fish. These sides keep the meal rooted in Caribbean flavors without competing with the sauce.

Put lime wedges on the table so each person can brighten their serving to taste. A simple cucumber and tomato salad or sliced avocado also makes a cool contrast to the warm curry. If the Scotch bonnet has made the sauce quite hot, serve extra rice and a mild side rather than stirring dairy into the pan, which would change the character of the coconut sauce.

Variations

Use fish steaks instead of fillets: Bone-in snapper steaks can be used if they fit comfortably in the pan. They may take longer than boneless pieces, so check the thickest part near the bone with a thermometer and continue simmering as needed. Let diners know the fish contains bones, and avoid breaking the steaks up while serving.

Add vegetables: Stir in 1 cup (about 150 g) of sliced okra or chopped pumpkin with the coconut milk and simmer until tender before adding the fish. Okra thickens the sauce slightly, while pumpkin adds a gentle sweetness. A handful of spinach can be added during the final 2 minutes, just long enough to wilt.

Make it less rich: Replace up to half the coconut milk with additional water or unsalted fish stock. The sauce will be lighter and less creamy, so taste it near the end and adjust the salt and curry seasoning if needed. Avoid using sweetened coconut beverage, which is thinner and can add unwanted sweetness.

Adjust the heat: For a mild family-style pan, leave the Scotch bonnet whole and remove it before serving. For more heat, pierce it once or add a small amount of finely chopped pepper with the garlic. Add hot pepper gradually: once its heat has spread through the coconut sauce, it is difficult to reduce.

Storage and Reheating

Transfer leftover fish and sauce to a shallow covered container and refrigerate within 2 hours of cooking. Store it for up to 3 days for best quality, and no more than 3–4 days refrigerated. Fish is delicate, so it may soften as it sits in the sauce. Freeze leftovers in a freezer-safe container for up to 2 months for better quality; thaw them overnight in the refrigerator rather than on the counter.

Reheat only the portion you plan to eat in a covered saucepan over low heat, adding a splash of water if the coconut sauce has thickened. Turn the fish carefully and heat until the center reaches 165°F (74°C), the USDA FSIS safe temperature for reheated leftovers. A microwave also works: use a covered microwave-safe dish, heat in short intervals, and check the center temperature. Repeated reheating can dry out the fish, so avoid warming the same batch more than once.

Frequently Asked Questions

Can I use canned coconut milk?

Yes. Use unsweetened canned coconut milk, not sweetened coconut cream or a carton beverage intended for drinking. Shake the can before opening, or stir the contents if the thick cream has separated from the liquid. Full-fat coconut milk gives the sauce a richer body; light coconut milk makes a thinner, less creamy sauce.

Is Jamaican curry fish very spicy?

It can be, but the heat is adjustable. The curry powder contributes warmth, while the Scotch bonnet is the main source of fresh chile heat. Leave the pepper whole for a more restrained flavor, remove it before serving, and use a mild curry powder if you prefer. For more heat, pierce the pepper or add a small chopped piece.

Can I make the sauce ahead?

Yes. Prepare the sauce through the 8-minute simmer, cool it promptly, and refrigerate it in a covered container for up to 2 days. Reheat it gently until simmering, then add the freshly seasoned fish and cook until it reaches 145°F (63°C) in the thickest part. Cooking the fish just before serving gives it a better texture than storing it in the sauce for an extra day.

How can I tell when the fish is done?

Use a food thermometer in the thickest piece and cook it to 145°F (63°C). The flesh should also look opaque and separate easily into flakes, but appearance alone is less reliable than checking the temperature. Thin pieces may finish before thicker ones, so remove cooked pieces carefully and return them to the warm sauce once the remaining fish is done.

Can I use frozen fish without thawing it?

Thawing first is the better choice for this recipe. Frozen pieces release extra water into the pan, cool the sauce, and cook unevenly, making it harder to keep the coconut mixture at a gentle simmer. Thaw fish overnight in the refrigerator, drain away any liquid, and pat it dry before seasoning. This helps the curry sauce stay flavorful and cling to the fish.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).