Hawker Food Sodium: 36 Singapore Dishes Ranked
A bowl of mee soto (622 g) has 4,068 mg of sodium and laksa (604 g) has 3,086 mg, each above HPB's 2,000 mg daily sodium limit. Steamed chicken rice (346 g) has 1,227 mg. Ranked below: 36 dishes, HPB's default portions.
Every figure is the sodium in HPB's default portion for that dish, shown with its gram weight. The last column is that figure divided by HPB's 2,000 mg daily sodium limit. Portions differ between dishes, so a bigger bowl tends to carry more sodium. Our shorter guide, sodium in hawker food, covers fewer dishes.
The 10 Highest-Sodium Dishes Here
| # | Dish (HPB default portion) | Portion | Sodium | % of 2,000 mg |
|---|---|---|---|---|
| 1 | Mee soto | 622 g | 4,068 mg | 203% |
| 2 | Yong tau foo in laksa gravy (7 pieces, mixed) | 797 g | 3,818 mg | 191% |
| 3 | Mee siam | 731 g | 3,754 mg | 188% |
| 4 | Kway chap | 928 g | 3,740 mg | 187% |
| 5 | Lor mee | 716 g | 3,444 mg | 172% |
| 6 | Roti prata, plain, 2 pieces with curry | 535 g | 3,381 mg | 169% |
| 7 | Prawn noodle soup | 732 g | 3,378 mg | 169% |
| 8 | Indian rojak | 987 g | 3,227 mg | 161% |
| 9 | Laksa | 604 g | 3,086 mg | 154% |
| 10 | Mee goreng | 465 g | 3,050 mg | 153% |
Ranked among the 36 dishes on this page, not among every row in HPB's database.
Ranks 11 to 19: Still Above 2,000 mg
| # | Dish (HPB default portion) | Portion | Sodium | % of 2,000 mg |
|---|---|---|---|---|
| 11 | Economy rice, 2 vegetables and 2 meats | 906 g | 2,908 mg | 145% |
| 12 | Wanton noodle soup | 678 g | 2,895 mg | 145% |
| 13 | Mee rebus | 619 g | 2,466 mg | 123% |
| 14 | Fishball noodle soup | 798 g | 2,402 mg | 120% |
| 15 | Ban mian, soup | 792 g | 2,313 mg | 116% |
| 16 | Bak kut teh, dry | 282 g | 2,171 mg | 109% |
| 17 | Nasi goreng | 485 g | 2,144 mg | 107% |
| 18 | Bak chor mee, soup | 682 g | 2,135 mg | 107% |
| 19 | Char kway teow | 480 g | 2,107 mg | 105% |
Ranks 20 to 36: Below 2,000 mg
| # | Dish (HPB default portion) | Portion | Sodium | % of 2,000 mg |
|---|---|---|---|---|
| 20 | Hokkien mee | 549 g | 1,938 mg | 97% |
| 21 | Ban mian, dry | 407 g | 1,819 mg | 91% |
| 22 | Bak kut teh, soup | 574 g | 1,788 mg | 89% |
| 23 | Fishball noodles, dry | 377 g | 1,715 mg | 86% |
| 24 | Bak chor mee, dry | 430 g | 1,621 mg | 81% |
| 25 | Wanton noodles, dry | 388 g | 1,564 mg | 78% |
| 26 | Economy rice, 1 vegetable and 1 meat | 553 g | 1,454 mg | 73% |
| 27 | Nasi lemak with egg, ikan bilis and peanuts | 313 g | 1,383 mg | 69% |
| 28 | Prawn noodles, dry | 396 g | 1,321 mg | 66% |
| 29 | Steamed chicken rice | 346 g | 1,227 mg | 61% |
| 30 | Roasted chicken rice | 363 g | 1,061 mg | 53% |
| 31 | Char siew rice | 353 g | 833 mg | 42% |
| 32 | Roti prata, plain, 1 piece | 141 g | 805 mg | 40% |
| 33 | Popiah | 191 g | 646 mg | 32% |
| 34 | Roasted duck rice | 411 g | 641 mg | 32% |
| 35 | Soya sauce chicken rice | 310 g | 605 mg | 30% |
| 36 | Teochew porridge, plain | 660 g | 462 mg | 23% |
Red rows are above 100% of the 2,000 mg figure; green rows are below 50%.
Soup or Dry: Same Dish, Two HPB Rows
These six dishes have both a soup row and a dry row in HPB's data. Both rows are shown with their own grams.
| Dish | Soup portion | Soup sodium | Dry portion | Dry sodium |
|---|---|---|---|---|
| Wanton noodles | 678 g | 2,895 mg | 388 g | 1,564 mg |
| Prawn noodles | 732 g | 3,378 mg | 396 g | 1,321 mg |
| Fishball noodles | 798 g | 2,402 mg | 377 g | 1,715 mg |
| Bak chor mee | 682 g | 2,135 mg | 430 g | 1,621 mg |
| Ban mian | 792 g | 2,313 mg | 407 g | 1,819 mg |
| Bak kut teh | 574 g | 1,788 mg | 282 g | 2,171 mg |
For the five noodle dishes the dry row has less sodium than the soup row. The soup bowls are also heavier (678 g to 798 g, against 377 g to 430 g for dry), so part of the gap is bowl size. Bak kut teh goes the other way: HPB's dry row (282 g) has more than its soup row (574 g).
The Gravy Has Its Own HPB Row
For five dishes, HPB also lists the gravy or curry on its own. The gravy row is a separate portion, not a measure of what is in your bowl.
| Dish | Whole dish portion | Whole dish sodium | HPB gravy row | Gravy portion | Gravy sodium |
|---|---|---|---|---|---|
| Laksa | 604 g | 3,086 mg | Laksa gravy | 361 g | 1,837 mg |
| Mee rebus | 619 g | 2,466 mg | Mee rebus gravy | 340 g | 1,588 mg |
| Mee siam | 731 g | 3,754 mg | Mee siam gravy | 359 g | 2,495 mg |
| Lor mee | 716 g | 3,444 mg | Lor mee gravy | 328 g | 1,348 mg |
| Roti prata with curry (2 pieces) | 535 g | 3,381 mg | Curry only, from the same HPB set | 253 g | 1,771 mg |
The gravy rows alone range from 1,348 mg (lor mee gravy, 328 g) to 2,495 mg (mee siam gravy, 359 g).
Related Guides
- Sodium in soup noodles: 17 hawker bowls ranked
- Sugar, carbs and sodium in hawker food
- Laksa calories and sodium
- Mee soto, mee rebus and mee siam
- Prawn noodle calories, soup and dry
- Wonton mee calories
- Fishball noodle calories, soup and dry
- Bak chor mee calories
- Lor mee calories
- Char kway teow calories
- Chicken rice calories
- Nasi lemak calories
- Roti prata calories
- Economy rice calories
- Yong tau foo calories
- Porridge calories: two bowls go over the 2,000 mg limit
Frequently Asked Questions
Of the 36 dishes on this page, mee soto has the most in HPB's data: 4,068 mg for a 622 g bowl, 203% of HPB's 2,000 mg daily sodium limit. Yong tau foo in laksa gravy (797 g, 3,818 mg) and mee siam (731 g, 3,754 mg) are next. HPB lists other rows higher still, such as steamboat sets.
In HPB's data, steamed chicken rice (346 g) has 1,227 mg, roasted chicken rice (363 g) has 1,061 mg and soya sauce chicken rice (310 g) has 605 mg. Nasi lemak with egg, ikan bilis and peanuts (313 g) has 1,383 mg, and char kway teow (480 g) has 2,107 mg.
For five of the six dishes with both rows in HPB's data, the dry row has less. Wanton noodles are 2,895 mg for a 678 g soup bowl and 1,564 mg for a 388 g dry bowl. Bak kut teh is the exception: the dry row (282 g) has 2,171 mg and the soup row (574 g) has 1,788 mg.
19 of the 36 dishes. In HPB's default portions, everything from mee soto (622 g, 4,068 mg) down to char kway teow (480 g, 2,107 mg) is above 2,000 mg, the figure this page uses as the daily limit.
HPB's 2,000 mg daily sodium limit. The % column is each dish's sodium divided by 2,000 mg. Portions are HPB's defaults, so a smaller or larger serving at your stall will change the figure.
Nutrition data sourced from the Health Promotion Board (HPB) Singapore food composition database. Each sodium figure is HPB's per-100 g value x HPB's default portion weight x HPB's edible portion, checked on 29 October 2026; the portion is shown beside every number and no portion has been estimated. The 2,000 mg figure is HPB's daily sodium limit. Values vary by stall, recipe and portion size. This article is for general information only and does not constitute medical or dietary advice. If you have a medical condition, consult a registered dietitian or doctor for personalised guidance. Nutrition data referenced in this article is used under licence from the Health Promotion Board (HPB) of Singapore and may not be redistributed, republished, or reused commercially without NutriKaki's prior written permission.