Draft for review, version 0.6. Not for citation.This report is a draft and subject to change.
  1. Home
  2. Appendices

Appendix D3

D3. The retail audit re-read for demand

What the September 2026 audit of 186 products in 11 stores says about demand, re-read for prices, the cost of a serving of protein, assortment and label claims. Mass stores carry almost no imported products, 20 g of protein from a vegetarian (chay) wrapper costs more than a whole street meal, and no chay food carries a protein claim.

14 min readWhat the tags mean
On this page
  1. D3.1 Six signals
  2. D3.2 The signals in figures
  3. D3.3 Sales counters online and in kitchens
  4. D3.4 What a second audit round should add

What this appendix contains. The September 2026 retail audit (S2. Retail formulation audit) logged 186 products in 11 stores in Nha Trang (6 September) and Ho Chi Minh City (16 and 20 September) to study formulation. Here we re-read the same records for demand signals. Eight stores are mass modern retail (Lotte Mart, Co.opmart, GO!, WinMart, Emart) and three are premium or import-led (Annam Gourmet, Nam An Market, Moonmilk). The audit is a convenience sample of modern and premium stores, with no wet markets, chay shops, online-only brands or foodservice, so these are signals about the shelf, not measures of the market 1 . The first sales counters: 96 listings read on two online marketplaces and 185 on a kitchen supply platform and two specialist shops (section D3.3).

D3.1 Six signals

  1. Two shelves, two markets. Imported finished products are 3.6% of the 140 products logged in mass stores and 67% of the 46 in premium stores. Imported modern meat analogues appeared only in premium stores in Ho Chi Minh City; Nha Trang had none 1 . Modern plant-based products are an import-led premium niche; the mass shelf is Vietnamese chay, tofu and plant milk.
  2. Price points are low. In mass stores the median pack costs VND 12,600 for tofu, VND 27,500 for plant milk, VND 45,500 for a frozen chay wrapper pack and VND 71,500 for a frozen chay meat analogue; in premium stores a frozen analogue pack costs a median VND 179,000 and a plant milk VND 94,900 1 . For comparison, average household food and drink spending is about VND 43,700 per person per day (VND 1,310,000 a month in 2024, our division) 2 .
  3. Twenty grams of protein costs more than a meal. The median cost of 20 g of protein is about VND 13,000 from tofu or dried textured soy, VND 56,000 from a frozen meat analogue, VND 60,000 from a ready meal, VND 74,000 from a filled chay wrapper and VND 91,000 from plant milk (our calculation on label protein). From eggs or chicken it is VND 7,000 to 9,000 and from lean pork about VND 14,000 (Protein diet). A street rice plate with meat costs VND 29,000 to 35,000 in Ho Chi Minh City 1,3 .
  4. Protein is not sold, though much of the shelf could claim it. Only two locally made products carry a protein claim in their name, both variants of Vinamilk's high-protein nut milk (5 g per 100 ml); no chay food does. Protein values could be captured for only 44% of mass-store products and 35% of premium-store products, a gap in capture as well as in labelling 1 . Protein has had to appear on non-exempt pre-packaged labels since 1 January 2026 (Circular 29/2023, now Circular 30/2026), so the gap is mostly in capture and in small makers, who are exempt 4,5 . Against the claim conditions of TCVN 14429:2025 (source 5 g, high 10 g per 100 g), 20 of 43 audited plant-protein foods with a label value (47%) already meet "source" and 7 (16%) meet "high", all seven frozen analogues; counting the per 100 kcal route, 27 of 38 and 13 of 38 do (our calculation; protein_claim_eligibility.csv) 1,6 . A numeric protein claim is an open position on the chay shelf, not a regulatory problem.
  5. Chay on the pack is a religious and culinary word, not a vegan standard. Chay appears in 87 of 186 product names. Of 64 chay-named products with a logged ingredient list, at least 23 (36%) name onion, garlic, shallot or leek, which strict Buddhist cooking avoids, and at least 3 (5%) name egg or dairy (our keyword search, a lower bound) 1 . Mass-market chay follows lay practice; strict buyers need labelled variants.
  6. Plant milk spans a four-fold price ladder. Mass soy milk sells at about VND 22,900 per litre, below cow milk; Vinamilk's high-protein nut milk at about VND 87,000; imported oat, almond and nut milks at a median VND 94,900 in premium stores 1,7 . The mass price point, not the premium one, is where plant milk became Vietnam's modern plant-protein category at scale (Consumers). If the sugary-drink excise reaches sweetened soy milk from 2027, mass soy milk would be about VND 25,200 per litre in 2028, still below cow milk (our calculation) 8,9,7 .

