Ingredients and steps on one page. Print it, or choose “Save as PDF” in the print dialog.
Sekai Gohan
Xôi Sắn: Hanoi Cassava Sticky Rice Steamed Twice

Ingredients
| Ingredient | Amount | Role |
|---|---|---|
| Glutinous rice (nếp) | 1 lb 2 oz (500 g) | The sticky base; soaked well before steaming |
| Cassava (sắn / khoai mì) | 1⅓ lb (600 g) | Soft, starchy chunks through the rice |
| Coarse salt (muối hạt) | 1 tsp | Seasons the rice and cassava before steaming |
| Coarse salt, for the soaking brine | As needed | Salt water for soaking the cassava |
| Cooking oil (dầu ăn), for mixing | 3 tbsp | Coats the grains before the first steaming |
| Cooking oil (dầu ăn), for resting | 2 tbsp | Gloss and moisture before the second steaming |
| Cooking oil (dầu ăn), for scallion oil | 3 tbsp | Base of the green scallion oil |
| Cooking oil (dầu ăn), for frying shallots | Plenty, enough to cover | Fries the shallots; can be reused for the scallion oil and mixing |
| Fresh coconut flesh (cùi dừa) | 1¾ oz (50 g) | Shredded thin and scattered on top |
| Bottled or canned coconut milk (nước cốt dừa) | 2 tbsp + 2 tsp (40 ml) | Mixed in before the second steaming |
| Scallions (hành lá) | ¾ oz (20 g) | Sliced thin for the scallion oil |
| Shallots (hành khô) | 1½ oz (40 g) | Sliced thin and fried crisp |
| Pandan leaves (lá dứa), optional | 3–4 leaves | Fragrance during the second steaming |
Steps
1Soak the sticky rice
Wash the glutinous rice and cover it with plenty of water. Leave it to soak for 6–8 hours, changing the water 2–3 times. When the soak is done, rinse the rice gently without scrubbing, then drain it well in a colander. The rice is ready when a grain breaks easily between your fingers. If the water turns cloudy and smells sour, change it right away.
2Peel and cut the cassava
Cut both ends off the cassava deeply, well past the point where the flesh looks clean. Peel away the thick brown skin and the layer beneath it, going deep rather than thin. Wash the peeled root and break it into thumb-sized chunks. Throw the peelings away. The chunks are ready when every surface shows clean white flesh with no brown skin left.
3Soak the cassava in salt water
Put the cassava chunks in a bowl of salted water and soak them for 8–12 hours. Change the water 3–4 times. Each time, rub the chunks with your hands to loosen the sticky sap. Pour every batch of soaking water down the drain. The cassava is ready when the cut surfaces are white and the slippery, gluey feel of the sap has gone.
4Fry the shallots and shred the coconut
Shred the coconut flesh into thin strips and set it aside. Slice the shallots thinly and put them in a small saucepan with enough oil to cover them, starting from cold oil. Fry over medium heat, stirring now and then, and lift them out with a slotted spoon onto a paper-lined plate the moment they turn pale gold. They keep darkening for a few seconds after they leave the oil, so pull them early. Cooled, they should be light golden and crisp.
5Make the scallion oil
Slice the scallions into thin rounds. Heat 3 tbsp oil in a pan; the shallot frying oil works well here. Add the scallions and stir for about 5 seconds, then turn off the heat and tip everything into a small bowl. The scallion oil is right when the scallions are bright green and fragrant, wilted but not darkened.
6Mix the rice and cassava
Put the drained rice and the drained cassava in a large bowl. Add 1 tsp salt and 3 tbsp oil. Toss with your hands until the cassava chunks are spread evenly through the rice. Keep the cassava pieces whole. The mixture is ready when the grains have a light sheen and no liquid pools at the bottom of the bowl.
7Load the steamer
Pour water into the steamer pot to about one-third of the way from the bottom to the basket, and bring it to a full boil. Line the basket with a muslin cloth or a cloth steaming bag; a bag is easier to lift out later. Spoon in the rice and cassava, level the surface, and poke several holes down through the layer with a chopstick. The steamer is loaded right when steam starts rising through the holes.
8Steam the first round
Cover the steamer and keep the water at a steady, gentle boil for 30–35 minutes. Ten minutes before the end, lift the lid and stir the rice gently so the top and bottom swap places. Cover and finish the time. The first round is done when the rice grains look translucent and the cassava chunks are soft but still hold their corners.
9Rest with coconut milk and oil
Lift the rice and cassava out of the steamer into a wide bowl or plate. Pour over 2 tbsp oil and the coconut milk, and fold it through gently with a spoon. Keep the cassava chunks whole. Leave it to rest for 10 minutes. The rice should look glossy and every grain should be moist.
10Steam the second round
Bring the steamer water back to a full boil while the rice rests. Return the rice and cassava to the lined basket, and tuck in the pandan leaves at the edge if you are using them. Cover and steam for 20–25 minutes. Cassava needs longer than the fillings of other xôi, so cut open the largest chunk before you stop. It is done when the cassava is soft all the way to the center with no hard or chalky core, and the rice is sticky and glossy.
11Finish the bowls
Spoon the hot xôi sắn into bowls. Scatter the shredded coconut over it first. Then spoon on the scallion oil, and drop the fried shallots on last so they stay crisp. Serve while it is still steaming, with the shallots crackling on top.