Opor Ayam
Opor ayam is the quiet cousin of richer coconut curries: no fiery red colour, just a soft spice paste, lemongrass and coconut milk simmered until the chicken is tender and the sauce coats a spoon.

Prep time20 minutes
Cook time50 minutes
Serves4
DifficultyEasy
Ingredients
- 1 kg chicken pieces, skin-on
- 6 shallots, 4 garlic cloves
- 3 candlenuts (or macadamias)
- 2 cm ginger, 2 cm galangal
- 1 teaspoon ground coriander, ½ teaspoon cumin, ½ teaspoon white pepper
- 3 tablespoons oil
- 2 lemongrass stalks, bruised
- 4 kaffir lime leaves, 2 daun salam (or bay)
- 600 ml thick coconut milk
- 200 ml water
- 1 teaspoon salt, 1 teaspoon palm sugar
Method
- Blend shallots, garlic, nuts, ginger, galangal and ground spices with a little oil into a paste.
- Fry paste in oil 6–8 minutes until fragrant. Add chicken; coat and cook 4 minutes.
- Add lemongrass, leaves, coconut milk, water, salt and sugar. Bring to a gentle simmer.
- Cook uncovered 35–40 minutes, stirring occasionally, until chicken is tender and sauce lightly thickened. Do not boil hard or the milk may split.
- Taste for salt. Serve with steamed rice or ketupat and a pinch of fried shallots.
Notes and tips
- Opor should stay pale; turmeric is optional and only a pinch if you use it.
- Make a day ahead — flavour settles overnight.
- Leftover sauce is excellent with boiled eggs added in the last 10 minutes.
Cooked it? Tell us how it went on the contact page — corrections and regional variations are always welcome.
Common mistakes
- Hard boil Splits coconut milk into oil and water. Keep a lazy simmer.
- Underfried paste Raw spice paste makes the sauce taste unfinished.
- Too much water You want a spoon-coating sauce, not a thin soup.
Frequently asked questions
For Lebaran/Eid?
Yes — classic with ketupat. Cook a day ahead and reheat gently.
Bone-in or boneless?
Bone-in stays juicier; boneless thighs work if you shorten the simmer.
Can I freeze it?
Yes, up to a month. Thaw fridge-side and reheat slowly while stirring.