What 20 g of protein costs, against a meal

Median VND for 20 g of protein by product type (retail audit, label protein) and retail benchmarks

What 20 g of protein costs, against a mealLog-scale bars: 20 g of protein costs about 7,000 to 14,000 VND from eggs, chicken, textured soy, tofu or lean pork, inside a canteen protein budget; 56,000 to 175,000 VND from packaged alternatives, above the 29,000 to 35,000 VND price of a street meal.Benchmark (chapter 11)Retail audit median, label proteinRetail benchmarks (shaded)5,00010,00020,00050,000100,000200,000VND for 20 g of protein (log scale)Canteen protein-dish budget: VND 7,500 to 14,000Canteen protein-dish budget, 7,500 to 14,000Street rice plate with meat: VND 29,000 to 35,000Street rice plate with meat, 29,000 to 35,000EggsEggs: VND 6,900 for 20 g of protein Basis: Benchmark (chapter 11)6,900Chicken breastChicken breast: VND 9,000 for 20 g of protein Basis: Benchmark (chapter 11)9,000Dried textured soyDried textured soy: VND 12,900 for 20 g of protein Basis: Retail audit median, label protein12,900TofuTofu: VND 13,300 for 20 g of protein Basis: Retail audit median, label protein13,300Lean porkLean pork: VND 14,200 for 20 g of protein Basis: Benchmark (chapter 11)14,200Frozen meat analogueFrozen meat analogue: VND 55,700 for 20 g of protein Basis: Retail audit median, label protein55,700Ready mealReady meal: VND 59,500 for 20 g of protein Basis: Retail audit median, label protein59,500Canned analogueCanned analogue: VND 64,200 for 20 g of protein Basis: Retail audit median, label protein64,200Filled chay wrapperFilled chay wrapper: VND 73,800 for 20 g of protein Basis: Retail audit median, label protein73,800Plant milkPlant milk: VND 91,200 for 20 g of protein Basis: Retail audit median, label protein91,200Plant yoghurt or creamerPlant yoghurt or creamer: VND 105,800 for 20 g of protein Basis: Retail audit median, label protein105,800Vegan cheeseVegan cheese: VND 175,200 for 20 g of protein Basis: Retail audit median, label protein175,200

Our calculation: price per 100 g of protein divided by 5. Benchmarks from chapter 11.

Sources: 1,10,3,11

Show dataHide data
What 20 g of protein costs, against a meal
ProductBasisVND for 20 g of protein
Eggsbenchmark6,900
Chicken breastbenchmark9,000
Dried textured soyaudit12,900
Tofuaudit13,300
Lean porkbenchmark14,200
Frozen meat analogueaudit55,700
Ready mealaudit59,500
Canned analogueaudit64,200
Filled chay wrapperaudit73,800
Plant milkaudit91,200
Plant yoghurt or creameraudit105,800
Vegan cheeseaudit175,200
Canteen protein-dish budget (band)benchmark7,500 to 14,000
Street rice plate with meat (band)benchmark29,000 to 35,000

D3.2 The signals in figures

Generated from retail_demand_signals.csv.

