Kam Long Curry Fish Head: Singapore-Style Recipe

Updated November 4, 2026

Total time
1 hr 10 min
prep 30 min · cook 40 min
Serves
4
portions as written
Safe temperature (USDA)
145°F / 63°C
check the thickest piece

Jump to recipe

Kam Long Curry Fish Head: Singapore-Style Recipe

Kam Long curry fish head is a rich, gently tangy curry associated with Johor Bahru, Malaysia, and Singapore-style fish-head curry traditions. A large fish head simmers with coconut milk, curry spices, tamarind, and vegetables, making a generous one-pot meal with broth that is especially good spooned over rice.

Ingredients

  • 1 large red snapper or other firm white-fish head, split into manageable pieces, about 2½ lb (1.1 kg); ask the fishmonger to clean and split it
  • 3 tbsp (45 ml) neutral oil, such as canola or sunflower oil
  • 1½ cups (225 g) finely chopped yellow onion or shallot
  • 2 tbsp (30 g) minced fresh ginger
  • 1 tbsp (15 g) minced garlic, about 3 cloves
  • 2 tbsp (30 g) minced lemongrass, tender inner stalk only
  • 12 fresh curry leaves (about 2 g), if available; they are sold at some Asian markets, and 1 bay leaf is a useful but less citrusy substitute
  • ¼ cup (30 g) Malaysian or Singapore-style curry powder
  • 1 tsp (2 g) ground turmeric
  • ½ tsp (1 g) cayenne or ground red chili, or more to taste
  • 2 cups (475 ml) water or unsalted fish stock, plus up to ½ cup (120 ml) more if needed
  • 1 can (13½ oz / 400 ml) full-fat coconut milk, well shaken
  • 1 tbsp (15 g) tamarind concentrate mixed with 2 tbsp (30 ml) warm water; if unavailable, use 1½ tbsp (22 ml) lime juice, which tastes brighter and less rounded
  • 1 tbsp (15 ml) fish sauce, plus more to taste
  • 1 tsp (4 g) granulated sugar
  • 8 oz (225 g) firm tofu puffs, halved; or use 8 oz (225 g) firm tofu cut into cubes, which will be less airy and absorb less curry
  • 2 cups (180 g) green cabbage, cut into broad wedges
  • 6 okra pods (about 120 g), trimmed and halved lengthwise
  • 2 medium tomatoes (about 250 g), cut into wedges
  • ¼ tsp (1 g) fine salt, or to taste
  • 2 tbsp (8 g) chopped cilantro leaves, for serving

Instructions

  1. Prepare the fish and vegetables. If the fishmonger has not already done so, have the head split through the center and cut into pieces that will fit comfortably in your pot. Pat the pieces dry and check for any loose scales or small bone fragments. Cut the cabbage, okra, and tomatoes, and measure out the spices before you start cooking. Keep the fish chilled while you prepare the curry; do not leave raw seafood at room temperature while working through the recipe.
  2. Cook the aromatics and curry spices, 6 minutes. Set a wide, heavy pot or Dutch oven over medium heat and add the oil. Stir in the onion and cook for about 3 minutes, until softened but not browned. Add ginger, garlic, lemongrass, and curry leaves and cook for 1 minute, stirring so the garlic does not scorch. Add the curry powder, turmeric, and cayenne. Stir continuously for 1 to 2 minutes, until fragrant. If the spices begin sticking before they smell toasted, add a tablespoon of water rather than letting them burn.
  3. Build the curry broth, 10 minutes. Pour in the water or fish stock gradually, scraping the bottom of the pot to loosen the cooked-on spices. Stir in the coconut milk, tamarind mixture, fish sauce, and sugar. Bring the curry just to a gentle simmer, then lower the heat and simmer uncovered for 10 minutes, stirring once or twice. Avoid a hard boil: vigorous bubbling can make coconut milk look separated and may reduce the broth too quickly.
  4. Soften the vegetables and tofu, 5 minutes. Add the tofu puffs, cabbage, okra, and tomato wedges. Turn the cabbage gently in the broth so it begins to soften and the tofu puffs take on some curry. Simmer for 5 minutes. If the liquid barely reaches the vegetables, add a little of the reserved water; the curry should be brothy enough to spoon over rice, not so thin that it tastes diluted.
  5. Simmer the fish, about 17 minutes. Nestle the fish-head pieces into the curry, arranging thicker pieces toward the bottom and spooning broth over the exposed surfaces. Cover the pot and keep the curry at a gentle simmer for 12 minutes. Uncover carefully, turn or baste the pieces if they can be moved without breaking, then cook for about 5 minutes more. Fish thickness and the size of the cut pieces affect the timing, so check the thickest edible flesh with a food thermometer, avoiding bone. USDA FSIS gives fish a safe minimum internal temperature of 145°F (63°C); continue simmering and check again if a piece has not reached it. Properly cooked flesh should also look opaque and separate readily, but the thermometer is the reliable safety check.
  6. Finish and serve, 2 minutes. Taste the broth and adjust with salt, fish sauce, or a little extra tamarind, adding small amounts so the curry stays balanced. If it is more intense than you like, loosen it with up to ½ cup (120 ml) hot water. Scatter with cilantro and bring the pot to the table carefully, since fish bones may be exposed and the curry stays hot. Serve promptly with rice.

