Contents

Asam Pedas: Sour Chilli Fish Stew

fish simmered in a fierce, tamarind-soured chilli gravy, sharp enough to cut straight through white rice

Contents↓ Jump to recipe

Asam pedas translates plainly as “sour spicy,” and the name undersells how genuinely aggressive the combination can be once tamarind and dried chilli meet in the same pot. It’s the defining fish dish of Malacca and much of the west coast of Peninsular Malaysia, spilling over the border into Sumatra where closely related versions exist under similar names, It travels under closely related names on both sides of the Strait of Malacca, and every cook who makes it regularly has a firm view on exactly how sour it should be, and it’s built to do one job better than almost any other dish in the region’s repertoire: cut cleanly through the richness of a rice-heavy meal with a gravy that’s sour first, hot close behind, and savoury enough underneath to stop either extreme from feeling one-note.

Asam Pedas: Sour Chilli Fish Stew

 Save
Serves4 servingsPrep25 minCook30 minCuisineMalaysianCourseStew

Ingredients

  • 600g firm white fish steaks or fillets (mackerel, stingray or red snapper), cut into large pieces
  • 8 dried red chillies, soaked in hot water until soft
  • 4 fresh red chillies
  • 6 shallots, peeled
  • 4 cloves garlic, peeled
  • 2cm piece fresh turmeric, peeled, or 1 tsp ground turmeric
  • 1 tsp shrimp paste (belacan), toasted
  • 3 tbsp tamarind pulp, mixed with 200ml water and strained
  • 4 tbsp vegetable oil
  • 1 torch ginger flower bud (bunga kantan), halved, optional
  • 2 turmeric leaves, torn, optional
  • 150g okra, trimmed
  • 2 tomatoes, quartered
  • 200ml water, plus more as needed
  • 1.5 tsp salt, plus more to taste
  • 1 tsp sugar
  • steamed rice, to serve

Method

  1. Blend the soaked dried chillies, fresh chillies, shallots, garlic, turmeric and toasted shrimp paste to a smooth, deep red paste, adding a splash of the chilli soaking water if needed.
  2. Heat the oil in a wide pan or wok over medium heat and fry the paste for 8-10 minutes, stirring often, until it darkens, the oil separates at the edges and the raw smell is completely gone.
  3. Add the tamarind water and the plain water, stirring to combine, and bring to a simmer.
  4. Add the torch ginger flower and turmeric leaves if using, along with the okra and tomatoes, and simmer 8-10 minutes until the okra is tender but not collapsing.
  5. Season with the salt and sugar, tasting and adjusting until the gravy is fiercely savoury-sour with a clear tamarind edge alongside the chilli heat.
  6. Slide in the fish pieces, spooning the gravy over them, and simmer gently for 8-10 minutes until just cooked through — avoid stirring roughly, which will break the fish apart.
  7. Taste the gravy once more; it should hit sour, spicy and savoury in roughly equal measure, with no single note dominating the others.
  8. Rest for 2 minutes off the heat to let the fish finish gently in the residual heat.
  9. Serve hot, straight from the pot, with plenty of steamed rice to soak up the gravy.

Two very different fish that both work here

Advertisement

Traditional asam pedas is most often made with stingray or mackerel — stingray for its firm, slightly gelatinous flesh that holds together through the simmer and takes on the tamarind gravy without disintegrating, mackerel for its natural oiliness, which stands up well against a sauce this assertive without being overwhelmed by it. Red snapper is a reasonable, more widely available substitute, offering a firmer, meatier texture than most white fish while still being mild enough to let the gravy do the talking. What all three share is enough structural integrity to survive being simmered directly in a fiercely acidic, chilli-heavy liquid without falling apart into flakes within the first few minutes — a genuinely delicate fish like sole or plaice will disintegrate long before the gravy’s flavours have had a chance to properly penetrate it, so it’s worth choosing a firmer fish specifically for this dish rather than whatever happens to be cheapest that day.

Tamarind is doing more than adding sourness

Tamarind pulp, soaked and strained into a thick, dark liquid, gives asam pedas its defining sourness, but it’s also contributing body and a faint sweetness underneath the sharpness — properly ripe tamarind carries real sugar alongside its acid, which is part of why the gravy needs a counterbalancing pinch of sugar rather than relying on tamarind’s own sweetness to carry that role entirely. The quantity of tamarind matters more here than in almost any other dish in this kitchen’s Southeast Asian repertoire: too little and the gravy reads simply as a hot chilli sauce with fish in it, missing the sour backbone that defines the dish; too much and the sourness overwhelms everything else, including the chilli, leaving a gravy that tastes sharp rather than balanced. Taste and adjust in small increments once the tamarind water has gone in, since it’s far easier to add more than to correct an overly sour pot afterwards.

Torch ginger and turmeric leaf, and what they add if you can find them

Advertisement

Torch ginger flower — bunga kantan, the pink-red flower bud of a wild ginger relative — brings a sharp, faintly perfumed, almost floral note that has genuinely no substitute; it doesn’t taste like ginger at all, closer to a cross between lemongrass and a bitter, aromatic flower. Turmeric leaf, similarly, has an aroma distinct from the turmeric root itself, grassier and more citrus-like, closer to kaffir lime leaf in effect than to the earthy warmth of the root. Both are genuinely difficult to find outside Malaysia, Indonesia and specialist Southeast Asian grocers with a good fresh-herb selection, and both are marked optional in this recipe for exactly that reason — the dish is still recognisably asam pedas without them, built correctly around the chilli-tamarind base, but a version made with both ingredients has a top-note complexity the plainer version can’t fully replicate. If you can find either one, even just the torch ginger flower on its own, it’s worth the extra trip to add.

