Nasi Uduk (Jakarta-Style Coconut Rice with Accompaniments)

Fragrant, gently savoury and designed for serving with a spread of side dishes, nasi uduk is one of Jakarta’s best-known coconut rice preparations. Jasmine rice is simmered with coconut milk, lemongrass, pandan and bay leaf so the grains absorb richness without becoming heavy, then left to steam until fluffy. Crisp fried shallots bring sweetness and crunch, while cucumber and roasted peanuts add freshness and a nutty finish. It works as a simple rice dish in its own right, but is especially useful as a base for Indonesian-style meals with vegetables, eggs, tofu, tempeh or grilled dishes alongside.
Cuisine style Jakarta-style Indonesian rice
Flavor profile Savoury • Fragrant • Nutty
Techniques Gentle simmering • Steaming • Shallow-frying
Cooking style Make-ahead friendly • Meal prep friendly
Time commitment Under 1 hour
Key equipment Saucepan • Frying pan • Sieve

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
Print
  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.

Made this recipe? Rate it — a comment is optional.

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.

If you leave a comment, use 10–500 characters.

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
Beginner friendly Freezer friendly Kid friendly

Plan your meals and get a complete grocery list automatically.

Add to meal planner

Equipment you'll need

Advertisement

Recommended tools for this recipe

Best overall

WMF Mini Saucepan 16 cm with Lid

Compact stainless steel saucepan
  • High-quality stainless steel
  • Even heat distribution
  • Higher price point

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

Advertisement

These tools help you get better results with less effort.

Best overall

WMF Mini Saucepan 16 cm with Lid

Compact stainless steel saucepan
  • High-quality stainless steel
  • Even heat distribution
  • Higher price point
Best value

T-fal Specialty Nonstick Handy Pot with Glass Lid 3 Quart

Affordable nonstick saucepan
  • Easy food release
  • Dishwasher safe
  • Not induction compatible
Top quality

All-Clad Tri-Ply Stainless Steel Saucepan

Professional-grade tri-ply saucepan
  • Excellent heat control
  • Premium build quality
  • Expensive

Browse alphabetically

Looking for a specific recipe? Choose a letter below to jump directly to recipes starting with that letter or number.

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 Google

Every 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.