Xôi Đỗ Xanh: Vietnamese Steamed Sticky Rice with Mung Beans

Vietnamese xôi đỗ xanh, steamed white sticky rice mixed with yellow split mung beans, served in a bowl with pork floss and sesame salt on the table
Level
Beginner
Cuisine
Vietnamese

Xôi đỗ xanh, Vietnam's salted sticky rice steamed with split mung beans. Learn the long soak, the two-stage steam with oil, and which beans to buy.

Cooking flow

Cooking steps

STEP 11 / 8

Soak the glutinous rice

STEP 1

Rinse the rice lightly in a large bowl, swirling it once or twice and pouring off the cloudy water. Cover it with plenty of fresh water and leave it to soak for 6–8 hours. In cold weather the grains swell more slowly, so judge by the rice and not only the clock. It is ready when the grains have turned opaque white and plump, and one crushes easily between your fingers.

STEP 22 / 8

Soak the mung beans

Glutinous rice soaking in a large bowl of water beside a smaller bowl of soaking split mung beans
Keep the rice and beans in separate bowls; the beans need roughly half the rice's soaking time

Put the split beans in a second bowl and cover them generously with water. Leave them for about 4 hours so the soaking reaches the very centre of each bean. A few will float; that does no harm. The beans are ready when one squashes flat under your finger with no hard core left in the middle.

STEP 33 / 8

Wash together, drain and salt

Drained glutinous rice and split mung beans in a cloth-lined colander, with coarse salt being sprinkled from a spoon
Salt goes onto the mixture of rice and beans together, so every grain is seasoned before the heat

Drain the rice and the beans, tip them into one bowl and wash them together, changing the water several times. Turn everything into a colander and let it drain well. Sprinkle the 2 tsp coarse salt over the mixture and toss with your hands until it is spread through every part, rice and beans alike. Move on when no more water drips from the colander and the grains look damp rather than wet.

STEP 44 / 8

Line the steamer and spread the mixture

A cloth-lined bamboo steamer with an even layer of rice and yellow mung beans, small holes poked in the surface, first steam rising
An even layer with a few holes lets the steam reach the centre as fast as the edges

Bring water to a boil in the pot under your steamer. Line the basket with the cotton cloth, dampened and wrung out, and spread the rice and beans over it in an even layer. Poke a few holes through the layer with a chopstick so steam can rise through the middle. The water must stay below the basket and never touch the rice. You are ready when steam begins to curl up through the holes.

Steam it, never boil it

This rice cooks only in steam rising from below. If boiling water reaches the cloth, the bottom layer turns into a mushy, dumpling-like mass. Keep the water level comfortably below the basket.

STEP 55 / 8

Steam for 30 minutes

The steamer lid lifted after the first steam, showing plump white rice and soft yellow beans with a matte surface
At this stage there is no shine yet; the gloss comes only after the oil

Cover the steamer and steam over a steady boil for about 30 minutes. Keep the lid on; each time you lift it, steam escapes and the rice stalls. At 30 minutes, open it and break a few grains and beans between your fingers. The first steam is done when the rice is plump and opaque white, the beans are soft and crumbling, and the surface is still matte. If you feel a hard centre, cover again and steam a few minutes more before checking again.

Hot steam

Lift the lid tilted away from you so the first cloud of steam goes the other way, and keep your face and wrists clear of the basket.

STEP 66 / 8

Turn the rice and fold in the oil

Oil poured in a thin stream over steamed rice and mung beans while a wooden paddle turns the mixture from the bottom
Pour slowly while turning, so the oil coats grains instead of pooling on the cloth

With the paddle, turn the whole layer over from the bottom up so the rice from the cloth comes to the top. Drizzle the 3½ tbsp (50 ml) oil over it in a thin circle. Fold and loosen the rice gently, breaking up any clumps, until the oil is worked through. Stop when the grains have begun to glisten and separate and the beans are scattered evenly.

Oil only after the first steam

The oil goes in once the rice is cooked through, and it goes in with the turning. The turn brings the dense bottom layer up into the steam, and the oil coats each grain so the rice stays loose and soft instead of setting into a block as it cools.

STEP 77 / 8

Steam for another 10 minutes

Finished xôi đỗ xanh in the bamboo steamer, glossy separate grains with yellow beans and a wooden paddle resting in it
After the second steam a few beans split open at the edges; that crumble is what you want

Spread the rice back into an even layer, cover, and steam for about 10 minutes more. The oil warms through and settles into the grains during this time. Lift the lid and stir once with the paddle. The rice is done when every grain is glossy and plump and the mass falls loose from the paddle instead of pressing into a cake.

STEP 88 / 8

Fluff and serve

Close-up of glossy glutinous rice grains and soft yellow split mung beans on a spoon, one bean broken open to show a crumbly centre
A thin film of oil on each grain and a dry, crumbly bean centre mark a finished bowl

Loosen the rice once more and scoop it into bowls or onto a shared plate while it is still steaming. Put the accompaniments on the side so each person adds their own. Taste a mouthful before you salt anything else on the table; the rice is already seasoned. Break one bean with your spoon: its centre should be dry and crumbly, and the rice grains should squash softly between your teeth with a clean chew.

0 / 0
Ingredients

Ingredients

1 / 1

Ingredients

Ingredient Amount Role
Glutinous rice (gạo nếp) 1 lb 2 oz (500 g) The body of the dish. Its stickiness and distinct grains are the texture
Skinned split mung beans (đậu xanh bỏ vỏ) 7 oz (200 g) Soft, crumbly, faintly sweet beans running through the rice
Coarse salt (muối hạt) 2 tsp Seasons the rice and beans from the inside as they steam
Neutral cooking oil (dầu ăn) 3½ tbsp (50 ml) Loosens the grains, adds gloss and keeps the texture soft as it cools
0 / 0

Thirty minutes in, you lift the steamer lid and a cloud rolls off a bed of white rice flecked with yellow. The grains have swollen and turned opaque, the beans have gone soft at the edges, and the surface is still matte. Then a thin stream of oil goes over it, the paddle turns everything from the bottom, and by the time the second steam is done the whole basket shines. Xôi đỗ xanh is Vietnamese sticky rice steamed together with skinned split mung beans and seasoned only with salt and oil. It eats as chewy, separate grains of glutinous rice with crumbly, faintly sweet beans running through them, salted firmly enough to stand next to pork floss or a few slices of roast pork.

A Bowl of Sticky Rice Before School or Work

In Vietnam, xôi is the word for steamed glutinous rice, and it covers a whole family of dishes. The oldest form is plain white steamed sticky rice; over time cooks began adding mung beans, black beans, lotus seeds, peanuts, sesame, red gấc fruit and coconut, and each addition became a dish with its own name. Xôi đỗ xanh belongs to the bean branch of that family, and it stays close to the root: white rice, yellow beans, salt, oil.

Vietnam's national tourism administration describes glutinous rice as the first grain produced by the ancestors of the Tai–Kadai and Mon–Khmer peoples, and says that in ancient times people ate it rather than ordinary rice, close to a staple. Today it is no longer the everyday staple, yet xôi still turns up everywhere, from street stalls to smart restaurants, and it is always on the table at special occasions and rituals. Families also place a plate of it on the incense altar on the first and fifteenth days of the lunar month, and the rice also serves as the family breakfast.

One stall, a different bowl for everyone

Breakfast is where xôi lives most. It is quick, filling and carries people through the morning before school or work. In Hanoi's Hai Bà Trưng district, one household buys its morning xôi at a stall and orders around the table: peanut xôi for the grandparents, xôi đỗ xanh for the husband, corn xôi for the son, xôi with pork floss for the daughter. In 2017 a portion started at around 5,000 dong, cheap enough for a large family. Mung bean sticky rice is also rolled into small balls for children to hold.

Đỗ or đậu

In the north the dish is called xôi đỗ xanh, in the south xôi đậu xanh. Đỗ and đậu are northern and southern forms of the same word for bean, and both names point to the same dish. In English it goes by Vietnamese mung bean sticky rice.

Its neighbours on the stall

Two other mung bean dishes share the stall and are easy to confuse. Xôi xéo starts from rice dyed yellow with turmeric; mung beans are steamed separately, mashed and shaped into a ball, then sliced thin over the rice and finished with fried shallots and fat. Xôi vò is steamed rice fanned cool and rubbed with ground mung beans until every grain stands apart. Xôi đỗ xanh mixes whole split beans into the raw rice and steams them together, so the rice stays white and the beans keep their shape. Red xôi gấc, corn xôi ngô and peanut xôi lạc are separate dishes again. Bánh chưng, the square New Year cake, also pairs sticky rice with mung beans and pork, but there the beans become a filling wrapped inside. For more of the country's cooking, see Vietnam.


Ingredients

Ingredients for xôi đỗ xanh: raw glutinous rice in a bowl, skinned split mung beans in another, coarse salt in spoons, cooking oil in a measuring cup and a clean steaming cloth
The beans should be flat yellow halves; green whole beans belong to a different pantry shelf

Pork floss, sesame salt, char siu, roast pork or pork stir-fried with scallion go on the side, chosen to taste. They are accompaniments, so they sit outside the base recipe.

Buy skinned split beans

The beans you want are yellow halves with the green skin removed. They soften fully in the time the rice needs. Whole green mung beans cook more slowly and change the texture of the finished dish, so leave them for another recipe.

Allergen information

The base recipe contains rice and mung beans (a legume). The accompaniments carry their own allergens: some pork floss is made with seafood stock, sesame salt contains sesame, and char siu and roast pork are often seasoned with soy and wheat. Check the labels of anything you serve alongside.

Equipment

  • Two bowls for soaking, one large and one smaller
  • A colander
  • A steamer (bamboo basket or metal steamer) over a pot of boiling water; one at least 9½ inches (24 cm) across holds the full amount, otherwise steam in two batches
  • A clean, thin cotton cloth to line the steamer
  • A chopstick and a wooden rice paddle

Choosing the Rice and the Beans

