Enjoyed this recipe? Add us to your Google Search Preferred Sources:
Penang asam laksa is a sour, spicy fish noodle soup made with mackerel, tamarind, asam gelugur, daun kesum and bunga kantan.
Unlike the coconut-based laksa many people know, this one is sharp, savoury and intensely aromatic, with thick rice noodles and a pile of fresh pineapple, cucumber, onion, mint and finely sliced torch ginger on top.
Estimated reading time: 9 minutes

What Is Asam Laksa?
Asam laksa, also known as Penang laksa, is one of Penang’s best-known noodle dishes.
Its broth is based on fish rather than coconut milk, with tamarind and asam gelugur providing the characteristic sourness.
The fish is usually mackerel, which is cooked first to make the stock before the flesh is removed from the bones and added back to the broth.
Chillies, shallots, lemongrass, galangal and belacan form the spice (rempah), while daun kesum and bunga kantan give the soup its distinctive fragrance.
The finished laksa is served with thick rice noodles and plenty of fresh toppings.
It is not a shy bowl of noodles.
Penang Laksa vs Curry Laksa
The two share a name, but little else.
Curry laksa is usually rich with coconut milk and commonly served with ingredients such as prawns, tofu puffs, chicken, fish cake and beansprouts.
Penang asam laksa has no coconut milk.
Instead, you get a fish and tamarind broth that is sour, spicy and much lighter, although certainly not lacking in flavour.
The toppings are different too: pineapple, cucumber, onion, mint, lettuce and bunga kantan are typical here.
So if you come to asam laksa expecting curry laksa, the first spoonful may be something of a surprise.

What Does Asam Laksa Taste Like?
Sourness comes first, but it shouldn’t dominate everything else.
You should also get:
- the richness of the mackerel
- heat from the chillies
- savouriness from belacan and petis udang
- fragrance from daun kesum, lemongrass and bunga kantan
- sweetness from the pineapple and a little sugar
- crunch and freshness from the raw toppings
The broth itself should have plenty of depth before the noodles and garnishes are added.
I use 750 ml (3 cups) water here. Any more and the broth starts to lose the depth you want from the mackerel.
Ingredients
A few ingredients are worth knowing about before you start:
Laksa noodles: Fresh Penang laksa noodles are thick, round rice noodles and may also be sold as lai fun or lai fen. If you can’t find them, thick dried rice noodles work well. Fresh udon is another useful UK substitute; it isn’t traditional, but its thickness works surprisingly well with the broth.
My pick? Any kind of rice noodles, whether you can get the thick kind, or bee hoon.
I’ll be posting homemade laksa noodles soon, so look out for it.
Mackerel: Ikan kembung, or Indian mackerel, is ideal. In the UK, Atlantic mackerel is much easier to find and works very well, although it is richer and oilier. If you have an Asian shop near you, of whatever inclination, you’ll probably find Indian mackerel in the freezer.

Tamarind: Whether you use tamarind pulp or shop bought concentrate, it doesn’t really matter as long as the shop bought version doesn’t contain ingredients that will alter the flavour, like vinegar or citrus.
Click here to read more and how to extract tamarind juice from pulp.
Asam gelugur: Also known as asam keping and spelt asam gelugor, these dried slices provide a cleaner, sharper acidity than tamarind. Using both gives the broth a more complex sourness. Skip if you can’t get it, and add a little more tamarind, to your taste.

Daun kesum: Also sold as laksa leaf, Vietnamese coriander, Vietnamese mint or rau răm. It has a peppery, citrusy flavour and there really isn’t a substitute. Frozen daun kesum is preferable to replacing it with an unrelated herb.
You can read more about them and how to grow them here.
Bunga kantan: Also known as torch ginger flower. Half is cooked in the broth and the other half is sliced very finely for the topping. The cooked flower perfumes the broth while the raw flower gives a fresher, more floral flavour.
You can read more about it here.
Belacan: Fermented shrimp paste that goes into the spice paste (rempah). Toast it briefly first to mellow the raw smell and deepen the flavour.
You can read more about it here.
Petis udang or hae ko: A thick, dark, sweet-savoury prawn paste served with the finished laksa. It is not the same as belacan. I’m using homemade petis udang here, but bottled petis udang or hae ko is perfectly fine.
Click here to read more and for the homemade recipe.

How to Make Asam Laksa
There are a few stages, but none is difficult:
- Poach the mackerel and make the fish stock.
- Remove the skin and bones and flake the fish.
- Blend and fry the spice paste.
- Add the stock, tamarind, fish and aromatics.
- Simmer until the broth is rich and concentrated.
- Cook the noodles and prepare the toppings.
- Assemble everything just before serving.
The fish stock can be prepared a day ahead.

