Nasi Uduk (Jakarta-Style Coconut Rice with Accompaniments)
Why this recipe works
- Fragrant coconut base: Coconut milk, lemongrass, pandan and bay leaf season the rice as it cooks, so the flavour is built directly into the grains.
- Balanced textures: Fluffy coconut rice is finished with crisp shallots, crunchy peanuts and fresh cucumber for contrast.
- Easy to serve with other dishes: The rice is lightly seasoned, making it a flexible accompaniment for vegetables, eggs, tofu, tempeh or richer mains.
Get the most out of this recipe
Ingredient notes
- Choose aromatic rice: Jasmine rice suits nasi uduk because its light fragrance complements the coconut milk and aromatics without becoming too heavy.
- Pandan adds the signature aroma: Pandan gives the rice a distinctive soft, grassy sweetness. If unavailable, the dish will still work, but the fragrance will be less characteristic.
- Drain the rice well: After rinsing, let the rice drain thoroughly so the coconut milk mixture does not become diluted.
Texture tips
- Keep the heat very low: Once the liquid is just below the rice surface, cook gently and keep the lid tight so the grains steam evenly.
- Do not skip the covered rest: Leaving the rice covered after cooking lets the remaining steam finish the grains and helps the texture settle before fluffing.
- Drain fried shallots briefly: Lift the shallots out once deeply golden and let excess oil drain so they stay crisp on top of the rice.
Authenticity notes
- Jakarta-style serving: Nasi uduk is closely associated with Jakarta and is commonly served as fragrant coconut rice with simple crunchy garnishes and savoury accompaniments.
- Serve with savoury sides: It pairs naturally with fried tofu, tempeh, eggs, chicken, vegetables or sambal, depending on how substantial you want the meal to be.
Make-ahead tips
- Keep toppings separate: Store the rice separately from the fried shallots, cucumber and peanuts so the toppings keep their texture.
- Reheat gently: Warm the rice covered over low heat with a little water until piping hot, then add the crisp toppings just before serving.
- Freezer-friendly rice: The cooked rice can be frozen once cooled, then thawed and reheated gently before adding the fresh and crunchy accompaniments.
Equipment you'll need
Ingredients
Instructions
- Rinse the rice in a sieve under cold water until the water runs mostly clear, then drain well. Bruise the lemongrass by bashing it lightly, and tie the pandan leaves into a knot. Thinly slice the shallots and slice the cucumber into half moons.
- Put the rice in a saucepan with the coconut milk, water, lemongrass, pandan leaves, bay leaves and fine sea salt. Bring to a gentle simmer over medium heat, stirring once or twice so the rice does not catch. Once you see small bubbles and the liquid is just below the surface of the rice, turn the heat to low and cover tightly.
- Cook on the lowest heat for 12 minutes, then turn off the heat and leave covered for 10 minutes to steam. Remove the lemongrass, pandan leaves and bay leaves, then fluff the rice with a fork. Keep covered while you make the topping.
- Heat the vegetable oil in a frying pan over medium heat. Fry the shallots for 6 to 10 minutes, stirring often, until deep golden and crisp. Lift out with a slotted spoon and drain briefly before serving.
- Serve the coconut rice warm, topped with the fried shallots. Add the cucumber and roasted peanuts on the side for crunch and freshness. If you like, lightly crush the peanuts so they scatter more evenly.
Recipe notes
Tips
- For the fluffiest rice, make sure it is well drained after rinsing so the liquid ratio stays consistent.
- Keep the heat very low during the covered cook; if you smell scorching, move the pan to a smaller ring and reduce the heat further.
- If serving to young children, chop the roasted peanuts more finely to reduce choking risk.
Substitutions
- Replace Jasmine rice with basmati rice for a slightly drier, more separate grain.
- Replace Vegetable oil with sunflower oil for a similarly neutral flavour when frying the shallots.
Storage
- Refrigerate up to 3 days
- Cool the rice quickly, then refrigerate in an airtight container. Reheat in a saucepan with a splash of water over low heat, covered, until piping hot; store the fried shallots separately and add after reheating. The rice can be frozen for up to 2 months and reheated from thawed as above.
Ratings & reviews
Liked this recipe? Share your feedback to support our cooking community.
Tried this recipe?
Choose 1–5 stars. A comment is optional.
Stay inspired
Discover new recipes, seasonal favourites and cooking inspiration every day. Follow JustRecipes on Pinterest and Spillt.
Recipe overview
- Servings: 4 servings
- Total time: 45min (15min active)
- Difficulty: Easy
- Cuisine: Indonesian
-
Allergens:
Peanuts
Plan your meals and get a complete grocery list automatically.
Add to meal plannerEquipment you'll need
Got ingredients left?
Find recipes using ingredients from this recipe or what you already have at home.
Find recipes with these ingredients →Make this recipe easier next time
AdvertisementThese tools help you get better results with less effort.
WMF Mini Saucepan 16 cm with Lid
- High-quality stainless steel
- Even heat distribution
- Higher price point
T-fal Specialty Nonstick Handy Pot with Glass Lid 3 Quart
- Easy food release
- Dishwasher safe
- Not induction compatible
All-Clad Tri-Ply Stainless Steel Saucepan
- Excellent heat control
- Premium build quality
- Expensive
Enjoy cooking with JustRecipes?
Add JustRecipes as one of your preferred Google sources to discover our recipes more easily across Google Search.
Add JustRecipes to GoogleEvery recipe on JustRecipes follows the same structured editorial process. Learn how recipes are created, validated, translated, illustrated, and continuously improved across the platform. How we create recipes.
