Tips

  • Choose a fish head with plenty of cheek and collar meat. Red snapper is a good option because its firm flesh holds together in curry, but grouper or another firm white fish can work. Ask for a cleaned, split head and tell the fishmonger how large your pot is. If a head is unavailable, use about 2 lb (900 g) of bone-in fish steaks; reduce the simmering time as needed and check each piece for 145°F (63°C).
  • Keep the heat gentle once coconut milk goes in. A steady simmer cooks the fish without roughing it up and helps keep the broth smooth. Stir the curry base before adding the fish, but avoid repeatedly stirring once delicate fish pieces are in the pot. Lift them with a wide spatula if they need repositioning.
  • Adjust the sourness in small increments. Tamarind varies in strength by brand and form. Taste the broth before adding the fish, then correct it at the end. Lime juice can replace tamarind, but its sharper, fresher taste will make the curry less earthy and mellow.
  • Use curry powder meant for the style you want. Malaysian or Singapore-style blends often include a mix of spices and may already contain chili. If your powder is very hot, leave out the cayenne at first. Curry leaves add a distinctive fragrant note; if you cannot find them, omit them or use a bay leaf, knowing the result will not taste exactly the same.

Serving Suggestions

Serve the curry hot in a wide bowl, with the fish pieces and vegetables covered in plenty of broth. Plain steamed jasmine rice is the easiest match: its mild flavor lets the tamarind, coconut, and spices come through, and it catches the curry as it is spooned over. For a heartier table, offer rice alongside roti or another soft flatbread for dipping. A small plate of sliced cucumber or blanched greens can add a cool, crisp contrast, while extra lime wedges and chopped cilantro let diners adjust their own portions. Fish heads contain bones of different sizes, so remind everyone to eat carefully and provide a bowl for discarded bones. This is a substantial main dish for four; if serving several other dishes, it can stretch to five or six smaller portions.

Variations

Make it less rich: Replace up to half of the coconut milk with water or unsalted stock. The broth will be lighter and less creamy, so taste again at the end and adjust the salt and tamarind. Avoid replacing all of the coconut milk if you want the rounded texture associated with this version.

Make it hotter: Add sliced fresh red chili with the aromatics, or serve sliced chili on the side. Chili strength varies considerably, so adding it at the table is a good choice when guests have different preferences. Do not increase the curry powder automatically; some blends are already quite spicy.

Use fish steaks instead: Bone-in steaks of snapper, grouper, or another firm fish make the dish easier to portion. Add them after the vegetables have simmered for a few minutes and cook only until they reach 145°F (63°C), checking the thickest part. Thin fillets are less suitable because they can break apart in the broth.

Change the vegetables: Eggplant, long beans, or chunks of bell pepper can stand in for some of the cabbage or okra. Add firm vegetables earlier so they have time to soften, and add tender ones later. Keep the total vegetable quantity close to the recipe amount so there is enough broth to coat everything.

Storage and Reheating

For food safety, refrigerate the curry within 2 hours of cooking. If the pot is large, divide the curry into shallow containers so it cools more quickly; handle fish carefully because cooked pieces can flake apart. Store covered in the refrigerator for 3 to 4 days. The fish may become more delicate after storage, and the broth can thicken as it chills, so keep the pieces as intact as possible when packing them.

Reheat only the portion you plan to eat. Warm it gently in a covered saucepan over low to medium-low heat, turning the fish as little as possible. Add a splash of water if the coconut broth has thickened, and heat until the leftovers reach 165°F (74°C), checking with a food thermometer. Avoid a vigorous boil, which can break up the fish and make the coconut broth look less smooth. A microwave also works: cover the bowl loosely, heat in short intervals, and check several spots for 165°F (74°C). For best texture, eat reheated fish curry promptly rather than cooling and reheating it repeatedly.

Frequently Asked Questions

What kind of fish head works best?

Red snapper is a dependable choice because the head has flavorful cheeks and collar meat, and its flesh holds up well in a simmered curry. Grouper and other firm white fish are also suitable. Choose a head that has been kept properly chilled, and ask the fishmonger to clean, split, and cut it to fit your pot. Fish heads vary in size, so the thermometer check matters more than the exact cooking time.

Can I make Kam Long curry fish head with frozen fish?

Yes. Thaw the fish head in the refrigerator overnight, still wrapped or in a leakproof container, then drain and pat it dry before cooking. Do not thaw seafood on the counter. If you cook it from frozen, the curry will cool down and the cooking time will be harder to judge; thawing first makes it easier to season the broth and check the fish safely.

Can I prepare the curry in advance?

You can make the spiced coconut broth and cut the vegetables several hours ahead, keeping them covered and refrigerated separately. For the best fish texture, cook the fish close to serving time. If the full curry is already cooked, refrigerate it promptly and reheat the leftovers to 165°F (74°C). The fish may be softer on the second day, but gentle reheating helps it stay in larger pieces.

Why did my coconut curry look split or oily?

Coconut milk can separate when it is boiled hard, held at a rolling boil, or reduced too much. Use moderate heat and bring the broth only to a gentle simmer. If a little oil appears on top, the curry is still usable; lower the heat and stir gently to bring the broth together as much as possible. Adding a little warm water can also make an overly concentrated curry easier to serve.

How can I tell when fish head is cooked if it is awkward to check?

Insert an instant-read thermometer into the thickest edible flesh, keeping the tip clear of bone, and check more than one substantial piece if the head has uneven sections. USDA FSIS recommends 145°F (63°C) for fish. If the thermometer reading is below that point, simmer for another couple of minutes and check again. Opaque flesh that separates easily is a useful visual clue, but it does not replace the temperature check.

Is this recipe the same as every restaurant or family version?

No. Curry fish head has regional and household variations in its spice blend, souring ingredient, heat level, and vegetables. Kam Long is associated with Johor Bahru, while related fish-head curries are also familiar in Singapore and across the region. This recipe follows a coconut-and-tamarind approach, but it is not meant to claim that there is only one fixed version.

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).