Nasi Lemak (Malaysian Coconut Rice)

Frequently served with toppings like sambal tumis and dried anchovies, this coconut rice is what many Malaysians crave when they wake up in the morning.

Overhead view of Nasi Lemak

Serious Eats / Michelle Yip

Why This Recipe Works

  • Steaming the rice in a steamer basket instead of a pot guarantees perfectly cooked rice every time.
  • Pre-cooking the rice and coconut milk mixture prior to steaming helps the rice better absorb flavor while reducing mess in the steamer

Say the words “nasi lemak” in Malaysia and you’ll spark a number of debates. What is the ideal texture of the rice? What accompaniments are non-negotiable? Which roadside nasi lemak vendors have the best sambal? These questions can evolve into full-blown arguments, at times drifting to social media with thousands of folks offering their two cents on where to find the best nasi lemak. Other than one’s mother’s house, you can find nasi lemak at roadside stalls (or gerai), school canteens, shopping mall food courts, and high-end hotel restaurants. Basically, anywhere and everywhere. 

While frequently served with toppings and condiments, at its most basic, nasi lemak is rice cooked in coconut milk. “A lot of people translate it to ‘fatty rice’, because coconut milk is fatty,” says Ahmad Najib “Nadge” Ariffin, a cultural historian and self-professed gastro-anthropologist. “The word ‘lemak’ in this particular context actually points to the richness of the rice, a comforting softness.” 

The dish is what many Malaysians crave when they wake up in the morning, no matter where they are in the world. One of my brothers went to university in Indiana in the 1990s, and I remember his Malaysian friends weeping with joy when my mom served them nasi lemak on a cold winter morning in South Bend.

Overhead view of Nasi lemak

Serious Eats / Michelle Yip

Like most traditional Malay dishes, it’s difficult to pinpoint nasi lemak’s origins, though rice cooked with coconut milk is a widespread practice in regions where rice is cultivated and coconuts grow, so that, at least, possibly goes back quite far. According to Nadge, the earliest written evidence of nasi lemak is found in British colonial-era records as early as the 1910s that make note of local dishes. A better way of guessing when people started making nasi lemak with its various toppings may be by looking at when all the ingredients—like chile peppers for sambal tumis—became available. Though rice, coconuts, and ikan bilis (dried anchovies) all existed in Malaya (a term that refers to the region pre-independence in 1957), it wasn’t until the 17th and 18th centuries that European colonizers brought chiles from the Americas. 

The dish’s “origins are most likely from the west coast of peninsular Malaysia, but even this is by indirect inference,” says Nadge. In the 1800s, the famous Malayan writer Munshi Abdullah wrote of his visits to the peninsula’s east coast. Though Abdullah detailed the many dishes he ate, notably absent is any mention of nasi lemak. “If you ask older people in Kelantan and Terengganu [on the east coast], they don’t consider nasi lemak as ‘theirs’. It’s a Malay dish, sure, but not from there.”

You can serve nasi lemak with any number of dishes and accompaniments, with or without sambal. Heck, you can even cook it in the microwave or a multi-tier stovetop steamer. As long as it’s rice cooked in coconut milk, you can technically call it nasi lemak. We’ll get to the dishes and accompaniments in a bit; let’s talk about the rice first.

The Rice

Cooking rice in coconut milk is common among communities that live around the equator, including the region of Southeast Asia of which Malaysia is a part. Coconut milk is one of the easiest ways to add flavor, richness, and additional nutrients to what would otherwise be a plain bowl of rice. Traditionally, cooks prepare nasi lemak with freshly squeezed coconut milk (‘santan’ in the Malay language), which are available to purchase at most grocers and markets in Malaysia. Some folks prefer to buy freshly grated coconut to make the milk at home, and some may go even further and grate the coconuts themselves. These days, many Malaysian cooks choose to use boxed coconut milk for consistency and shelf life, and reserve the freshly squeezed stuff for special occasions.

Then there are the aromatics that are cooked with the rice. Pandan leaves lend a grassy sweetness that pairs well with the richness of coconut milk; this is the aroma most people associate with nasi lemak. Beyond that, fresh ginger is common, as are slices of onion, fenugreek seeds, cinnamon sticks, cloves, star anise, and cardamom. To avoid overwhelming the rice, I usually stick with pandan and ginger.