How to Serve Asam Laksa
See how we serve and top the asam laksa in the video below.
Asam laksa is best served as soon as the noodles and broth are combined and topped with all the accompaniments.
I like to serve it with chopsticks for the noodles and a spoon for the broth and toppings.
Keep extra petis udang and all the toppings on the table so everyone can add more to taste.
Storage
The fish stock can be made a day ahead, cooled promptly and refrigerated.
The finished broth can also be made ahead. Cool it quickly, cover and refrigerate, and use within 2 days. In fact, the broth is actually better the next day, once all those flavours have had time to settle into each other.
Keep the noodles, fresh toppings and petis udang separately.
The broth freezes well too. Cool it promptly, portion and freeze for up to 3 months for best quality.
Defrost overnight in the fridge and reheat until steaming hot throughout.

Variations and Substitutions
- Atlantic mackerel: A very good substitute for ikan kembung and much easier to find in the UK. It is slightly richer and oilier.
- No asam gelugur: Use a little more tamarind to taste. The flavour won’t be exactly the same, but the broth will still work.
- No daun kesum: Frozen daun kesum is your best alternative. There isn’t a true substitute.
- No bunga kantan: The laksa can still be made without it, but it will lose one of its most characteristic aromas.
- Udon noodles: Not traditional, but very useful when fresh laksa noodles or lai fun are difficult to find.
FAQs
Yes. When people refer to Penang laksa, they generally mean Penang asam laksa, the sour fish-based laksa made with tamarind.
No. That is one of the main differences between Penang asam laksa and curry laksa.
It can be.
For a milder version, remove the seeds from the dried chillies and use only one fresh chilli.
No.
Belacan is the firm fermented shrimp paste cooked into the spice paste.
Petis udang or hae ko is dark, sticky and sweet-savoury and is served with the finished laksa. Click here to read more.
Yes.
The fish stock can be made the day before, and the finished broth can also be prepared ahead.
Keep the noodles and fresh garnishes separate and add them only when serving.

Final Word
Penang asam laksa is one of those dishes where the toppings are every bit as important as the broth.
The mackerel gives it richness, tamarind and asam gelugur bring the sourness, while daun kesum and bunga kantan give it that unmistakable fragrance.
Then pineapple, cucumber, onion, mint and petis udang change things again with every mouthful.
It is quite a lot going on in one bowl. Which is kind of the point.
Now I know it looks like a lot of work, but for those of us who can’t get it where we are, it’s well worth the effort.
Any questions, just drop me a comment.
If you make it, do leave me a comment and a rating below. And if you’ve got any questions, just ask. Find me on Instagram @azlinbloor to connect and share your pictures.
More soon,
Lin xx

Penang Asam Laksa Recipe
Ingredients
Fish and Stock
- 600 g whole mackerel gutted and cleaned
- 750 ml water
- 3 slices dried asam gelugur/asam keping
- 60 g tamarind pulp or 3 Tbsp shop bought paste
- 200 ml hot water for the tamarind
Spice Paste
- 10 dried red chillies
- 250 ml hot water for the dried chillies
- 1 fresh long red chilli
- 170 g shallots
- 1 lemongrass stalk
- 30 g fresh galangal (or ½ Tbsp paste)
- 10 g shrimp paste
- 3 Tbsp neutral cooking oil (vegetable or peanut oil)
- 45 ml water for blending
For the Broth
- 2 large stalks daun kesum (laksa leaves)
- 1 slice asam gelugur
- 1 bunga kantan
- 1 lemongrass stalk bruised
- 1 Tbsp sugar plus more if necessary
- 1 tsp salt plus more if necessary
Noodles – Choose one:
- 750 g fresh laksa noodles/lai fun/lai fen
- 450 g dried Pad Thai noodles
- 400 g dried bee hoon
- 600 g udon noodles
Toppings
- 200 g fresh pineapple or canned pineapple in juice
- ½ large cucumber
- 1 small red onion
- 2 handfuls iceberg or round lettuce
- fresh mint leaves
- 1 long red chilli
- ½ bunga kantan reserved from above and very finely sliced
To Serve
- 3 Tbsp petis udang/hae ko
- 2-3 Tbsp warm water if petis is too thick
Instructions
Prep Work
- Put the kettle on for the dried chillies and tamarind.
- Tamarind. If using pulp, place in a small bowl and cover with about 200ml hot water from the kettle. Leave to soak until needed, no need to cover.If using shop bought paste, mix it in with the water to add to the broth later.60 g tamarind pulp, 200 ml hot water
- Squeeze and work the tamarind through the water with your fingers. Discard the seeds and fibres and set the tamarind water aside.
- Bunga Kantan. Remove any particularly tough outer petals from the bunga kantan. Cut it in half lengthways.1 bunga kantan
- Roughly slice one half for the broth and refrigerate the remaining half for the topping.
Make the Fish Stock
- Place the water and three slices of asam gelugur in a saucepan and bring to the boil.750 ml water, 3 slices dried asam gelugur/asam keping
- Carefully lower in the whole mackerel.Return to a gentle simmer and cook for 10-12 minutes, until the fish is cooked and the flesh comes away easily from the bone.600 g whole mackerel
- Lift the fish onto a plate and leave until cool enough to handle.