TopicMetricSegmentValueUnitnNotesSource
assortmentSKUs loggedmass stores (8)140SKUs140Lotte Mart, Co.opmart, GO!, WinMart, Emart in Nha Trang and Ho Chi Minh City; convenience sample.1
assortmentSKUs loggedpremium stores (3)46SKUs46Annam Gourmet, Nam An Market, Moonmilk; convenience sample.1
assortmentShare of SKUs that are imported finished productsmass stores3.6%1405 of 140 SKUs; origin as logged.1
assortmentShare of SKUs that are imported finished productspremium stores67.4%4631 of 46 SKUs; origin as logged.1
price pointMedian pack pricetofu; mass stores12600VND per pack8Range 9,900 to 19,500. Shelf or online price as logged.1
price pointMedian pack priceplant milk; mass stores27500VND per pack31Range 3,700 to 133,500. Shelf or online price as logged.1
price pointMedian pack priceplant milk; premium stores94900VND per pack14Range 14,000 to 158,900. Shelf or online price as logged.1
price pointMedian pack priceplant yoghurt/creamer; mass stores38800VND per pack7Range 10,000 to 41,000. Shelf or online price as logged.1
price pointMedian pack pricedumpling/spring roll/bun with vegetable filling; mass stores45500VND per pack39Range 27,900 to 65,000. Shelf or online price as logged.1
price pointMedian pack pricedumpling/spring roll/bun with vegetable filling; premium stores85000VND per pack3Range 38,900 to 92,000. Shelf or online price as logged.1
price pointMedian pack pricedried TVP/soy chunks; mass stores49000VND per pack5Range 49,000 to 75,000. Shelf or online price as logged.1
price pointMedian pack priceready meal; mass stores46400VND per pack6Range 25,000 to 72,900. Shelf or online price as logged.1
price pointMedian pack pricecanned analogue; mass stores57000VND per pack9Range 15,100 to 76,000. Shelf or online price as logged.1
price pointMedian pack pricefrozen meat/seafood analogue; mass stores71500VND per pack17Range 41,800 to 136,000. Shelf or online price as logged.1
price pointMedian pack pricefrozen meat/seafood analogue; premium stores179000VND per pack2Range 179,000 to 179,000. Shelf or online price as logged.1
price pointMedian pack pricevegan cheese/spread; premium stores156600VND per pack9Range 89,900 to 249,900. Shelf or online price as logged.1
price pointMedian pack priceprotein powder; premium stores875900VND per pack4Range 309,900 to 1,439,900. Shelf or online price as logged.1
price pointMedian pack pricesnack/jerky; premium stores32900VND per pack5Range 32,900 to 32,900. Shelf or online price as logged.1
protein costMedian cost of 20 g of proteintofu13300VND per 20 g protein5Our calculation: price per 100 g protein divided by 5; label protein. Range 7,834 to 24,211.1
protein costMedian cost of 20 g of proteinplant milk91200VND per 20 g protein8Our calculation: price per 100 g protein divided by 5; label protein. Range 18,332 to 288,889.1
protein costMedian cost of 20 g of proteinplant yoghurt/creamer105800VND per 20 g protein7Our calculation: price per 100 g protein divided by 5; label protein. Range 31,250 to 125,625.1
protein costMedian cost of 20 g of proteindumpling/spring roll/bun with vegetable filling73800VND per 20 g protein18Our calculation: price per 100 g protein divided by 5; label protein. Range 31,111 to 345,528.1
protein costMedian cost of 20 g of proteindried TVP/soy chunks12900VND per 20 g protein4Our calculation: price per 100 g protein divided by 5; label protein. Range 9,795 to 17,011.1
protein costMedian cost of 20 g of proteinready meal59500VND per 20 g protein3Our calculation: price per 100 g protein divided by 5; label protein. Range 58,095 to 76,667.1
protein costMedian cost of 20 g of proteincanned analogue64200VND per 20 g protein2Our calculation: price per 100 g protein divided by 5; label protein. Range 44,741 to 83,700.1
protein costMedian cost of 20 g of proteinfrozen meat/seafood analogue55700VND per 20 g protein9Our calculation: price per 100 g protein divided by 5; label protein. Range 13,198 to 124,306.1
protein costMedian cost of 20 g of proteinvegan cheese/spread175200VND per 20 g protein2Our calculation: price per 100 g protein divided by 5; label protein. Range 171,821 to 178,497.1
protein costMedian cost of 20 g of proteinprotein powder71900VND per 20 g protein4Our calculation: price per 100 g protein divided by 5; label protein. Range 68,606 to 73,127.1
labelSKUs with chay in the product nameall stores87SKUs18647% of 186 SKUs.1
labelChay-named SKUs whose ingredient list names an allium (onion, garlic, shallot, leek)chay-named SKUs with an ingredient list35.9%6423 of 64; our keyword search of the logged key ingredients, which may be incomplete, so this is a lower bound.1
labelChay-named SKUs whose ingredient list names egg or dairychay-named SKUs with an ingredient list4.7%643 of 64; our keyword search; lower bound.1
labelShare of SKUs with a protein value capturedmass stores44.3%140Protein value from label or collector lookup; a gap in capture, not only in labelling.1
labelShare of SKUs with a protein value capturedpremium stores34.8%46As above.1
labelLocally made foods or drinks with a protein claim in the product nameall stores2SKUs186Only Vinamilk Sữa Hạt Cao Đạm (high-protein nut milk, 5 g per 100 ml), in two variants. No chay food carried a protein claim in its name.1
price pointSame-brand chay versus meat price difference, high-confidence pairVissan chả giò rế-37.9% per 100 g1Chay cheaper than meat version; four other pairs rest on low-confidence reads (range -51.9% to +18.5%).1
price pointPlant milk shelf price, mass soy milk (Fami)mass stores22900VND per litre2Below cow milk (about VND 33,000 to 45,000 per litre in 2023, CON-35).1,7
price pointPlant milk shelf price, imported oat, almond and nut milkspremium stores mostly94900VND per litre13Range 58,000 to 158,900; two to four times cow milk.1
price pointHigh-protein nut milk (Vinamilk, 5 g protein per 100 ml)mass stores87200VND per litre2The only mass-market plant product sold on protein content.1
assortmentImported modern meat analogues loggedNha Trang0SKUs84Imported frozen meat or seafood analogues; Nha Trang had none, Ho Chi Minh City had them only in premium stores.1
assortmentImported modern meat analogues loggedHo Chi Minh City2SKUs102Imported frozen meat or seafood analogues; Nha Trang had none, Ho Chi Minh City had them only in premium stores.1