The rice can be cooked in a variety of ways, though these days it is most common to use a rice cooker. The thing about using a rice cooker to make nasi lemak, however, is that it’s trickier than cooking basic rice, with the method changing depending on the type of rice, the type of coconut milk, and the type of rice cooker used. With time, individual cooks figure out how to make it work with what they have, but this isn't practical when writing a recipe that needs to work as consistently as possible for as many people and cooking setups as possible. I have found that this kind of consistency is best achieved by using a specific piece of equipment: a tiered stovetop steamer (or some other steamer setup if you don't have a dedicated stacking one).

Using a tiered steamer to cook rice may seem fussy, but it produces consistent results—fluffy grains separate from one another with ample coconut flavor—regardless of the kind of rice you use. In this recipe, I pre-cook the rice in a wok or skillet with the other ingredients, which allows the rice to start absorbing flavor from the get-go. Once the grains have soaked up most of the liquid, you’ll transfer the rice to the tiered steamer to finish cooking. 

Unlike cooking in regular rice cookers or cooking pots, this method enables the cook to check the doneness of their rice from time to time without worrying about losing essential steam, since a steamer can continue to provide more and more steam until the rice is done (contrast that with cooking rice in a pot or rice cooker, where the perfect ratio of water to rice has to be measured out before sealing the pot; opening the lid unnecessarily simply lets that precise amount of water escape as steam).

The Many Ways of Serving Nasi Lemak

There are as many ways to serve nasi lemak as there are people eating it. Nadge describes five “levels” of nasi lemak:

  1. Just the rice itself, cooked in coconut milk.
  2. Rice with plain sambal tumis, a spicy condiment made by slow-cooking chillies into a paste, a critically important component for most nasi lemak connoisseurs that requires the technique of pecah minyak, or "splitting of the oil," a sign that the sambal is properly cooked.
  3. Rice, sambal tumis, and basic accoutrements: fried ikan bilis (dried and salted anchovies), a slice of hard-boiled egg. Some consider fried peanuts and sliced cucumbers a part of this set as well. 
  4. Levels 1-3, plus any dish under the sun. Squid sambal tumis? Fried chicken? Beef rendang? Fried beef lungs? More is more. 
  5. Levels 1-4, all served on a banana leaf. Whether you’re eating it with utensils or with your fingers, the inadvertent scraping of the leaf helps release its fragrant oils and perfumes your nasi lemak even further.

Levels 4 and 5 are where folks have the most fun. Head up north to Kedah and Perlis and you’ll see nasi lemak served with curries (called ‘gulai’), many times omitting the sambal tumis entirely. Head down past Malacca and you’ll find it served with fried kangkung (water spinach). Go further south to Singapore and enjoy nasi lemak with fried small whole fish or one of my favorite Singaporean Chinese variations: seared luncheon meat. Many Peranakan versions are accompanied with some kind of seafood cooked in the sambal. At Malaysian-Chinese food court stalls, nasi lemak with pork curry is the norm. If it goes with rice, chances are excellent that it’ll go with nasi lemak.

Nasi lemak tends to be served with all its condiments and accompaniments on the same plate. Occasionally, if the place is fancy, it might come with any item that has a lot of gravy in a separate bowl, but most would just pour it on top of the rice to mix with the sambal.

What I’m trying to say here is: While individual opinions run strong, there’s no right or wrong way to serve and eat nasi lemak. As long as it’s got coconut rice, it's all good. Just don’t post about it online if you value your sanity.

Recipe Details

Nasi Lemak (Malaysian Coconut Rice)

Prep 15 mins
Cook 50 mins
Total 65 mins
Serves 6 servings

Frequently served with toppings like sambal tumis and dried anchovies, this coconut rice is what many Malaysians crave when they wake up in the morning.


  • 2 1/2 cups jasmine rice (1 pound 2 ounces, 500g)

  • 7 ounces (200ml) coconut milk, preferably from a carton variety (see notes) 

  • 2 pandan leaves, cut crosswise into 2-inch pieces

  • One 1-inch knob (25g) fresh peeled ginger, julienned

  • 1 1/2 teaspoons Diamond Crystal kosher salt, plus more to taste; for table salt use half as much by volume or the same weight

