Unlisted China / Shanghai / Guides
What a Meal Actually Costs in Shanghai
A breakfast can cost less than a coffee. A famous basket of dumplings can cost as much as dinner. The difference is usually not the food — it is where you are standing.
One of the most common questions from first-time visitors is some version of: “I thought China was cheap. Why did this lunch cost more than lunch at home?”
Sometimes the answer is obvious. You ate upstairs at a famous restaurant beside a major sight. Sometimes it is less obvious. You ordered three baskets because a basket looked small. Or you assumed the number beside 二两 meant two buns.
Here is what the bill looks like in the kind of places we actually list.
Breakfast is still the bargain
A Shanghai breakfast can easily stay under ¥20, but only if you stop expecting a restaurant.
At Hongkou Rice Cake, the shop is a window. You point at what is left on the tray, pay a few yuan, and eat standing up or while walking. A red bean sticky rice roll is around ¥6; a double-filled rice ball is around ¥8. Two pieces are often enough.

An old-school sticky-rice cake window. The signatures are 「条头糕」 (red bean roll) and 「双酿团」 (double-filled ball). Sweet and savoury both — locals grab these for breakfast. Eat them warm; they go hard when cold.
At Da Hu Chun, shengjian are sold by weight. 二两 — 100g — gets you about four buns. The local order is 二两鲜肉生煎 plus a bowl of curry beef soup. Depending on what you add, breakfast lands around ¥20–30.

Shanghai's "dry-style" shengjian bao house — no aspic in the filling, so less soup but a deeply crisp bottom. The local order is 「二两鲜肉生煎」 (100g pork buns) with a bowl of curry beef soup.
Yang's is the soup-filled version. A portion of four is roughly ¥16, and the per-person average is closer to ¥27 once people add a soup or another order. The buns are rich and the soup is hot. Four is a snack; eight is a meal.

The "soup-filled" school — aspic mixed into the pork filling bursts when you bite. First-timers: take a small bite first or you'll wear the soup. Locals pair it with hot-and-sour soup or beef soup.
The pattern is consistent:
- Sticky rice cakes: ¥6–8 per piece.
- Four dry-style shengjian: around ¥15–18.
- Four soup-filled shengjian: around ¥16–20.
- Curry beef soup: around ¥12.
- Soy milk and fried dough: often under ¥10.
If you pay ¥100 for breakfast, you have bought a hotel buffet, not a Shanghai breakfast.
A bowl of noodles is where prices start to spread
The cheapest bowls are plain. The price climbs when fish, crab, pork liver or a famous name enters the bowl.
At Wei Xiang Zhai, the sesame-paste noodles are around ¥14. The fried pork chop is the dish most people add, which is why the shop's average is closer to ¥32 per person. This is one of the better-value sit-down meals in the city, but it is not a quiet meal. The shop is tiny, and at lunch the queue includes locals and visitors who came because of the shop's sudden fame.

Order the combo every Shanghainese uncle gets: 麻酱拌面 (sesame-paste noodles) plus 炸猪排 (fried pork chop) and a small beef soup. The sesame paste is a peanut-sesame blend, faintly sweet — that's correct, not a mistake. Tom Holland and Zendaya ate here twice in July 2026; the shop now sells a bilingual "star combo" of exactly those three items.
At Ma Haixia, formerly A Niang, the yellow croaker noodle soup is around ¥38. Add pickled greens and the bowl is still under ¥45. The topping is cooked to order and regularly runs out before the shop closes. The expensive mistake here is not ordering the fish. It is arriving at 3pm and finding the kitchen finished.

The signature is the yellow croaker noodle soup — locals order it as 「黄鱼面加咸菜」 (with pickled greens). The topping is cooked to order and often sells out after 11am. The shop is tiny; go early and you likely won't queue.
A rough guide:
- Under ¥20: plain noodles or a small neighbourhood shop.
- ¥25–35: a normal bowl with one proper topping.
- ¥35–55: fish, crab, pork liver, or a well-known shop.
- Over ¥80: a premium ingredient or a location aimed at visitors.
Those bands overlap. A ¥45 bowl can be excellent value, and a ¥20 bowl can be a bowl of MSG and disappointment. The price is only useful when you know what is in the bowl.
Xiaolongbao: one basket is not a meal
This is where many first-time visitors get surprised.
A regular pork basket is often ¥25–35. Crab roe pushes the price up quickly. At Lai Lai, the per-person average in recent reports sits somewhere around ¥57, but the pure crab set can pass ¥100 for only four pieces. The shop also charges ¥1 for ginger vinegar, which is unusual elsewhere.

The move: order 蟹粉鲜肉小笼 (crab-and-pork xiaolongbao), eat the first one plain — no vinegar — then dip the rest in the ginger vinegar that arrives with the basket. Roughly 40% of the people queueing with you will be foreign tourists; this is the rare local institution that has quietly become an international one.
At Jia Jia Tang Bao, a pork basket is closer to ¥28. The shop is small, the menu is limited, and the picture menu is enough to order without English. For two people, one pork basket plus one crab basket is a better first order than one basket each of the most expensive thing.
The trap is not the price on the wall. The trap is ordering by the basket as if dumplings were a main course and then adding noodles, pork chop and soup because nobody feels full yet.
The famous-name premium
The clearest example is Nanxiang in Yu Garden. There is a ground-floor counter and an upstairs restaurant. The downstairs operation is fast and comparatively cheap. The upstairs is a different meal, with service and a much larger bill.
Neither is a scam. They are just two different products sharing a name and a building. The mistake is walking in without noticing which one you chose.
The same rule applies near the Bund, Nanjing East Road and Yu Garden. A restaurant two minutes from the landmark is paying for the landmark. Walk ten minutes inland and the rent, the menu and the bill change.
A normal day of eating
For one person, without alcohol or a formal restaurant:
- Breakfast: ¥10–25.
- Lunch: a noodle bowl or dumplings, ¥30–45.
- Afternoon snack: shengjian or a rice cake, ¥10–20.
- Dinner: shared dishes or a larger bowl, ¥40–70.
That is roughly ¥90–160 for a comfortable day. You can do it cheaper. You can also spend ¥300 without eating especially well, usually by staying inside tourist areas and ordering the most expensive version of every famous dish.
Recent visitor threads keep circling the same point: Shanghai is more expensive than many other Chinese cities, especially around famous restaurants. A meal that costs ¥15 in another city may cost ¥20–30 here. Seafood and crab push the average higher because the ingredient itself is expensive.
The bill is often an ordering problem
Before you blame the city, check four things:
- Was the price per piece, per 100g, per basket or per person?
- Did the soup come separately?
- Were you upstairs or downstairs?
- Did you order at the counter before seeing the table?
One useful example is 二两. It does not mean two buns. It means 100g of dough, which usually becomes four shengjian. A menu that looks absurdly cheap can become normal very quickly if you misread the unit.
Shanghai has cheap food. It also has expensive food. The two are often a ten-minute walk apart, which is inconvenient for a guidebook and very useful for anyone willing to keep walking.