Sri Lankan Yellow Rice for a Fragrant Family Dinner

Updated November 3, 2026

Total time
49 min
prep 15 min · cook 34 min
Serves
6
portions as written

Jump to recipe

Sri Lankan Yellow Rice for a Fragrant Family Dinner

Sri Lankan yellow rice, often called kaha bath, is rice cooked with turmeric, coconut milk, and fragrant spices until tender and golden. It makes a welcoming dinner centerpiece alongside curry and vegetables, and its flavors can be adjusted to suit different households and the ingredients you have.

Ingredients

  • 2 cups (370 g) basmati rice, or Sri Lankan samba rice if available
  • 1 medium yellow onion (about 150 g), finely chopped
  • 2 tablespoons (30 ml) ghee or neutral oil
  • 8 fresh curry leaves, or 1 teaspoon (1 g) dried curry leaves
  • 1 pandan leaf, about 6 inches (15 cm) long, tied in a loose knot; optional if unavailable
  • 1 cinnamon stick, about 3 inches (7.5 cm)
  • 4 whole green cardamom pods, lightly crushed
  • 3 whole cloves
  • ½ teaspoon (1.5 g) ground turmeric
  • 1 teaspoon (6 g) fine salt
  • 1 cup (240 ml) canned coconut milk, well stirred
  • 2 cups (475 ml) water, plus 2 tablespoons (30 ml) more if needed
  • ⅓ cup (45 g) raw cashews, for garnish
  • 2 tablespoons (20 g) raisins, optional
  • 1 tablespoon (15 ml) ghee or oil, for toasting the cashews

Instructions

  1. Rinse the rice. Put the rice in a bowl, cover it with cool water, and swirl it with your fingers. Drain and repeat three or four times, until the water is less cloudy. Drain thoroughly in a sieve. There is no need to soak the rice for this method; rinsing removes loose starch while keeping the cooking time predictable.
  2. Prepare the aromatics. Chop the onion, lightly crush the cardamom pods with the flat side of a knife, and measure the other spices. Stir the coconut milk before measuring, since its thicker cream can settle in the can. Tie the pandan leaf in a loose knot if using it; the knot makes it easy to remove later.
  3. Soften the onion and toast the spices. Set a heavy-bottomed saucepan with a tight-fitting lid over medium heat. Add 2 tablespoons ghee or oil. When warm, add the onion, curry leaves, pandan, cinnamon, cardamom, and cloves. Cook for about 5 minutes, stirring often, until the onion is soft and fragrant but not browned. Add the turmeric and salt and stir for 20 seconds. Tip in the drained rice and stir gently for 1 minute so the grains are coated with the spiced fat.
  4. Add the liquid and bring it to a boil. Pour in the coconut milk and 2 cups water. Stir once, scraping the bottom of the pan, and bring the liquid to a gentle boil over medium-high heat. As soon as bubbles appear across the surface, stir once more, then cover the pan and turn the heat to its lowest setting. A hard boil can make the coconut milk foam up or scorch, so lower the heat promptly.
  5. Cook the rice. Simmer, covered, for 18 minutes. Keep the lid on; lifting it repeatedly releases steam and can leave the top layer undercooked. If your burner runs especially hot, use a heat diffuser or move the pan to a smaller burner on its lowest setting. After 18 minutes, the liquid should be absorbed and the rice tender. If it is still firm and the pan looks dry, drizzle in up to 2 tablespoons hot water, cover, and cook for 2 to 3 more minutes.
  6. Rest and fluff. Turn off the heat and leave the pan covered for 10 minutes. This resting time lets the steam finish cooking the grains and helps them separate. Remove the lid, cinnamon, pandan, and any whole spices you can easily spot. Gently fluff the rice with a fork or rice paddle, lifting from the edges rather than stirring hard and breaking the grains.
  7. Toast the garnish and serve. While the rice rests, warm 1 tablespoon ghee or oil in a small skillet over medium-low heat. Add the cashews and toast for 2 to 3 minutes, stirring, until lightly golden; watch closely because they darken quickly. Add the raisins, if using, for the final 30 seconds, then scatter the garnish over the fluffed rice. Serve warm.

Tips

  • Use the right pan and heat. A heavy saucepan with a close-fitting lid holds heat evenly, which matters during the covered simmer. If the bottom scorches easily on your stove, use the smallest burner and lowest flame. Avoid opening the lid just to check; the rice needs steady trapped steam.
  • Know your rice. Basmati gives distinct, long grains, while Sri Lankan samba rice is shorter and can produce a slightly more compact texture. If you use a different rice, check the package guidance and be ready to adjust the final cooking time or add a spoonful of hot water. The listed liquid ratio is designed for basmati.
  • Handle pandan and curry leaves flexibly. Pandan, also called rampe, has a sweet, grassy aroma that is characteristic in many Sri Lankan dishes, but it may be hard to find outside South Asian or Southeast Asian groceries. Leave it out if needed; do not replace it with pandan extract, which can be too concentrated. Fresh curry leaves are more aromatic than dried, so use the amounts listed.
  • Keep the grains intact. Rinse the rice well, drain it, and stir gently once the liquid is added. Vigorous stirring releases starch and can turn a fluffy rice dish sticky. For a richer result, use full-fat coconut milk; light coconut milk works too, though the flavor will be less creamy.