- Strain the stock through a fine sieve. Discard the cooked asam gelugur and any fish debris. If the stock has been made ahead and chilled, pour it gently and leave any sediment that has settled at the bottom behind. A little cloudiness is perfectly normal.

Prepare the Fish
- Not gonna lie – this is hard work. Remove the skin, backbone and all the bones from the mackerel. Look out for the really tiny ones running along the fish.

- Mash roughly one-third of the cooked fish with a fork.
- Keep the remaining two-thirds in small flakes and set aside.
Make the Spice Paste
- Dried Chillies. Put the kettle on. Cut the dried chillies into 2-3 pieces with a pair of scissors directly into a bowl.Then pour the just boiled water generously over the cut chillies.Cover and leave to soak for 15 minutes, then drain well.10 dried red chillies, 250 ml hot water
- Toast the shrimp paste in a dry frying pan over medium-low heat for 3 minutes, flattening, turning and scraping as needed, until fragrant. Set aside.10 g shrimp paste

- Peel and roughly chop the shallots.Roughly chop the fresh chilli.Trim the lemongrass and finely slice the tender lower part.Peel and roughly slice the galangal.1 fresh long red chilli, 170 g shallots, 1 lemongrass stalk, 30 g fresh galangal
- Place the soaked dried chillies, fresh chillies, shallots, sliced lemongrass, galangal and toasted belacan in a blender.

- Add just enough water to get the blades moving and blend to a fairly smooth paste.45 ml water

Fry the Spice Paste
- Heat the oil over medium heat.3 Tbsp neutral cooking oil
- Add the spice paste and fry for 8 – 10 minutes, stirring frequently, until it has darkened slightly, smells fragrant and begins to look glossy, with oil beginning to appear at the edges of the paste.This is called pecah minyak, read more here.

Make the Asam Laksa Broth
- Gradually pour in the reserved fish stock into the saucepan with the spice paste, stirring well.See that sediment in the image? We want to leave as much of that behind as possible.

- Add the tamarind water, mashed fish, remaining slice of asam gelugur, daun kesum, roughly sliced bunga kantan, bruised lemongrass, sugar and salt.2 large stalks daun kesum, 1 slice asam gelugur, 1 lemongrass stalk, 1 Tbsp sugar, 1 tsp salt
- Bring to a gentle simmer and cook uncovered for 20 minutes.
- Add the remaining flaked mackerel and simmer for another 10 minutes.
- Remove the bruised lemongrass before serving.
- Taste the broth. It should be sour, spicy, savoury and full-bodied. This is where you are going to possibly add a little more sugar and salt to round off the flavour to your liking.
- Remove the asam gelugur once the acidity is where you want it.
- If the broth needs more concentration, simmer uncovered for a few minutes longer.
Prepare the Toppings
- Cut the pineapple into thin strips or triangles.Julienne the cucumber.Very finely slice the red onion.Finely shred the lettuce.Lightly shred the mint leaves.Thinly slice the red chilli.Slice the reserved bunga kantan as finely as possible across the bud.200 g fresh pineapple or canned pineapple in juice, ½ large cucumber, 1 small red onion, 2 handfuls iceberg or round lettuce, fresh mint leaves, 1 long red chilli, ½ bunga kantan

Prepare the Petis Udang
- Place the petis udang in a small bowl.3 Tbsp petis udang/hae ko
- If it is too thick to drizzle, stir in a little warm water until spoonable but still thick and glossy. You may need more or less water, depending on your petis.2-3 Tbsp warm water
Cook the Noodles
- For fresh laksa noodles or lai fun, loosen them in simmering water until heated through and tender, then drain thoroughly. Just 1 minute.750 g fresh laksa noodles/lai fun/lai fen
- For packet noodles whatever you're using, cook according to the packet instructions and drain well.
Assemble
- Divide the noodles between six bowls.
- Ladle over plenty of hot broth and mackerel.
- Top with pineapple, cucumber, red onion, lettuce, mint, chilli and finely sliced bunga kantan.
- Finish each bowl with a little petis udang and serve immediately.
Notes
- Mackerel: Ikan kembung/Indian mackerel is ideal. Atlantic mackerel is a very good substitute, although slightly richer and oilier.
- Asam gelugur: Also known as asam keping. If unavailable, add a little more tamarind to taste.
- Laksa noodles: Fresh lai fun/lai fen is the best choice. Udon or dried flat rice noodles also work well if needed.
- Make ahead: The fish stock can be made a day ahead. The finished broth is actually even better the next day, once the flavours have had time to settle.
- Storage: Refrigerate the broth for up to 2 days, or freeze for up to 3 months for best quality. Keep the noodles and fresh toppings separate.
- Prep time: About 1 hour, depending on how quickly you prepare the fish and toppings.
- Servings: Makes 6 bowls for me, although serving size will depend on how generous you are with the noodles. There is usually a little broth left over after six servings.
Nutrition
Enjoyed this recipe? Add us to your Google Search Preferred Sources:
