🍽️Nasi Uduk
🇮🇩 Main Course · Indonesia

Nasi Uduk

Nasi uduk is the fragrant coconut rice that defines Jakarta's street breakfast, a tradition believed to have emerged from the Betawi (the city's indigenous population) adaptation of coconut rice originally used for festive occasions, gradually transformed into an everyday dish. The name "uduk" refers to the very technique of cooking rice in coconut milk instead of plain water. What distinguishes nasi uduk from other coconut rice dishes in the region, like Malaysia's nasi lemak, is the diverse platter of sides that accompanies it — from sweet-spicy tempeh orek to fried chicken, eggs and prawn crackers. Jakarta's street vendors serve it early in the morning, wrapped in banana leaves or paper, as a quick, filling snack before a day of work.

Total time40m
Active time30m
Servings4
DifficultyMedium
Cost$
🥥

Cooked in coconut milk

The rice is cooked directly in coconut milk instead of water, absorbing its fat and sweetness.

🌿

Aromatic leaves

Pandan, Indonesian bay leaves and lemongrass perfume the rice as it cooks.

🍛

Varied platter

Traditionally served with multiple sides: chicken, egg, tempeh, sambal and crackers.

🌅

Popular breakfast

One of the most common street breakfasts in Jakarta.

Ingredients 4 servings

  • 500g long-grain rice
  • 400ml coconut milk
  • 200ml water
  • 2 pandan leaves, knotted
  • 2 Indonesian bay leaves
  • 1 lemongrass stalk, bruised
  • 2 garlic cloves, crushed
  • 1 shallot, sliced
  • Salt to taste
  • Crispy fried shallots, for serving
  • Sliced cucumber, for serving
  • Sambal, for serving

How to make it

  1. 1RINSE THE RICE: Rinse the rice under cold water several times, until the water runs clear, then drain well.
  2. 2MIX THE LIQUIDS: Combine the coconut milk with the water in a pot, add salt to taste.
  3. 3ADD AROMATICS: Add the pandan leaves, bay leaves, lemongrass, crushed garlic and sliced shallot to the liquid.
  4. 4BRING TO A SIMMER: Bring the mixture to a gentle simmer, stirring so the coconut milk doesn't catch at the bottom.
  5. 5ADD THE RICE: Add the rinsed rice to the simmering liquid, stir once and cover the pot.
  6. 6COOK OVER LOW HEAT: Let the rice cook over low heat 15-18 minutes, without lifting the lid, until the liquid is fully absorbed.
  7. 7LET IT STEAM: Turn off the heat and let the rice sit covered another 10 minutes, to steam.
  8. 8FLUFF: Remove the leaves and lemongrass stalk, then fluff the rice gently with a fork.
  9. 9SERVE: Serve warm, alongside sides such as chicken, egg, tempeh, sambal and fried shallots.

Nutritional info

per serving (~350 g)

Calories 475 kcal
Protein 17 g
Carbs 65 g
Fat 13 g
Fiber 5 g

Estimated nutritional values.

Pairs perfectly with

🍚 Thai jasmine rice
🌿 Fresh Thai basil and coriander
🌶️ Birds-eye chillies in fish sauce
🍋 Lime wedges
🥗

Plan your meals for the entire week

Generate a personalized plan with varied recipes and automatic shopping list.

Generate my plan now →
Indonesia