Two rows of the table overstate what some buyers pay (these notes are not in retail_demand_signals.csv):

  • Dried textured soy (VND 12,900 per 20 g of protein, store packs). Online, 1 kg bags of dry soy-and-gluten pieces cost VND 59,000 to 158,680 per kg, about VND 1,800 to 6,000 per 20 g of protein on a borrowed label range of 53.3 to 66.7 g per 100 g; a 150 g branded pack online costs VND 12,600 to 15,800 per 20 g, like the store median (our calculation) 12,1 . Bulk format, not the product, makes dried textured soy the cheapest protein in Vietnam's retail data.
  • Protein powder (VND 71,900 per 20 g, premium stores, n = 4). At a sports-nutrition chain (WheyShop), whey costs VND 20,800 to 35,000 and plant powders VND 36,000 to 54,800 per 20 g of protein (5 products with protein facts), and plant powders are 2 of 25 protein powders listed 13,1 . On Lazada, seven plant powder listings show 7,294 sales against 5,455 for six whey listings, and the top plant listing, a Vietnamese-made pea and nut powder, costs about VND 14,600 per 20 g of protein, below imported whey (our calculation) 12,14,13 . The premium-store median overstates what gym users pay.

D3.3 Sales counters online and in kitchens

Shops in Vietnam show đã bán (units sold) counters. They are cumulative with no start date, so newer listings are understated, and rows come from the first page of targeted searches, so sums are orders of magnitude, not market shares. In a logged-out browser Lazada and Tiki show counters; Shopee requires a login and TikTok Shop a CAPTCHA, so those two, the largest platforms, stay unread 15,16,12,17 . The kitchen counters come from Kamereo, a business-to-business platform supplying restaurants and cafés 18 . Rows: marketplace_sku_counters.csv (96 listings, 25 September 2026) and kitchen_platform_counters.csv (185 listings, September 2026).

SignalConsumer marketplaces (Lazada, Tiki)Kitchen platform (Kamereo)Source
Plant milk against dairyBest-selling plant milk SKU sells 60% (Lazada) and 79% (Tiki) of the litres of the best-selling dairy SKUPlant milks about 4% of 899,000 milk litres and 1.5 to 2.1% of milk protein12,17,18
Leading plant milkDomestic nut milk (Lazada) and soy milk (Tiki); imported oat under 2% of plant-milk litres readImported Oatside oat milk, bought for coffee (36% of plant-milk litres)12,17,18
High-protein nut milk (Vinamilk, 5 g per 100 ml)About 16,100 cases (about 70,300 L, 3.5 t of protein) at Vinamilk's Lazada store; about 11% of its nut-milk litres read but 29% of their protein; 24% dearer per litre, about 37% of the cost per gram of proteinNot listed12,14
Protein-claimed soy milk (GoldSoy, 3.2 g per 100 ml)3,100 cases against 14,800 for an unclaimed walnut soy milk at 2.0 g in the same store, although GoldSoy is 39% cheaper per litre2,609 units against 5,758 and 5,828 for two dearer unclaimed soy milks12,18
Imported plant-based meatNone listed; searches for thịt thực vật (plant meat) and "meat zero" returned porkEight Meat Zero listings, 386 units (80 kg) in all, not orderable12,18,19
Dry chay soy-and-gluten piecesAbout 40,700 kg dry on Lazada, 82% from one small shop; official stores under 1% of these sales240 kg12,14,18
Frozen chay and chay giò (meat-style loaf)Hundreds of kilograms per listing at most; one chay giò lụa 11 packs; no chay listing carries a numeric protein claimVissan chay spring roll 0 units12,18
Fresh tofuNot a marketplace productAbout 80,800 kg across 32 listings12,17,18
Who sellsOfficial or LazMall stores take 93 to 100% of milk units read but under 1% of dry chay piece salesPlatform-run12,17