Building the paste and why the long fry matters here too

As with most Southeast Asian curry-adjacent stews, the fried paste stage is where the dish’s real depth comes from rather than an optional flourish before the liquid goes in. Dried chillies, soaked until pliable, blend into a smoother, deeper-flavoured paste than fresh chilli alone would give, carrying a more concentrated, slightly smoky heat that fresh chilli’s brighter, sharper burn doesn’t replicate on its own — using a mix of both, as this recipe does, gives a gravy with genuine depth of heat rather than a single flat note of spiciness. Shrimp paste, toasted before blending rather than used raw, loses its raw fishy sharpness and instead contributes a rounded savoury depth that underpins the whole gravy; toast it wrapped in foil in a dry pan or directly over a low flame for thirty seconds a side until it smells nutty rather than sharply of raw seafood.

Fry the blended paste for the full eight to ten minutes specified, watching for the same visual cues as any other well-made spice paste: a visible darkening, a slight separation of oil at the pan’s edge, and a smell that’s turned rounded and cooked rather than sharp and raw. Rushing this stage is the single most common reason a home-cooked asam pedas tastes flatter and more one-dimensional than the version from a good Malaccan stall.

Handling the fish so it doesn’t fall apart

Fish goes into the pot only once the gravy itself is fully seasoned and simmering steadily, and it needs a gentle hand from that point on — spoon the hot gravy over the fish pieces as they cook rather than stirring them around the pot, which will break firm fish into ragged pieces and turn a more delicate one to mush entirely. Eight to ten minutes is generally enough for fish pieces of a reasonable thickness to cook through in a simmering gravy this hot; check by pressing gently with the back of a spoon rather than cutting into a piece to look, since cutting releases juices into the gravy and can dry the fish out slightly by the time it’s served.

Regional variations across the strait

Malacca’s version of asam pedas, the one most home cooks outside Malaysia will encounter first, tends to be a wetter, more soup-like dish than the version found further south in Negeri Sembilan, where cooks often add a little grated coconut or coconut milk to round off the sourness with some richness — a variation that pulls the dish slightly closer to a curry than the sharp, clear-gravied Malaccan style. Across the Strait of Malacca in Sumatra, particularly around Padang and Riau, closely related asam pedas variants swap tamarind partially or entirely for other souring agents such as unripe mango or a local citrus, producing a brighter, sharper sourness than tamarind’s rounder, slightly sweet acidity gives. None of these variations changes the dish’s basic identity — fish, chilli, a sour base, cooked until the gravy clings — but they’re worth knowing about if you come across a version that tastes markedly different from this one and assume something’s gone wrong, since it’s more likely simply a different region’s take.

What to serve it with, and how much rice you actually need

Asam pedas is built to be eaten with plenty of plain steamed rice, more than you might serve alongside a milder curry, since the gravy’s job is partly to season the rice itself as it’s spooned over rather than to be eaten as a stew in its own right. A simple stir-fried green vegetable on the side — kangkung (water spinach) fried with garlic and a little belacan is the most traditional pairing — gives some textural and flavour relief from the gravy’s intensity. Avoid pairing it with another equally sour or spicy dish at the same meal; asam pedas is assertive enough to be the single dominant flavour on the table, and it tends to overpower rather than complement anything else built around similar sour-hot notes.

Adjusting the heat without losing the balance

Because dried chilli, fresh chilli and tamarind are all doing distinct jobs in this gravy, adjusting the heat level isn’t as simple as adding or removing chilli alone. If you want a milder version, reduce the fresh chillies first rather than the dried ones, since the dried chillies contribute more of the gravy’s depth and colour than raw heat, and cutting them back too far leaves the sauce looking pale and tasting thin even at a lower spice level. If you want it hotter, add extra fresh bird’s eye chillies whole towards the end of cooking rather than blending more into the paste, which lets you control exactly how much extra heat lands in the finished dish without having to re-balance the tamarind and sugar all over again. Either way, taste after each adjustment rather than guessing, since the sour, hot and savoury elements all shift slightly against each other whenever one of them changes.

Storage and why it keeps unusually well

The gravy’s flavour actually rounds out slightly overnight, as the tamarind’s sharper edges settle against the fried paste’s sweetness, so a reheated portion the next day often tastes more cohesive than it did fresh from the pot. Asam pedas keeps for up to three days refrigerated, and the gravy on its own — without the fish, which is best cooked fresh each time to avoid it turning mushy on reheating — freezes well for up to two months, since tamarind’s acidity acts as a natural preservative and helps the gravy hold its flavour through freezing better than a milder, less acidic sauce would. If you’re planning ahead, make a larger batch of the gravy base, freeze it in portions, and simmer a fresh piece of fish in a defrosted portion whenever you want the dish again rather than trying to reheat and re-cook fish that’s already been through the gravy once.

For another dish from the same coastal Malay-Peranakan tradition, built on grilled fish paste rather than a soured gravy, otak-otak uses many of the same aromatics — chilli, turmeric, shrimp paste — wrapped and grilled rather than simmered in liquid. And for a South Indian sour fish curry that reaches a similar effect through a very different souring agent, Goan fish curry uses kokum in place of tamarind, worth comparing side by side if the appeal of a sour, assertive fish gravy is what draws you to both dishes.

Advertisement
Advertisement
Fern
Written by Fern

vo.rs's resident home cook. A firm believer that the best recipes are the classics with one small, clever twist, Fern cooks the way most of us actually do: in a normal kitchen, on a normal weeknight, without a brigade of sous-chefs. Expect generous flavour, honest shortcuts and strong opinions about garlic.