Northern Shaanxi's golden breakfast staple: glutinous millet dough fermented on the warm kang for four to five hours, stuffed with a paste of red dates and red beans, shaped by hand into smooth domes, and steamed in a large wooden steamer. The 2012 CCTV documentary 'A Bite of China' brought this humble bun to national fame through an elderly maker in Suide County who ground his millet with a donkey-powered stone mill.
Millet (Panicum miliaceum, 糜子) has been cultivated along the middle Yellow River basin for more than 8,000 years—archaeobotanical evidence from Cishan and Xinglongwa Neolithic sites confirms its early domestication in northern China. In the arid loess plateau environment of northern Shaanxi, glutinous millet (软糜子) became the primary grain for festive and ritual foods because of its superior caloric density and long shelf life relative to wheat. The steamed millet bun stuffed with locally grown dates and red beans has been an essential Spring Festival and ceremonial food in Shaanbei for generations—families traditionally steam hundreds of buns in the twelfth lunar month that keep for weeks in winter cold. National fame arrived in 2012 when CCTV's documentary 'A Bite of China' (Episode 2, 'The Story of Staple Foods') featured Huang Guosheng, a Suide County maker who continued to use a donkey-powered stone mill. His son Huang Yanxiong later built a workshop producing tens of thousands of buns daily while keeping the hand-shaping tradition. Suide County has since established a non-intangible cultural heritage workshop to train inheritors.
The exterior is faintly grainy from the millet's natural bran; inside, the crumb is dense, moist, and subtly sticky with an earthy, sweet-grass aroma from fermentation. The date-bean filling provides a concentrated sweetness and slightly sandy contrast at the center.
Glutinous millet lacks the gluten network of wheat; its cohesion after steaming comes from the high amylopectin content of soft millet—typically 75–80% amylopectin versus roughly 25% in non-waxy varieties—which gelatinizes readily at steaming temperatures and produces a sticky, elastic texture upon cooling. Fermentation by naturally occurring lactic acid bacteria and wild yeasts lowers the dough pH, generating organic acids and carbon dioxide that create tiny gas pockets, giving the dense bun a slightly airy crumb and a mild sour-sweet aroma. Red dates are rich in fructose and glucose, making the filling an efficient source of rapid energy—an important attribute in a cold, labor-intensive farming environment.
Variations
Some families substitute the date-bean filling with glutinous rice and sugar, or with a salted pork-and-green-onion filling. In the Yulin area, a version uses only non-glutinous hard millet and is sliced after steaming to serve alongside millet porridge rather than eaten as a stuffed bun.
On the Palate
Where Shaanbei Yellow Millet Steamed Bun sits in the Chinese flavor cloud
Ingredients
Serves 8How it's made
7 steps · 1 hour
- 1240 min
Mix soft millet and hard millet in a 7:3 ratio by weight; soak in cold water for 4 hours; drain, rinse twice to remove husks, and grind into fine flour.
- 230 min
Pit and steam red dates until soft; mash together with cooked red beans and a little sugar into a smooth, thick filling paste.
- 315 min
Combine millet flour with warm water (about 40°C); knead until a soft, slightly sticky dough forms.
- 4300 min
Cover the dough with a thick blanket and place on a warm kang or in a 35°C environment; ferment for 4–5 hours until the dough smells mildly sour and has risen slightly.
Watch outFerment until the dough smells mildly sour and rises slightly — under-ferment and the dense bun stays heavy with no lift or aroma.
- 520 min
Divide the dough into portions of about 80g each; flatten each, place a spoonful of date-bean filling in the center, and pinch the edges up to seal into a smooth dome shape.
- 620 min
Line a steamer with a damp cloth; arrange buns with space between them; steam over high heat for 20 minutes.
Watch outSteam a full twenty minutes over high heat — the sticky millet dough needs the time to gelatinize through, or the center stays raw.
- 75 min
Remove from steamer; let rest 5 minutes before serving; eat warm on the day of making.
Archive tool suggestions — not reviewed
These legacy suggestions have not been evidence-reviewed and are not presented as required tools.




