
Nasi lemak is Malaysia’s national dish, and once you try it, you’ll understand why. Fragrant coconut rice served with crispy fried anchovies, roasted peanuts, hard-boiled egg, cucumber slices, and spicy sambal sauce—it’s a complete meal that’s traditionally eaten for breakfast but is delicious any time of day. The combination of creamy coconut rice, crunchy toppings, and fiery sambal creates this perfect balance that’s absolutely addictive.
I first tried nasi lemak at a hawker stall in Kuala Lumpur, and I was blown away by how something so simple could be so incredibly flavorful. The coconut rice was fragrant and creamy, the sambal was spicy and complex, and all the toppings added different textures and flavors. When I got home, I knew I had to learn how to make it. Now it’s one of my favorite dishes to make when I want something special for breakfast or brunch.
Why This Recipe Works
What makes nasi lemak special is how all the components work together. The coconut rice is the foundation—fragrant, creamy, and slightly sweet. The sambal (spicy chili paste) adds heat and depth. The crispy anchovies and roasted peanuts add crunch and saltiness. The hard-boiled egg adds richness. And the cucumber provides cooling freshness. Every element has a purpose, and together they create this harmonious, incredibly satisfying meal.
The key is cooking the rice in coconut milk with pandan leaves and lemongrass, which infuses it with incredible aroma and flavor. The sambal needs to be made from scratch for the best flavor—it’s what makes or breaks the dish.
The Complete Recipe
What You’ll Need
For the Coconut Rice:
2 cups jasmine rice
1½ cups coconut milk
1 cup water
2 pandan leaves, tied in a knot (or 1 teaspoon pandan extract)
1 stalk lemongrass, bruised
2 slices fresh ginger
1 teaspoon salt
For the Sambal (Chili Paste):
10-12 dried red chilies, soaked in hot water
4 shallots, roughly chopped
3 cloves garlic
1 tablespoon belacan (shrimp paste), toasted
1 tablespoon tamarind paste mixed with 2 tablespoons water
2 tablespoons sugar
1 teaspoon salt
3 tablespoons vegetable oil
For the Toppings:
1 cup ikan bilis (dried anchovies)
½ cup raw peanuts
4 hard-boiled eggs, halved
1 cucumber, sliced
Fried chicken or rendang (optional but traditional)
Banana leaves for serving (optional)
Step-by-Step Instructions
Step 1: Make the Coconut Rice
Rinse the jasmine rice until the water runs clear. Drain well.
In a rice cooker or pot, combine the rice, coconut milk, water, pandan leaves, lemongrass, ginger, and salt.
If using a rice cooker, cook as you normally would. If using a pot, bring to a boil, then reduce heat to low, cover, and simmer for 15-18 minutes until the rice is tender and the liquid is absorbed.
Remove the pandan leaves, lemongrass, and ginger before serving. Fluff the rice with a fork.
Step 2: Make the Sambal
Drain the soaked dried chilies. In a blender or food processor, blend the chilies, shallots, garlic, and toasted belacan into a smooth paste. Add a little water if needed to help it blend.
Heat the oil in a wok or pan over medium heat. Add the chili paste and cook, stirring constantly, for 8-10 minutes until the paste darkens and becomes fragrant. The oil will start to separate from the paste.
Add the tamarind water, sugar, and salt. Continue cooking for another 5 minutes, stirring frequently, until the sambal is thick and glossy.
Taste and adjust seasoning. The sambal should be spicy, slightly sweet, and tangy. Set aside.
Step 3: Prepare the Anchovies and Peanuts
Heat about 2 tablespoons of oil in a pan over medium heat. Add the peanuts and fry for 3-4 minutes, stirring constantly, until golden brown. Remove and drain on paper towels.
In the same pan, add the dried anchovies. Fry for 2-3 minutes until crispy and golden. Remove and drain on paper towels.
Step 4: Prepare the Eggs and Cucumber
Hard-boil the eggs (10 minutes in boiling water), then peel and halve them.
Slice the cucumber into thin rounds or sticks.
Step 5: Assemble and Serve
If using banana leaves, place a piece on each plate for authentic presentation.
Scoop a generous portion of coconut rice onto each plate.
Arrange the toppings around the rice: fried anchovies, roasted peanuts, hard-boiled egg halves, and cucumber slices.
Add a generous spoonful of sambal on the side.
If serving with fried chicken or rendang, place it on the plate as well.
Serve immediately. Mix everything together before eating—that’s the traditional way.
Tips I’ve Learned Along the Way
Pandan Leaves are Essential: They give the rice its distinctive aroma. If you can’t find fresh pandan leaves, use pandan extract, but fresh is always better.
Toast the Belacan: Toasting the shrimp paste before blending removes the raw smell and intensifies the flavor. Wrap it in foil and toast in a dry pan for 2-3 minutes.
Make Sambal Ahead: Sambal tastes better the next day as the flavors meld. Make it ahead and store in the refrigerator for up to a week.
Adjust Spice Level: Use fewer chilies for milder sambal, or add more for extra heat. You can also remove the seeds from the chilies.
Crispy Anchovies: Make sure the anchovies are completely dry before frying, or they’ll splatter. Fry them until crispy but not burnt.
Coconut Milk Quality: Use good quality coconut milk. The creamier, the better. Shake the can well before using.
Traditional Additions: Nasi lemak is often served with fried chicken, beef rendang, or sambal squid for a more substantial meal.
Variations I Love:
Nasi Lemak with Rendang: Add beef or chicken rendang
Seafood Version: Top with sambal squid or fried fish
Vegetarian: Skip the anchovies and add fried tofu or tempeh
Spicy Egg: Fry the eggs instead of boiling for extra richness
Extra Sambal: Make double the sambal—you’ll want it
Why This Dish is Special
Nasi lemak is comfort food at its finest. It’s the kind of dish that Malaysians eat for breakfast, lunch, or dinner, and it never gets old. The combination of creamy coconut rice, spicy sambal, crunchy anchovies and peanuts, and cooling cucumber is just perfect.
What I love most is how it’s a complete meal in one plate. You get protein from the eggs and anchovies, carbs from the rice, healthy fats from the coconut milk and peanuts, and vegetables from the cucumber. And the sambal ties everything together with its spicy, tangy, complex flavor.
It’s also incredibly versatile. You can keep it simple with just the basic toppings, or make it a feast by adding fried chicken, rendang, or other proteins. Either way, it’s always delicious.
Serving Suggestions
Nasi lemak is traditionally served for breakfast, but it’s perfect any time of day:
Breakfast or brunch (traditional)
Lunch or dinner with extra protein
Wrapped in banana leaf for authentic presentation
With Malaysian teh tarik (pulled tea)
With iced coffee or tea
The Bottom Line
If you’ve never tried nasi lemak, you’re missing out on one of Southeast Asia’s greatest dishes. The fragrant coconut rice, spicy sambal, and variety of toppings create this incredible combination that’s greater than the sum of its parts.
I make this whenever I want something special for breakfast or when I’m craving those bold Malaysian flavors. It takes a bit of effort to prepare all the components, but the result is absolutely worth it. And once you’ve made the sambal, you can use it for multiple meals.
Give it a try, and I think you’ll understand why nasi lemak is Malaysia’s national dish. It’s one of those meals that makes you happy with every bite.
Have you tried nasi lemak before? What’s your favorite Malaysian dish? Let me know in the comments!
Recipe Card
Nasi Lemak (Malaysian Coconut Rice)
Prep Time: 30 minutes
Cook Time: 30 minutes
Total Time: 1 hour
Servings: 4
Difficulty: Intermediate
Ingredients:
Coconut Rice:
2 cups jasmine rice
1½ cups coconut milk
1 cup water
2 pandan leaves, tied in knot
1 stalk lemongrass, bruised
2 slices fresh ginger
1 teaspoon salt
Sambal:
10-12 dried red chilies, soaked
4 shallots, chopped
3 cloves garlic
1 tablespoon belacan (shrimp paste), toasted
1 tablespoon tamarind paste + 2 tablespoons water
2 tablespoons sugar
1 teaspoon salt
3 tablespoons vegetable oil
Toppings:
1 cup ikan bilis (dried anchovies)
½ cup raw peanuts
4 hard-boiled eggs, halved
1 cucumber, sliced
Fried chicken or rendang (optional)
Instructions:
Rinse rice until water runs clear
Combine rice, coconut milk, water, pandan, lemongrass, ginger, salt in rice cooker
Cook until tender, remove aromatics, fluff rice
Blend soaked chilies, shallots, garlic, toasted belacan into paste
Heat oil, cook chili paste 8-10 minutes until fragrant
Add tamarind water, sugar, salt; cook 5 minutes until thick
Fry peanuts 3-4 minutes until golden, drain
Fry anchovies 2-3 minutes until crispy, drain
Hard-boil eggs, peel, halve
Slice cucumber
Plate rice with all toppings arranged around it
Serve with sambal on side
Tips for Success:
Use pandan leaves for authentic aroma
Toast belacan before blending
Make sambal ahead (better next day)
Adjust chili amount for spice level
Use good quality coconut milk
Fry anchovies until crispy
Storage:
Sambal: refrigerate up to 1 week
Rice: refrigerate up to 3 days
Best assembled fresh
Nutrition (per serving):
Calories: ~580
Fat: 28g
Protein: 18g
Carbohydrates: 65g
Fiber: 4g
