Coconut Rice (Nasi Uduk)
Nasi Uduk Say it: NAH-see OO-dook
Nasi uduk is Jakarta's fragrant coconut rice, a Betawi favorite often eaten for breakfast or lunch. Jasmine rice is simmered in coconut milk with lemongrass, salam leaf, and pandan until each grain is rich but separate, then served with simple sides such as cucumber, hard-boiled egg, fried shallots, and sambal. The rice is gently sweet from coconut, savory from salt, and aromatic from the herbs. It is a staple of Jakarta street stalls and home tables, valued for its comforting flavor and versatility.
Coconut Rice (Nasi Uduk)
Nasi Uduk
Pronounced NAH-see OO-dook
- Serves
- 4
- Prep
- 20 min
- Cook
- 40 min
- Total
- 1 hr
- Level
- Easy
Also nut-free.
Allergens: contains egg. Check labels on packaged ingredients.
Ingredients
Amounts are scaled. Cooking times and pan sizes stay the same.
For the coconut rice
To serve
Method
Rinse the rice in a bowl under cold water, changing the water 3 to 4 times, until it runs almost clear. Drain well in a sieve for 10 minutes.
In a heavy saucepan, combine the coconut milk, 1 cup (240 ml) water, lemongrass, salam leaves, pandan (if using), and 1 tsp salt. Warm over medium-low heat for 3 to 4 minutes, stirring now and then, until gently steaming but not boiling hard.
Add the drained rice and stir once to spread it evenly. Bring to a gentle boil, then lower the heat to the lowest setting, cover tightly, and cook for 15 to 18 minutes, until the liquid is absorbed and the rice is tender.
Turn off the heat and let the rice rest, covered, for 10 minutes. Remove the lemongrass, salam leaves, and pandan, then fluff the rice with a fork.
While the rice rests, put the eggs in a saucepan, cover with 4 cups (960 ml) water, and bring to a boil. Cook for 9 minutes, then cool in cold water, peel, and cut in half.
Heat 1/2 cup (120 ml) oil in a small pan over medium heat. Fry the sliced shallots, stirring often, for 5 to 7 minutes, until golden brown and crisp; drain on paper towels.
For the sambal, pound or blend the chilies, garlic, 1 tsp salt, and sugar into a coarse paste. Heat 2 tbsp (30 ml) oil in a small pan and fry the paste for 4 to 5 minutes, until fragrant and the oil separates; taste and adjust salt.
Spoon the warm coconut rice onto plates and serve with the halved eggs, cucumber slices, fried shallots, and sambal.
Regional variants
In Jakarta, nasi uduk is often served with semur daging, fried chicken, or bihun goreng; simpler home versions may add fried tempeh and tofu.
Cook's notes
- Rinse the rice until the water is nearly clear so the cooked grains stay separate rather than sticky.
- Bruise the lemongrass well and remove it before serving so it releases aroma without becoming bitter.
- Let the rice rest covered after cooking; this finishes the grains and makes fluffing easier.
Serve with
Cucumber, hard-boiled egg, fried shallots, and sambal; in Jakarta, semur beef or fried chicken are common additions.
Make ahead and storage
Cook the rice up to 1 day ahead, refrigerate, and steam to reheat. Fry the shallots and make the sambal up to 2 days ahead and store separately.