Three readings follow (our inference) . Plant milk is a mainstream household purchase online, sold through incumbents' official stores. Protein sells in that aisle only as a premium niche inside an incumbent's range, and a protein claim alone did not lift soy milk in either channel. And the chay product households buy online in bulk is the dry textured piece, an ingredient-like product made by small shops, which fits an ingredient route better than a branded analogue. A second read of the same listings a month later would turn the counters into monthly rates (Consumers, Channels).

D3.4 What a second audit round should add

  • Wet markets, dedicated chay shops and pagoda-adjacent stalls, where most chay is bought.
  • Meat equivalents with label protein for every chay product logged, so that price per gram of protein can be compared pair by pair.
  • A repeat visit before and during the 7th lunar month, to measure the calendar spike on the shelf.
  • Da Nang and Hanoi, to test the north and south difference in tofu and chay reported in Protein diet and Chay baseline.
  • Online small makers. Lazada and Tiki can be read in a logged-out browser (section D3.3), which partly closes the small-maker gap for dry chay goods on Lazada; Shopee needs a login and TikTok Shop a CAPTCHA, so reading them needs a person with an account or a paid report, and a repeat read of the same listings is needed to turn counters into rates 15,16,12 .
  • The makers behind the online dry chay pieces (no listing names the maker or the origin of its soy protein), a named buyer group for a domestic textured protein 14 .

Related: S2. Retail formulation audit, Consumers, Chay baseline.

Sources cited on this page

All sources (Appendix T)

  1. FORM-01 AltProtein Vietnam. AltProtein Vietnam retail field audit, Nha Trang 6 Sep 2026 and Ho Chi Minh City 16 and 20 Sep 2026, 186 SKUs, 11 stores. 6 to 20 Sep 2026
  2. DIE-05 National Statistics Office of Viet Nam. Results of the Viet Nam Household Living Standards Survey 2024. 2026-03-31
  3. CHY-40 Thanh Nien. Nhiều quán ăn giữ giá cơm 35.000 đồng ở TP.HCM. 2026-05-07
  4. LBL-01 Ministry of Health (signed by Deputy Minister Do Xuan Tuyen). Thông tư 29/2023/TT-BYT. 2023-12-30
  5. LBL-02 Ministry of Health (signed by Deputy Minister Do Xuan Tuyen). Thông tư 30/2026/TT-BYT. 2026-07-09
  6. LBL-03 MOST; drafted by TCVN/TC/F6, proposed by the Vietnam Standards and Quality Institute. TCVN 14429:2025 Hướng dẫn sử dụng công bố dinh dưỡng và công bố khuyến cáo về sức khỏe. 2025
  7. CON-35 Market Times. OatSide: hãng sữa hạt 2 năm tuổi xâm chiếm gần 100 quán cà phê Việt. 17 Aug 2023
  8. FTR-01 National Assembly of Viet Nam. Luật Thuế tiêu thụ đặc biệt 2025 số 66/2025/QH15. 2025-06-14
  9. FTR-18 QNS (Vinasoy). Bản tự công bố sản phẩm 10NS (Fami Nguyên Chất). 2025
  10. DIE-12 National Institute of Nutrition. Bang thanh phan thuc pham Viet Nam (Vietnamese Food Composition Table). 2007
  11. CHN-39 Bao Hai Phong. Nâng chất bữa ăn ca, giữ sức khỏe người lao động. 2026-08-16
  12. MKT-03 Lazada. Lazada Việt Nam search results. 2026-09-25
  13. ECR-08 WheyShop. WheyShop.vn. 2026-09
  14. MKT-04 Lazada; sellers named. Lazada product pages. 2026-09-25
  15. MKT-01 Shopee. Shopee Việt Nam: Login Required. 2026-09-25
  16. MKT-02 TikTok. Security Check. 2026-09-25
  17. MKT-05 Tiki Corporation. Tiki search results. 2026-09-25
  18. ECR-06 Kamereo. Kamereo product pages. 2026-09
  19. AIS-25 Kamereo. Heo Xay Chay Meat Zero 1kg. 2026