Serving Suggestions

Serve the yellow rice as the base of a Sri Lankan-inspired dinner with a lentil dhal, a vegetable curry, and a sharp or tangy accompaniment. A mild potato curry or green bean curry pairs well with the rice’s gentle coconut flavor, while a spoonful of sambol or lime pickle adds heat and acidity. For a more varied table, add a fresh cucumber salad, sautéed greens, or roasted vegetables.

For a simple meal, serve generous portions with a fried egg, but cook the egg until the white and yolk are firm. The rice also works as part of a larger shared spread: put it in a shallow serving bowl, top it with the toasted cashews and raisins, and keep curry leaves or whole spices out of the serving portion where possible. Offer extra lime wedges and chili sambol on the side so diners can season their plates to taste.

Variations

Make it vegetarian or vegan: The recipe is vegetarian as written. To make it vegan, use neutral oil instead of ghee for both the rice and cashews. Coconut milk already provides the creamy element, so the finished dish remains fragrant and satisfying without dairy.

Change the richness: For a lighter flavor, replace half a cup (120 ml) of the coconut milk with water. For a deeper coconut aroma, use a little more coconut milk while keeping the total liquid at 3 cups (715 ml). Too much thick coconut milk can make the rice heavy, so keep the total liquid consistent rather than simply adding more.

Add vegetables or other garnishes: Stir in ½ cup (75 g) thawed peas after fluffing, or serve them alongside so the rice stays bright and separate. Fried onions, toasted coconut, or chopped cilantro can replace or supplement the cashews and raisins. These are flexible additions rather than required traditional ingredients, and each changes the flavor and texture slightly.

Use another rice: Sri Lankan samba rice is a useful traditional option when available, though its shorter grains and cooking needs differ from basmati. Follow the package directions for its water ratio and timing, using the spice and coconut mixture as the flavor base. Do not assume that every variety absorbs liquid in the same way.

Storage and Reheating

Rice should not sit at room temperature for long. Transfer leftovers to shallow containers and refrigerate within 2 hours of cooking; divide a large batch into smaller portions so it cools promptly. Keep it refrigerated for 3 to 4 days. If you will not use it within that time, freeze individual portions in airtight freezer-safe containers for up to 2 months for best quality.

To reheat, add a tablespoon of water to a portion, cover it, and warm it in the microwave, stirring once if practical. On the stovetop, put the rice in a saucepan with a splash of water, cover, and heat gently, fluffing once the steam has loosened the grains. Reheat leftovers until they reach 165°F (74°C), as measured with a food thermometer. Reheat only the amount you plan to eat, rather than repeatedly warming the whole batch.

Frequently Asked Questions

Is Sri Lankan yellow rice the same as biryani?

No. Both can be seasoned rice dishes, but this version is a straightforward rice preparation flavored with coconut milk, turmeric, and whole spices. Biryani is usually built with more layers and may include meat or vegetables cooked separately from the rice. Sri Lankan home recipes for yellow rice vary, so ingredients and garnishes are not identical in every household.

Can I make this without coconut milk?

Yes. Replace the 1 cup (240 ml) coconut milk with 1 cup (240 ml) water or light stock, keeping the total liquid at 3 cups (715 ml). The rice will be less creamy and will not have the same coconut aroma, but the turmeric, curry leaves, pandan, and whole spices will still give it a fragrant flavor.

Can I prepare it in a rice cooker?

You can, though the exact liquid amount depends on the cooker and rice variety. Cook the onion, spices, turmeric, and rice in a skillet as directed, then transfer the mixture to the cooker with the coconut milk and water. Use the regular white-rice setting, and let it stand for 10 minutes after the cycle before fluffing. Check your cooker’s instructions before using coconut milk, since some models can foam or need extra care with rich liquids.

Why did my rice turn mushy?

Common causes are excess liquid, skipping the rinse, stirring too often, or using a rice variety that needs less water than basmati. Measure the liquid carefully, drain rinsed rice well, and leave the lid on while it cooks. If the rice is already a little soft, spread it gently in a wide dish for a few minutes to release steam, then serve without further stirring.

Can I make Sri Lankan yellow rice ahead?

For the best texture, cook it shortly before serving and use the 10-minute covered rest to finish the grains. You can chop the onion and measure the spices earlier in the day, then refrigerate them separately. If you cook the rice in advance, cool and refrigerate it promptly, then reheat it to 165°F (74°C) with a little water just before serving.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).