To Serve (optional):

  • Sambal tumis

  • Fried ikan bilis (dried anchovies) (see notes)

  • Sliced hard-boiled eggs

  • Fried peanuts

  • Sliced cucumbers

  • Fresh or frozen banana leaf


  1. Set up a tiered steamer (see notes), filling the bottom section with about 3 inches of water. Bring to a boil over high heat. Line the steamer tier with cheesecloth.

    Overhead view of steamer set up

    Serious Eats / Michelle Yip

  2. Meanwhile, place the rice in a strainer and rinse the grains under running water until the water is almost clear. Drain rice, then transfer to a 10-inch nonstick skillet and add the coconut milk, 7 ounces (200ml) water, pandan leaves, ginger, and salt. Cook on medium heat, stirring continuously, until it thickens like rice pudding, 8-10 minutes.

    Overhead view of rice with pandan leaves, ginger, and coconut milk added to skillet and stirring rice

    Serious Eats / Michelle Yip

  3. Transfer the rice mixture to the cheesecloth-lined steamer tier and spread it in a roughly even layer. Set steamer tier over bottom section of boiling water, cover, and steam over medium heat until the grains are fully cooked, about 45 minutes; start checking rice doneness after 35 minutes of steaming. Once the rice reaches your preferred texture, turn off the heat and leave it to continue steaming, covered, until the steaming stops. The rice should be just cooked, with separate grains and a rich flavor of coconut.

    Overhead view of rice in steamer before and after cooking

    Serious Eats / Michelle Yip

  4. Serve with sambal tumis and other nasi lemak accompaniments, depending on your preference (note that it's typical to leave the pandan leaves in the nasi lemak, as it's understood they will be removed at the table by the diner; do not eat them). If desired, nasi lemak can be served on a banana leaf, which will contribute its own fragrance to the dish as the rice and toppings are eaten.

    Overhead view of finished Nasi Lemak

    Serious Eats / Michelle Yip

Special Equipment

Tiered steamer (see notes), cheesecloth


If you don’t have a tiered stovetop steamer, you can use a large pot with a steamer insert, or a wok with a bamboo steamer. 

This recipe was tested with boxed coconut milk, which comes in a variety of sizes. If using canned, stir the coconut cream and coconut milk together before measuring.

Ikan bilis can be found at any good Asian grocery store, especially those specializing in Southeast Asian imports. Ask for ‘dried anchovies’—every Southeast Asian country has their own name for it. They are sometimes sold already cleaned and gutted, but those will be more expensive; if yours aren't cleaned, you'll need to prep them by removing the heads, then splitting the fish lengthways so you can gut and debone it. The bigger varieties tend to be quite salty, so seek out the smaller varieties. Ikan bilis are usually sold in their uncooked dried form, so you'll likely have to fry themyourself: for 50g cleaned ikan bilis, heat up 1 tablespoon neutral cooking oil in a skillet over medium heat, then fry the ikan bilis, turning occasionally, until golden brown (about 3-5 minutes). Remove and drain on a paper towel–lined sheet tray. Do not salt, they will be plenty salty.

Make-Ahead and Storage

Because of the fatty nature of coconut milk, the cooked rice will not last for longer than 1-2 days in the fridge. Freezing is not recommended as the fat in the rice will split when thawed and result in oily rice.

Nutrition Facts (per serving)
175 Calories
7g Fat
25g Carbs
3g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 6
Amount per serving
Calories 175
% Daily Value*
Total Fat 7g 9%
Saturated Fat 6g 31%
Cholesterol 0mg 0%
Sodium 393mg 17%
Total Carbohydrate 25g 9%
Dietary Fiber 0g 1%
Total Sugars 0g
Protein 3g
Vitamin C 1mg 3%
Calcium 15mg 1%
Iron 2mg 12%
Potassium 118mg 3%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
(Nutrition information is calculated using an ingredient database and should be considered an estimate.)