HǎoWèi
Chinese-Style Borscht (Shanghai Luo Song Tang) — Shanghai Home-Style recipe hero image
Easy 75 min serves 4

Chinese-Style Borscht (Shanghai Luo Song Tang)

罗宋汤中式 · luó sòng tāng

家庭快手版 · Home version: The family version simmers everything in one pot with tomato paste for body; restaurant versions start from a long-simmered beef bone stock and finish with a roux-thickened base.

Borscht came to Shanghai with Russian émigrés in the 1920s and got rewritten by local cooks: beets were swapped for tomatoes, sour cream for a spoon of sugar, and it became the red soup every Shanghai school cafeteria served with a slice of white bread. My grandmother called it 'foreign soup that tastes like home.'

H

Recipe author: HǎoWèi Test Kitchen

Home-cooking research team

Reviewed by HǎoWèi editorial team · Last updated 2026-08-29

More beef recipes →Comfort FoodOne-PotSoups

Ingredients

  • beef chuck, cut into 3 cm cubes牛肩肉,切3厘米块🛒 local400 g
  • ripe tomatoes, peeled and chopped熟番茄,去皮切块🛒 local400 g
  • tomato paste番茄膏🛒 local45 g
  • carrot, cut into 2 cm chunks胡萝卜,切2厘米块🛒 local150 g
  • yellow onion, diced黄洋葱,切丁🛒 local180 g
  • green cabbage, cut into 3 cm pieces圆白菜,切3厘米块🛒 local250 g
  • potato, cut into 2 cm cubes土豆,切2厘米块🛒 local200 g
  • unsalted butter无盐黄油🛒 local20 g
  • white pepper, freshly ground现磨白胡椒粉🛒 local1 g

beef chuck, cut into 3 cm cubes: Chuck has enough collagen to stay tender after long simmering; ask for 'stew beef'

ripe tomatoes, peeled and chopped: Score an X on the base, blanch 30 seconds, then slip off the skin

tomato paste: Double-concentrated paste gives the deepest colour and sweetness

green cabbage, cut into 3 cm pieces: Adds the sweetness Shanghai cooks use instead of beet sugar

potato, cut into 2 cm cubes: Starch from the potato thickens the soup naturally

unsalted butter: The one Russian habit Shanghai kept; use neutral oil for a dairy-free version

🌶️ Adjust to your taste

Pick a level and we'll show exactly how much to change — no more "适量".

Spice level

Saltiness

Oiliness

Make it vegetarian

Instructions

  1. 1Bring 1.5 L (6 cups) water to a boil, add beef chuck, and blanch for 2 minutes. Skim the grey foam, then lift the beef out and rinse the pot.

    牛肉先焯去沫

    🔍 Look for High heat 2 分钟 · 2 minutes

    Visual: 表面浮起灰褐色浮沫,水变浑浊Grey-brown scum collects on the surface and the water turns cloudy

    You know it's right when: 浮沫不再涌起,牛肉表面由粉转灰Foam stops rising and the beef surface turns from pink to grey

  2. 2Melt butter in the clean pot over medium heat. Add onion and carrot, and cook 5 minutes until the onion turns translucent and smells sweet.

    洋葱炒软出甜

    🔍 Look for Medium heat 5 分钟 · 5 minutes

    Visual: 洋葱边缘呈半透明,胡萝卜颜色变深Onion edges look glassy, carrot brightens to a deeper orange

    You know it's right when: 闻蒸汽时已无生洋葱辛辣味No more raw onion bite when you smell the steam

  3. 3Stir in tomato paste and cook 2 minutes until it darkens to brick red and coats the vegetables. Add chopped tomatoes and cook another 4 minutes until they collapse into a sauce.

    番茄膏炒出红油

    🔍 Look for Medium heat 共 6 分钟 · 6 minutes total

    Visual: 番茄膏变深,锅边析出红色油分Paste darkens and releases red-tinted oil at the pot edges

    You know it's right when: 勺底划过锅底留下清晰痕迹,回流缓慢Spoon dragged through the base leaves a clean trail that fills in slowly

  4. 4Return beef to the pot with 1.2 L (5 cups) hot water. Bring to a boil, then lower to medium-low, cover, and simmer 45 minutes.

    小火慢炖45分钟

    🔍 Look for Medium-low 45 分钟 · 45 minutes

    Visual: 表面冒细小缓泡,汤色红亮清透Surface holds small lazy bubbles, broth is reddish and clear

    You know it's right when: 叉子插入牛肉块毫无阻力A fork slides into a beef cube with no resistance

  5. 5Add potato and cabbage, and simmer uncovered 15 minutes more, until potato edges soften and cabbage turns tender but not mushy.

    土豆白菜后放

    🔍 Look for Medium-low 15 分钟 · 15 minutes

    Visual: 土豆棱角变圆,圆白菜由不透明白转为微透明Potato corners round off, cabbage leaves go from opaque white to slightly translucent

    You know it's right when: 勺子轻压土豆即陷,但仍保持块状Potato yields to a spoon with gentle pressure but keeps its shape

  6. 6Season with white pepper and salt to taste. Ladle into bowls — thick, brick-red, with a slick of red oil on top.

    白胡椒提味

    🔍 Look for Low heat 1 分钟 · 1 minute

    Visual: 汤汁能挂住勺背,表面漂着细小红油珠Soup coats the back of a spoon and small red oil droplets float on top

    You know it's right when: 口感酸甜、尾韵带胡椒暖意,无生番茄的尖锐酸味Taste is sweet-tart with a warm pepper finish, no raw tomato sourness

Tips

  • · Make it a day ahead — the flavour deepens overnight and the fat cap is easy to lift off.
  • · For a thicker, restaurant-style body, mash one potato cube against the pot wall and stir it back in.
  • · Serve with a slice of white bread like a Shanghai cafeteria, or over steamed rice.

Sources & references

Quantities, technique notes, and substitution ratios are cross-checked against established Chinese cookery references and standard food-science sources.

Common questions

What is velveting and why do it?

Velveting = coating meat in cornstarch (sometimes egg white + a splash of wine/soy) before cooking. The starch forms a protective layer that seals in juices and prevents the meat from drying out at high heat. This is the secret to restaurant-smooth beef in dishes like beef & broccoli. At home: 1 tbsp cornstarch + 1 tbsp water (or soy/wine) per 250 g meat, rest 10 min, then stir-fry.

Source: HǎoWèi technique guide

🥢 Ask HǎoWèi

Questions about technique, ingredients, substitutions, and flavor — answered from our verified cooking knowledge base.

What to serve with it

A complete Chinese dinner in one plan — pick one from each role.

What cooks say

Made this? Leave a note.

  • No comments yet — be the first!

Cook next