Written by: Chan Ping Xuan

henever there is craving for Thai food but we are sick of Mookata and Boat Noodles, we will prepare a refreshing Herb Rice Salad, Khao Yam (pronounced as Kao Jam). Originating from Thailand, "Khao" means rice and "jam" means the action of mixing the ingredients together. In Malay, this dish is more commonly known as nasi ulam or "vegetable rice".

“Although the preparation takes time, the whole process and experience of cooking and eating Khao Yam with my family is very rewarding”

My hometown is Kedah, in the northern part of Malaysia. When I was young and my parents were working in Singapore, I lived with my maternal grandma. Due to their work nature, they visited me once a year. The most memorable moment for me with my grandma is that she would ride a bike with me to Hat Yai, a city in Thailand’s far south near the Malaysian border, to visit my uncle who became a monk there.

Until I was 6 years old, I migrated to Singapore to live with my parents. It was around this time where I got to know this dish from my Dad. Apparently, my maternal side family is not aware of this dish. Khao Jam does not travel very well in Asia as it takes ample time of slicing, chopping, and toasting of ingredients. This is definitely the best dish to train your knife skills!

My sister, Peony and I preparing ingredients
Khao Yam, served for eating
Mr Chan
My dad, Chan

Every family has their own Khao Yam recipe, which are all slightly different. It is entirely up to the individual to include anything available. Since the pandemic, our family has been homesick and during the weekends, we will travel to the west of Singapore (Clementi) to get the most difficult-to-find ingredients which are ginger flower bud (used in some Singaporean Rojak) and freshly grated coconut. All ingredients must be freshly prepared as it is eaten raw.

It takes a lot of dedication to prepare this dish using caveman methods. No air fryer or special machinery is used- Only basic tools and equipment such as a knife, chopping board, stove and pan. My family members will come together to prepare this traditional dish.

To experience the authentic way of eating Khao Yam, use your hands! In the mouth, it is a complex mixture of textures and flavours… Soft tender rice with crunchy greens, bean sprouts and onion. Spiciness from the sambal is toned down by the creaminess of the freshly grated coconut. The turmeric strips add colour to your rice and stain your fingers. The saltiness from the fried salty fish brings all the herb flavours from mint leaves, curry leaves and lemongrass. Although the preparation takes time, the whole process and experience of cooking and eating Khao Yam with my family is very rewarding.

Mr Chan’s Khao Yam

0 from 0 votes
Recipe by Chan Course: MainDifficulty: Medium


Prep time


Cooking time




  • 5 tenggiri steaks

  • 1 kg rice

  • Ulam to cook with rice
  • 2 turmeric leaves

  • 2 torch ginger leaves

  • 2 stalks daun kesum

  • 2 cekur leaves

  • 2 na dam leaves

  • 2 daun kentut

  • 2 daun kudu

  • 2 stalks curry leaves

  • 2 cm fresh turmeric

  • 2 stalks lemon grass

  • 2 pandanus leaves

  • 3 kaffir lime leaves

  • 2 tbsp palm sugar

  • Garnishing
  • 1 cucumber, pared and julienned

  • 1 onion, finely sliced

  • 15 stalks polygonum leaves, finely cut

  • 10 long beans, finely sliced

  • 1 bunga kantan, finely cut

  • 3 stalks lemongrass, finely sliced

  • To make fried grated coconut
  • ½ coconut, finely grated

  • 8 shallots, finely sliced

  • 2 cm ginger, sliced

  • palm sugar and salt to taste


  • Slice all the ulam leaves and either blend or pound finely. Add 2 glasses water to leaves and extract the juice. Sieve and repeat with another glass of water.
  • Wash rice. Add ulam juice to the rice. Add three pieces of pandan leaves and kaffir lime leaves, and 1/2 a block of palm sugar. Cook in a rice cooker.
  • Rub some salt on the fish and grill over a low fire. When cooked, let it cool and then break into flakes.
  • Dry fry the grated coconut with sliced shallots, ginger, palm sugar and salt over a low fire. When the mixture turns fragrant, lightly flatten the grated coconut with the back of your spatula.
  • Dry fry belacan with shallots and garlic over a low fire until fragrant. Blend this mixture with chilli to make the sambal belacan.
  • Mix some budu with limau kerat lintang and bird´s eye chilli.
  • Serve the rice with the grilled fish, finely sliced garnishings, sambal belacan, budu and fish crackers.


Did you make this recipe?

Tag @kampungeats on Instagram and hashtag it #kampungeats

Want more recipes?

Like us on Facebook

With special thanks from the Kampung Eats team to Mr Chan!

Letters to the Chef

Your email address will not be published. Required fields are marked *


Emet nisl suscipit adipiscing bibendum. Amet cursus sit amet dictum. Vel risus commodo viverra maecenas.