Dempsey curry fish head is a Singapore-style curry of meaty fish head simmered with coconut milk, curry spices, and vegetables until the sauce is fragrant and the fish is tender. Versions vary across Singapore and Malaysia; this home-style recipe balances the richness with tamarind, tomato, and lime, and is best served with rice to catch every spoonful of sauce.
Ingredients
- 1 cleaned, split red snapper or grouper head, about 2½–3 lb (1.1–1.4 kg), with the collar attached if available
- 1 tsp fine salt (6 g), for seasoning the fish
- 3 tbsp neutral oil (45 ml), such as canola or sunflower oil
- 1 cup thinly sliced shallots (150 g)
- 5 garlic cloves, peeled (15 g)
- 2 tbsp chopped fresh ginger (20 g)
- 1 stalk lemongrass, tender inner portion chopped (about 20 g)
- ¼ cup fish curry powder (30 g), or the substitution described in Tips
- 1 tsp hot chili powder (2 g), less or more to taste
- ¼ cup water (60 ml), for loosening the spice paste
- 12 fresh or frozen curry leaves (about 5 g)
- 1 can coconut milk, 13.5 oz (400 ml), well shaken
- 2 cups unsalted fish or vegetable stock (475 ml)
- 1½ tbsp tamarind concentrate (22 ml)
- 1 small eggplant, cut into 1-inch pieces, about 10 oz (280 g)
- 6 oz okra, trimmed (170 g), about 1½ cups
- 2 medium tomatoes, cut into wedges (about 300 g)
- 2 small green chilies, slit lengthwise (about 20 g), optional
- 1 tbsp fish sauce (15 ml)
- 1 tsp brown sugar (4 g)
- ¼ tsp fine salt (1.5 g), plus more to taste
- ½ cup loosely packed cilantro leaves (15 g), for serving
- 1 lime, cut into wedges (about 2 tbsp or 30 ml juice)
Instructions
- Prepare the fish and vegetables. Ask the fishmonger to scale, clean, and split the head lengthwise, then cut it into pieces that will fit your pot. Pat the fish dry with paper towels; there is no need to rinse it. Season all over with 1 teaspoon salt and set it on a clean tray while you prepare the vegetables. Cut the eggplant, okra, and tomatoes, and keep the raw-fish tray and utensils separate from ready-to-eat ingredients.
- Make the spice paste. Put the shallots, garlic, ginger, lemongrass, curry powder, chili powder, and ¼ cup water in a blender or small food processor. Blend to a thick, mostly smooth paste, stopping to scrape the sides as needed. A little texture is fine. If the blades cannot catch the ingredients, add water 1 tablespoon at a time; avoid making the paste runny, because it will take longer to fry and can splash in the pan.
- Fry the aromatics. Heat the oil in a wide, heavy pot or deep sauté pan over medium heat. Add the curry leaves and stir for about 30 seconds, until fragrant. Add the spice paste and cook for 7½ minutes, stirring frequently and scraping the bottom so it does not scorch. The paste should darken slightly, smell toasted and aromatic, and begin to look glossy. If it sticks before it is fragrant, lower the heat and stir in a teaspoon of water rather than turning the heat up.
- Build the curry sauce. Pour in the coconut milk and stock, then stir in the tamarind concentrate, fish sauce, brown sugar, and ¼ teaspoon salt. Bring the sauce just to a gentle simmer, stirring to dissolve the fried paste into the liquid. Simmer uncovered for 10 minutes. Keep it at a steady, quiet bubble rather than a hard boil; vigorous boiling can make a coconut-based sauce look separated and reduces it before the vegetables are tender.
- Cook the vegetables. Add the eggplant and simmer for 7 minutes, turning the pieces once so they cook evenly. Add the okra, tomato wedges, and optional green chilies. Cook for 3 more minutes. The eggplant should be starting to soften but still hold its shape, and the okra should be bright and just beginning to turn tender. Taste the sauce now; adjust with a pinch of salt or a little more tamarind if it tastes flat or overly rich.
- Simmer the fish. Nestle the fish-head pieces into the sauce, meaty side down where possible, and spoon curry over the exposed surfaces. Cover the pot and simmer gently for about 15 minutes, turning the pieces carefully once if they are not submerged. Avoid stirring, which can break the fish apart. Check the thickest meaty portion with a food thermometer, keeping the probe away from bone. The USDA FSIS safe minimum temperature for fish is 145°F (63°C); if a large piece has not reached it, continue simmering and check again after a few minutes. Properly cooked flesh should also look opaque and separate readily from the bone.
- Finish and serve. Turn off the heat, taste the sauce, and add more salt or a squeeze of lime if needed. Scatter cilantro over the top and serve the curry hot, with lime wedges at the table. Lift the fish pieces gently with a wide spatula or serving spoon so the tender cheeks and collar meat stay attached as much as possible.
Tips
- Choose a substantial head. Red snapper and grouper are good choices because their heads have meaty cheeks and collars, and their flavor stands up to the curry. A fishmonger can split the head safely; ask for the gills removed and the pieces cut to fit your pot. If only smaller heads are available, use two and begin checking doneness early, since small pieces cook faster.
- Adjust for hard-to-find ingredients. Fish curry powder is sold at many South Asian or Southeast Asian grocers. If you cannot find it, use 3 tablespoons (24 g) regular curry powder plus 1 tablespoon (6 g) ground coriander and a pinch of extra chili; the flavor will be less specifically fish-curry-like but still work well. Curry leaves give a distinct citrusy, savory aroma. If unavailable, use 1 teaspoon finely grated lime zest, understanding that it is a different, brighter flavor. Tamarind concentrate can be replaced with 1½ tablespoons (22 ml) lime juice; add it near the end and taste, since lime is sharper and less rounded.
- Keep the sauce gentle. Once coconut milk is in the pot, avoid a rolling boil. Use a wide pan so the fish can sit in one layer, and spoon sauce over pieces instead of stirring them. If the sauce gets thicker than you like, loosen it with stock or water a few tablespoons at a time.
- Control the heat and salt. Curry powders and fish sauces vary in strength and saltiness. Start with the listed chili and salt, then adjust after the sauce has simmered. For a milder pot, omit the chili powder and green chilies; for more heat, serve sliced chilies on the side so guests can season their own portions.
Serving Suggestions
Serve the curry in a warm, deep platter or leave it in the pot for a casual meal. Steamed jasmine rice is a natural partner: its soft, separate grains absorb the coconut-tamarind sauce without competing with the fish. Plain basmati rice also works, while roti, paratha, or another soft flatbread is useful for scooping up sauce. Put lime wedges and extra cilantro on the table so each person can brighten their serving to taste.
Because the fish head has bones and different textures, offer a serving spoon and small bowls for bones, and let diners know to eat carefully around the gill plate and backbone. A simple side of sliced cucumber or lightly dressed greens adds a cool, crisp contrast. The curry is rich enough to be the main dish, so keep side dishes uncomplicated and avoid adding another heavily spiced entrée.
Variations
Use fish steaks instead of a head: If a cleaned fish head is difficult to source, substitute 2 lb (900 g) bone-in snapper or grouper steaks. They have less of the gelatin-rich texture and cheek meat that define fish-head curry, but cook in the same sauce. Add the steaks for the final 10–12 minutes, checking each thick piece for 145°F (63°C).
Make it more vegetable-forward: Replace some of the eggplant with 1 cup (150 g) chunks of potato or 1 cup (120 g) sliced bell pepper. Potato needs a longer simmer, so add it with the eggplant and make sure it is nearly tender before the fish goes in. Bell pepper cooks quickly, so add it with the tomato. You can also add tofu, but it will change the dish from a traditional fish-centered curry and should be warmed through in the sauce.
Choose a richer or lighter finish: For a thicker, richer curry, use 1½ cups (355 ml) stock and simmer the sauce uncovered for a few extra minutes before adding the fish. For a lighter-tasting sauce, use light coconut milk, though it will be less creamy and may need a little extra simmering to develop body. Do not reduce the fish-cooking time to compensate for a thinner sauce; cook the fish to its safe temperature.
Storage and Reheating
Refrigerate leftovers within 2 hours of cooking, transferring them to shallow, covered containers so they cool promptly. Store the fish submerged in sauce where possible and use within 3–4 days. The sauce may firm up in the refrigerator because of the coconut milk; that is normal. For the best texture, keep fish pieces intact rather than flaking them into the sauce before storing.
To reheat, warm the curry in a covered saucepan over low to medium-low heat, turning the fish carefully and adding a splash of water or stock if the sauce is too thick. Heat leftovers to 165°F (74°C), checked with a food thermometer. Avoid repeated reheating, which can make the fish dry and fragile. You can freeze the curry in a sealed freezer-safe container for up to 2 months for best texture; thaw it overnight in the refrigerator and reheat to 165°F (74°C). Coconut-based sauce may separate slightly after freezing, but gentle stirring while it warms usually brings it back together.
Frequently Asked Questions
Which fish head is best for curry?
Red snapper and grouper are reliable choices because they have a good amount of firm meat around the cheeks and collar and hold together during simmering. Choose a head that has been cleaned and scaled, with the gills removed. Ask the fishmonger to split it and cut it into pieces for your pot; a whole uncut head can be awkward to handle and cook evenly at home.
Can I make this curry without coconut milk?
Yes, but the result will be less creamy and will taste different from this coconut-based version. Replace the coconut milk with 1¾ cups (415 ml) additional stock and add 2 tablespoons (30 ml) of neutral oil or a small spoonful of butter for body. Simmer gently and taste for balance, since the tamarind may seem more pronounced without the richness of coconut milk.
Why did my coconut curry sauce separate?
A sauce can look separated if it boils hard, reduces too quickly, or is made with a coconut milk product that separates in the can. Shake the can well before measuring, fry the spice paste thoroughly, and keep the sauce at a gentle simmer. If small beads of oil appear, lower the heat and stir in a few tablespoons of warm stock; the appearance may improve, though the curry will still taste good.
Can I prepare the curry sauce ahead?
Yes. Make the sauce through the vegetable-cooking stage, cool it promptly, and refrigerate it in a covered container for up to 3 days. When ready to eat, bring the sauce to a gentle simmer, then add the raw fish and cook it as directed to 145°F (63°C). Cooking the fish only at serving time helps preserve its tender texture and avoids storing it in the sauce longer than necessary.
How can I tell when the fish head is cooked?
Use a food thermometer in the thickest meaty part, taking care not to touch bone; fish is safe at 145°F (63°C). The flesh should be opaque and should separate easily from the bone, but those visual signs are not a substitute for checking temperature when you can. Fish-head pieces vary in size, so use the thermometer rather than relying only on the 15-minute estimate.
Related
- Sri Lankan Black Pork Curry: Deep, Toasted Spice
- Belfast Chinese Curry Sauce Recipe for Chips and Rice
- Ayam Malaysian Rendang Curry Paste Recipe
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).