Authentic Singapore Fish Head Curry
A beloved Singapore dish featuring tender fish head simmered in rich coconut curry with vegetables. This iconic recipe balances spicy, sour, and creamy flavors perfectly.
By Janelle
Updated: March 18, 2026
Why I Love This Recipe
Fish Head Curry is one of Singapore's most iconic dishes, created in the 1950s by Indian chef M.J. Gomez at his restaurant. This unique fusion combines South Indian curry techniques with Chinese ingredients like tofu and vegetables, creating something distinctly Singaporean. The dish typically uses a red snapper head, which provides rich, gelatinous flavors that infuse the entire curry. What makes this curry special is its complex layering of flavors - the sweetness of coconut milk, the heat of chilies, the tang of tamarind, and the aromatic blend of spices. The fish head not only adds incredible depth but also makes for an impressive presentation that's perfect for sharing with family and friends.
- •Rich umami flavors – The fish head releases gelatin and oils that create an incredibly savory, restaurant-quality broth
- •Perfect for sharing – This impressive dish brings people together around the table for a communal dining experience
- •Balanced nutrition – Packed with protein, healthy fats from coconut milk, and plenty of vegetables
- •Customizable spice level – Easily adjust the heat to suit your family's preferences
- •Authentic Singapore cuisine – Master this iconic local dish that represents the island's multicultural food heritage
Ingredients You'll Need
Here's what you'll need – nothing too fancy, just good ingredients that work together beautifully.
- 1 whole red snapper head (about 800g, cleaned and halved)
- 1 teaspoon salt (for fish)
- 1/2 teaspoon turmeric powder (for fish)
- 3 tablespoons vegetable oil
- 400 ml coconut milk (thick)
- 300 ml water
- 200 g firm tofu (cut into triangles)
- 150 g long beans (cut into 5cm pieces)
- 100 g okra (halved lengthwise)
- 2 medium tomatoes (cut into wedges)
- 1 small eggplant (cut into chunks)
- 8 pieces dried chilies (soaked and deseeded)
- 6 pieces shallots (peeled)
- 4 cloves garlic
- 3 cm ginger (peeled)
- 2 stalks lemongrass (tender parts only)
- 4 pieces candlenuts
- 2 sprigs curry leaves
- 2 tablespoons tamarind paste
- 2 tablespoons palm sugar
- 2 tablespoons fish sauce
- 2 tablespoons curry powder (fish curry blend)
Step-by-Step Instructions
- 1
Clean the fish head thoroughly under cold running water, removing any scales and blood. Pat dry with paper towels and rub with salt and turmeric powder. Let it marinate for 15 minutes while you prepare other ingredients.
~5 min
Tip: Make sure to clean the gills thoroughly as they can make the curry bitter - 2
Blend all spice paste ingredients with a little water until smooth. The paste should be fine and uniform without any large chunks. If using a blender, add water gradually to help the blending process.
~8 min
Tip: Soak dried chilies in warm water for 10 minutes before blending for easier processing - 3
Heat oil in a large wok or heavy-bottomed pot over medium-high heat. Carefully add the fish head pieces and fry for 3-4 minutes on each side until lightly golden. Remove and set aside on a plate.
~8 min
Tip: Don't overcrowd the pan - fry in batches if necessary - 4
In the same oil, fry the tofu triangles until golden brown on both sides. Remove and drain on paper towels. The oil will now be infused with fish and tofu flavors.
~5 min
Tip: Pat tofu dry before frying to prevent oil splattering - 5
Add the spice paste to the remaining oil and fry over medium heat for 8-10 minutes, stirring constantly. The paste should become fragrant and the oil should separate and rise to the surface.
~10 min
Tip: If the paste starts to stick, lower the heat and add a splash of water - 6
Add curry powder and curry leaves, stir for 1 minute until aromatic. Pour in thick coconut milk gradually while stirring to prevent curdling. Bring to a gentle simmer.
~3 min
Tip: Always stir when adding coconut milk to prevent it from separating - 7
Add the fried fish head back to the pot along with water, tamarind paste, palm sugar, and fish sauce. Gently stir and bring to a boil, then reduce heat to maintain a gentle simmer.
~5 min
Tip: Handle the fish head gently to prevent it from breaking apart - 8
Add the harder vegetables first - eggplant and long beans. Simmer for 10 minutes, allowing the flavors to penetrate the vegetables and the curry to thicken slightly.
~10 min
Tip: Add vegetables in order of cooking time to ensure even doneness - 9
Add okra and tomato wedges, and continue simmering for another 8-10 minutes. The vegetables should be tender but still hold their shape, and the curry should have a rich, coating consistency.
~10 min
Tip: Don't overcook okra as it becomes slimy when overdone - 10
Gently add the fried tofu back to the curry and simmer for 2-3 minutes to heat through. Taste and adjust seasoning with more fish sauce, palm sugar, or tamarind paste as needed.
~3 min
Tip: Add tofu last to prevent it from breaking apart during long cooking - 11
Remove from heat and let the curry rest for 5 minutes to allow flavors to meld. The curry should be rich, aromatic, and have a beautiful orange-red color from the spices and coconut milk.
~5 min
Tip: Resting time allows the flavors to marry and the curry to thicken naturally - 12
Serve hot with steamed rice, garnished with fresh curry leaves if desired. Present the fish head prominently as it's the star of the dish. Provide spoons and forks for easy sharing.
~2 min
Tip: Serve immediately while hot for the best flavor and texture
How Do I Know It's Ready?
The fish head is done when the flesh easily flakes away from the bone and the eyes turn opaque white. The curry should coat a spoon lightly and have a rich, creamy consistency. Vegetables should be tender but still maintain their shape and bright colors.
Frequently Asked Questions
While you can use fish fillets, the dish won't have the same authentic flavor and richness. Fish heads contain collagen and natural oils that create the signature taste and texture of this curry. If using fillets, choose thick, firm pieces and add them near the end of cooking to prevent overcooking.
Final Thoughts
I hope you enjoy making this Authentic Singapore Fish Head Curry as much as I do! It's a wonderful dish that's sure to become a favorite in your kitchen. If you try this recipe, I'd love to hear how it turned out – feel free to share your experience and any variations you tried!