Terumi Morita
June 25, 2026·Recipes

Nasi Ulam

Nasi Ulam is a fragrant Malaysian herb rice dish, tossed with fresh herbs, toasted coconut, and optional dried fish.

Contents (5 sections)
A vibrant bowl of Nasi Ulam showcasing colorful herbs and toasted coconut.
RecipeMalay / Peranakan
Prep20m
Cook15m
Serves4 portions
LevelMedium

Ingredients

  • 300 g white rice
  • 2 kaffir lime leaves, finely shredded
  • 1 stalk lemongrass, finely chopped
  • 50 g polygonum leaves, finely shredded
  • 20 g fresh basil leaves, finely shredded
  • 1 ginger flower, finely shredded
  • 50 g grated coconut
  • 50 g dried fish (optional)
  • salt to taste

Steps

  1. Rinse the white rice under cold water until the water runs clear, then cook it in a rice cooker or pot with the appropriate amount of water until fluffy (about 15 minutes). Let it cool.

  2. In a dry pan over medium heat, toast the grated coconut for about 5 minutes until golden brown, stirring frequently to prevent burning.

  3. Once the rice is cooled to room temperature, transfer it into a large mixing bowl. Add the finely shredded kaffir lime leaves, lemongrass, polygonum, basil, and ginger flower.

  4. Sprinkle the toasted coconut over the rice mixture along with the dried fish, if using. Season with salt to taste.

  5. Gently toss all ingredients together until well combined, ensuring the herbs and coconut are evenly distributed throughout the rice.

Why this works

Nasi Ulam achieves its distinctive flavor through the careful selection and combination of fresh herbs, which provide a mosaic of tastes reminiscent of the lush tropical landscape of Malaysia. The cooling of the rice is crucial, as it allows the grains to firm up, making them easier to toss with the delicate herbs without becoming mushy. Toasting the coconut enhances its nutty flavor and provides a crunchy texture contrast to the soft rice. If the herbs seem too overpowering, balance them by adding more toasted coconut or adjusting the salt. This dish is best served fresh, as the herbs can lose their vibrancy if left to sit for too long, diminishing the overall flavor experience.

Common mistakes

Mixing the herbs into hot or warm rice.
Target: Cool the cooked rice fully to room temperature before adding the shredded herbs.
Why it matters: Warm rice wilts delicate leaves like basil and polygonum (a peppery, citrusy herb also known as Vietnamese mint) almost instantly, turning bright, crisp herbs limp and muting their fragrance; residual heat also makes the rice clump instead of staying separate.
What to do: Spread the cooked rice on a wide tray or plate to cool completely, then fluff it before folding in the herbs.

Chopping the herbs too coarsely, or too far ahead of time.
Target: Shred the kaffir lime leaves (glossy citrus-scented leaves used for aroma, not eaten in big pieces), polygonum, basil, and ginger flower (the pink bud of torch ginger, floral and citrusy) finely, and cut them close to serving time.
Why it matters: Nasi Ulam's character comes from many herbs in small, even pieces distributed through every bite; large pieces concentrate flavor unevenly (a bite of raw kaffir lime leaf can be sharply bitter), and pre-cut herbs oxidize (react with the air) and dull in both color and aroma if they sit too long.
What to do: Stack the leaves, roll them tightly, and slice into fine ribbons (a chiffonade cut) just before tossing with the rice.

Under-toasting, or scorching, the coconut.
Target: Toast the grated coconut in a dry pan over medium heat, stirring frequently, until it's evenly golden-brown all the way through, not just at the edges.
Why it matters: Pale, under-toasted coconut tastes raw and waxy; coconut left unstirred scorches unevenly at the edges while the center stays pale, giving a bitter, burnt note in some bites and a flat one in others.
What to do: Stir constantly once the coconut starts to color, and pull it from the heat as soon as it's uniformly golden — carryover heat (the heat still stored in the hot pan) will continue to darken it slightly even off the flame.

Adding dried fish straight from the packet without crisping it.
Target: If using raw, uncooked dried fish rather than a pre-fried, ready-to-eat product, fry or toast it in a little oil until golden, crisp, and cooked through before mixing it into the rice.
Why it matters: Dried fish adds salty, savory depth to Nasi Ulam, but "dried" doesn't always mean fully cooked — frying it until crisp develops flavor and makes sure it's safe to eat.
What to do: Pan-fry the dried fish in a little oil over medium heat until crisp and deep golden throughout, then crumble it over the rice with the toasted coconut.

What to look for

  • Rice grains that are separate and cool, not clumped or steaming. Warm or wet rice signals the herbs will wilt on contact; separate, cool grains mean each piece of herb keeps its own texture.
  • Coconut that's an even, deep gold throughout, not pale in the center or blackened at the edges. Even color means even toasting and a consistently nutty, rather than bitter, flavor.
  • Dried fish that's crisp and golden, not leathery, chewy, or translucent-soft. Crisp means it's been cooked through and will shatter, not chew, adding crunch rather than a raw, fishy note.
  • A rice mixture where no single herb dominates the aroma. Nasi Ulam depends on a mosaic of herbal notes — kaffir lime, lemongrass, basil, ginger flower — with fish and coconut sitting in the background, not overpowering the rest.

A note on history

Nasi Ulam's roots are told differently depending on where you ask, rather than tracing to one fixed origin. Some accounts point to Tangerang in Banten, west Java, from where traders carried the dish to Glodok in Jakarta, where it took on a Betawi character; in northern Peninsular Malaysia, a related version developed among Kedah Malays, built around rice, fried fish, and a wide mix of raw ulam leaves (ulam being the Malay word for the fresh herbs and shoots eaten this way); and the Penang Peranakan (Straits Chinese) version, closer to the one here, layers in kaffir lime, mint, and torch ginger flower. The common thread across all three is "ulam" itself — a category of fresh herbs and shoots long valued in the region less as garnish than as food believed to carry its own health benefits (Wikipedia: Nasi ulam).

Get the essays in your inbox — free

Weekly notes on flavor, fermentation, and food history — the writing behind the Atlas of Flavor. No spam; unsubscribe anytime.