In Vietnam the favoured rice is nếp cái hoa vàng, a fragrant glutinous variety. Abroad, Japanese short-grain glutinous rice (sold as mochi rice or sweet rice) is a good replacement; the fragrance and the exact chew shift a little with the variety, and the dish still reads as xôi. Look for "glutinous" or "sweet rice" on the bag in Asian grocers.

Mung beans come in two forms: whole beans in their green skins, and moong dal, the yellow skinned split kind. Buy the yellow split beans. Mung bean sprouts come from the same bean but have nothing to do with this dish.

The oil should be neutral, such as vegetable or rice bran oil, so the rice and beans keep their own taste. Coarse salt is the seasoning the amount is built on. Fine table salt packs more saltiness into the same spoon, so with fine salt the result lands saltier. Keep the rice glutinous, the beans skinned and split, the salt firm and the finish glossy with oil; those four keep it true to the dish.


Method

Almost all the time goes into soaking, and you can ignore it. Start the rice in the morning or the night before, start the beans about four hours before you want to steam, and both will be ready together. The active work is short: drain, salt, a 30-minute first steam, oil, and a 10-minute second steam.

When It Goes Wrong

What you see Why What to do
Rice or beans still hard in the centre Soaking stopped too early, steam escaped, or the steamer was too full for steam to reach the middle Cover and steam a few minutes more at a time. Next time, judge the soak by the grain and split the full amount into two batches
Bottom layer mushy and stuck together Boiling water touched the cloth, or the mixture went in wet Scrape the good rice off the top. Next time drain until nothing drips and keep the water well below the basket
Clumps after the second steam The rice was not turned from the bottom, or the oil sat in one spot Turn and break up the clumps with the paddle while hot, then steam briefly again
Rice feels heavy and greasy More oil than the rice can take up Serve with plain, lean sides. Measure the oil next time; it stays the same for the full amount
Too salty at the table Fine salt measured by the same spoon, plus salty accompaniments Pair it with milder sides. Next time use coarse salt
Leftovers have gone hard Sticky rice firms up when chilled Steam it again or warm it in the microwave until soft and hot through

Serving, Variations and Storage

A Vietnamese breakfast table with a bowl of mung bean sticky rice topped with pork floss, a dish of sesame salt, sliced roast pork on a separate plate and a glass of tea
Pork floss sits on the rice; heavier meats go on a separate plate

What goes with it

The classic partners are pork floss and sesame salt, the fluffy salty floss heaped on one side of the bowl and a pinch of sesame salt scattered over. On fuller mornings add slices of char siu or roast pork, or pork stir-fried with scallion. At home some families also eat it with fried onions, a mix of toasted sesame and peanuts, or coconut flakes. At Tết and other celebrations it turns up as a side to rich savoury dishes such as caramelised braised pork. Choose one or two sides; the rice carries salt already, and two salty meats on top of it overwhelm the beans.

Variations

  • More beans. Steam 1 lb 2 oz (500 g) glutinous rice with 9 oz (250 g) split mung beans, about 1 tsp salt and 2 tbsp oil or chicken fat. This version steams for 45 minutes, stirred every 10 minutes, then 5 minutes more after the fat goes in. The bean flavour leads and chicken fat adds a savoury, meaty gloss.
  • Rice cooker with coconut milk. Soak 5½ oz (150 g) glutinous rice and 3½ oz (100 g) split mung beans for 1 hour, then cook them in a rice cooker with a scant ½ cup (100 ml) coconut milk, ⅔ cup (150 ml) water and a pinch of salt. It is softer and tastes of coconut, a weekday option when the steamer stays in the cupboard.
  • Southern sweet finish. Spoon a little thick coconut milk over the finished rice and scatter toasted sesame on top. The salt stays underneath and the bowl tips toward a snack.
  • Two batches. With a small steamer, divide the same amounts in half and steam one batch while you prepare the next. The recipe stays the same; only the layer gets thinner and cooks more evenly.

Storage

Cook what you will eat and eat it soon after steaming. Cooked rice carries bacterial spores that survive steaming; left at room temperature, they germinate, multiply and can produce a toxin that causes vomiting. The oil keeps the grains soft, and soft rice is still rice to handle with care, so do not leave it out on the counter. If it has to wait, keep it hot at 149°F (65°C) or above, or chilled at 46°F (8°C) or below. Divide leftovers into small covered containers, refrigerate them promptly and eat them soon. Reheat by steaming again or in the microwave until hot throughout.

Frequently Asked Questions

Can I soak the rice overnight?

Yes. Setting the rice to soak the night before is the easiest rhythm. Start the beans about 4 hours before you plan to steam, so both finish soaking at the same time.

Can I use jasmine or ordinary rice?

No. The stickiness of glutinous rice is the backbone of xôi, and ordinary rice steamed this way stays dry and loose with none of the chew. Any short-grain glutinous rice works.

Why does the salt go in before steaming?

Salting the drained rice and beans lets the seasoning travel into each grain as the steam softens it. Salt sprinkled on at the end sits on the surface and tastes sharp in some bites and flat in others.

Do I need a banana leaf?

A banana leaf under the rice is optional and adds a light grassy aroma. The cotton cloth is what matters, since it holds the grains above the holes in the basket and lets the steam through.

Sources