Malaysian nasi lemak is fragrant rice cooked with coconut milk, usually served with spicy sambal, crisp anchovies, peanuts, cucumber, and egg. The combination works because creamy, gently scented rice balances the sambal’s heat and the toppings’ salty crunch; versions vary from home to home and across Malaysia.
Ingredients
- 2 cups (370 g) jasmine rice, or another long-grain white rice
- 1 cup (240 ml) canned coconut milk, well stirred
- 1 cup (240 ml) water, plus 2 tablespoons (30 ml) for adjusting the sambal if needed
- 1 pandan leaf, about 12 inches (30 cm), tied in a knot; see the substitution note below
- 3 thin slices fresh ginger, about 10 g
- 1/2 teaspoon (3 g) fine salt, plus more to taste
- 6 dried red chiles, about 8 g, stems removed
- 1/2 cup (50 g) thinly sliced shallots, divided: 1/3 cup for sambal and the rest for blending
- 2 cloves garlic, about 6 g
- 1 teaspoon (5 g) belacan, or Malaysian fermented shrimp paste
- 2 tablespoons (30 ml) neutral cooking oil
- 1 tablespoon (15 ml) tamarind concentrate, or 2 tablespoons (30 ml) thick tamarind water
- 1 tablespoon (12 g) palm sugar, grated, or light brown sugar
- 1/2 cup (35 g) dried anchovies, preferably small ikan bilis
- 4 large eggs
- 1/2 cup (70 g) raw skinless peanuts
- 1/2 medium cucumber, about 150 g, sliced into rounds
- 1 lime, cut into wedges, for serving
Instructions
- Soak the chiles and prepare the rice. Put the dried chiles in a small heatproof bowl, cover with boiling water, and soak for 15 minutes so they soften enough to blend. Meanwhile, rinse the rice in a bowl of cold water, gently swishing it with your fingers. Drain and repeat until the water is less cloudy, then drain well. Rinsing removes excess surface starch and helps the cooked grains stay separate. Measure the coconut milk and water before cooking; shake or stir the coconut milk first so its cream and liquid are evenly mixed.
- Cook the coconut rice. Put the rinsed rice, coconut milk, 1 cup (240 ml) water, pandan leaf, ginger, and salt in a saucepan with a tight-fitting lid. Stir once, then bring to a gentle simmer over medium heat. As soon as the liquid simmers, cover, turn the heat to low, and cook for about 18–20 minutes, until the liquid has been absorbed and the rice is tender. Keep the lid closed while it cooks; frequent peeking releases steam and can leave the top undercooked. Remove the pan from the heat and leave it covered for 10 minutes. Discard the ginger and pandan, then fluff the rice gently with a fork or rice paddle.
- Blend and fry the sambal. Drain the softened chiles. Blend them with the garlic, about 2 tablespoons (20 g) of the sliced shallots, belacan, tamarind, and 2 tablespoons (30 ml) water until mostly smooth. Warm the oil in a frying pan over medium-low heat. Add the remaining shallots and cook for 3–4 minutes, stirring, until softened. Add the chile mixture and cook for about 18–20 minutes, stirring often and lowering the heat if it spits or catches. The sambal should darken, smell mellow rather than raw, and become thick enough to mound on a spoon. Stir in the palm sugar and taste; add salt or a little more tamarind if needed. If it becomes too thick before the raw chile smell has cooked off, add water a teaspoon at a time. Keep the pan uncovered so moisture can evaporate.
- Cook the anchovies. While the sambal finishes, rinse the dried anchovies briefly in a sieve if they seem dusty, then pat them thoroughly dry. Fry them in a small dry skillet over medium heat for about 5–7 minutes, stirring frequently, until crisp and steaming throughout. For a temperature check, fish should reach 145°F (63°C), the USDA FSIS safe minimum. Dried anchovies vary in saltiness, so taste one before adding any extra salt to the finished plate. Transfer them to a plate; they will crisp further as they cool.
- Boil the eggs. Place the eggs in a saucepan and cover with cold water by about 1 inch (2.5 cm). Bring to a boil, turn off the heat, cover, and let stand for 9 minutes. Transfer the eggs to cold water to stop the cooking, then peel and halve them. For whole boiled eggs, cook until the yolk and white are firm. If you prefer soft-centered eggs, shorten the standing time, but the traditional hard-cooked option is easier to prepare ahead and serve neatly.
- Toast the peanuts. Put the peanuts in a clean, dry skillet over medium-low heat. Toast for about 2–3 minutes, stirring or shaking the pan frequently, until fragrant and lightly golden. Take them off the heat promptly; they can go from toasted to scorched quickly. Let them cool, then rub off any loose skins if desired.
- Plate and serve. Divide the warm rice among four plates or bowls. Add sambal, anchovies, peanuts, cucumber slices, and two egg halves to each serving, with lime wedges alongside. Keep the sambal in a small mound rather than stirring it into all the rice at once, so each person can choose how much heat and salt to add. Serve while the rice is warm and the anchovies and peanuts are still crisp.
Tips
- Use the right rice-to-liquid balance. Rice brands absorb liquid differently, and coconut milk varies in thickness. Start with the listed amounts, keep the lid closed, and check only near the end of the cooking time. If the grains are still firm and the pan is dry, add 1 tablespoon (15 ml) hot water, cover, and cook for another 2–3 minutes. Avoid adding a large splash of liquid at once, which can make the bottom mushy.
- Find pandan or substitute thoughtfully. Fresh or frozen pandan leaves give the rice its distinctive grassy, floral aroma and are sold at many Southeast Asian grocery stores. If you cannot find pandan, leave it out rather than adding an unrelated herb; the rice will still be coconut-scented, but it will lack that familiar pandan fragrance. A small strip of lime zest can add freshness, though it changes the flavor.
- Control the sambal’s heat. Dried chiles differ in size and intensity. Use fewer chiles for a milder sauce, or remove some seeds before soaking; add a fresh chile later only if you want more heat. Fry the blended paste gently until its raw smell fades. Cooking it too quickly over high heat can scorch the chile and belacan before the shallots soften.
- Keep the crunchy toppings dry. Pat anchovies dry before frying, and cool toasted peanuts before storing them. Moisture softens both. Belacan has a strong smell while cooking, so provide ventilation and keep it tightly wrapped in the refrigerator after opening. If you avoid shellfish, omit the shrimp paste; the sambal will be less savory but still flavorful.
Serving Suggestions
Serve nasi lemak as a complete breakfast, lunch, or dinner: the coconut rice is the base, while the sambal, eggs, cucumber, anchovies, and peanuts supply contrasting flavors and textures. For a classic-looking plate, place the toppings in separate small piles rather than mixing them through the rice. That makes it simple for diners to portion the spicy sambal and salty anchovies to taste. A lime wedge adds a bright finish; squeeze it over the sambal or cucumber rather than over all the crisp toppings.
For a larger meal, add a vegetable side such as lightly cooked greens or a simple cucumber salad. Some meals include fried chicken, rendang, or another protein, but those are additions rather than requirements for this version. If serving extra cooked meat or seafood, prepare and handle it separately and cook it to its appropriate safe temperature. To keep the meal manageable, make the sambal and boil the eggs ahead, then cook or rewarm the rice close to serving time and toast the peanuts shortly before plating.
Variations
Make it vegetarian. Leave out the dried anchovies and belacan. Increase the peanuts, or add crisp fried tofu for another savory topping. Because both anchovies and shrimp paste contribute salt and depth, taste the sambal after cooking and adjust with a little salt, sugar, or tamarind rather than replacing them with a large amount of any one ingredient. Check labels on packaged sambal ingredients if you need to avoid fish or shellfish.
Adjust the rice aroma. If you cannot get pandan, cook the coconut rice with ginger alone. For a richer, softer result, replace 2 tablespoons (30 ml) of the water with coconut milk, understanding that the grains may be a little stickier. For lighter rice, use 3/4 cup (180 ml) coconut milk and 1 1/4 cups (300 ml) water. Keep the total liquid close to the original amount and make a note of how your rice brand responds.
Change the sambal’s balance. Add a little more palm sugar for a rounder, sweeter sauce, or extra tamarind for a sharper sour note. If dried chiles are unavailable, use a mild dried chile variety from a Latin American or general grocery aisle; the flavor will not be exactly the same, but it will still make a useful chile paste. Avoid substituting fresh chiles in equal volume without tasting, because their water content and heat can change the sauce’s texture and strength.
Choose different accompaniments. Sliced tomato can join or replace some cucumber, and cashews can stand in for peanuts if needed. The resulting plate will be less traditional in its specific combination, but still follows the same idea of pairing coconut rice with a hot, savory condiment and contrasting toppings. For a milder family-style meal, set the sambal on the table instead of spooning it onto each plate.
Storage and Reheating
Refrigerate cooked rice, sambal, eggs, and other perishable leftovers within 2 hours of cooking; do not leave the rice at room temperature while the meal lingers. Store components separately in shallow, covered containers. Cooked rice and sambal keep for 3–4 days in the refrigerator, while hard-cooked eggs in their shells are best used within 1 week. Keep cucumber, peanuts, and anchovies separate: cucumber is best freshly sliced, and the dry toppings stay crisper when protected from moisture.
Reheat rice until steaming hot throughout, adding a teaspoon or two of water and covering it to keep it from drying out. Leftovers should reach 165°F (74°C), measured with a food thermometer. Reheat only the amount you plan to eat, and avoid repeatedly cooling and reheating the same portion. Sambal can be warmed gently in a small pan or microwave-safe dish. If freezing rice, cool it promptly, freeze in meal-size portions, and use within about 1 month for best texture; thaw in the refrigerator or reheat from frozen until it reaches 165°F (74°C). Do not freeze cucumber or the crisp toppings if you want to preserve their texture.
Frequently Asked Questions
What does nasi lemak mean? The name is commonly translated from Malay as “rich” or “creamy rice,” referring to rice cooked with coconut milk. It is a well-known Malaysian dish, and its sides and serving style vary by region, household, and occasion. This recipe gives one practical combination rather than claiming a single definitive version.
Can I make nasi lemak in a rice cooker? Yes. Add rinsed rice, coconut milk, water, salt, ginger, and pandan to the cooker, keeping the total liquid close to the amount recommended for your rice. Coconut milk can foam more than water, so do not fill the cooker beyond its safe limit. Use the regular white-rice setting, then let the rice stand covered for 10 minutes before fluffing. Cook the sambal and toppings separately.
Can I use leftover rice? Freshly cooked rice gives the best coconut aroma because it cooks in the coconut milk and pandan. Plain leftover rice can be warmed with a little coconut milk, but it will not absorb the same flavor throughout. If using leftovers, refrigerate them promptly, reheat to 165°F (74°C), and serve the sambal and toppings alongside. Do not leave cooked rice out for more than 2 hours.
How can I make the sambal less spicy? Start with three or four dried chiles instead of six, and remove their seeds before soaking if you want to reduce the heat further. Chile strength varies, so taste only after the paste has cooked. You can soften the finished sambal with a little extra sugar or tamarind, but those additions balance heat rather than removing it; serve a small portion and add more as desired.
Can I prepare any components in advance? The sambal can be cooked up to 3–4 days ahead and refrigerated in a covered container. Eggs can be boiled in advance and refrigerated, and the rice can be cooked shortly before serving for the best texture. Keep peanuts and anchovies in separate airtight containers after they cool, and slice the cucumber just before plating. Reheat rice and other leftovers to 165°F (74°C).
Related
- Malaysian Indian Curry Recipe: Chicken and Potatoes
- Malaysian Dahl Recipe with Red Lentils and Curry Leaves
- Malaysian Fried Bee Hoon with Shrimp and Vegetables
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).