This post may contain affiliate links. Please read our disclosure policy.
Learn how to make Shàng Tāng Xiàncài, a classic Chinese homestyle dish with silky broth, tender leafy greens, and three different kinds of eggs. Quick, healthy, and restaurant-style at home.

Suppose you’ve ever wandered into a Cantonese restaurant and spotted a bowl of vibrant greens in silky egg ribbons. In that case, you might have been looking at Three-Egg Spinach Soup, traditionally known as 上湯苋菜(shàng tāng xiàncài ).
Traditionally, this dish used amaranth leaves (苋菜 / xiàncài), prized for their tender texture and subtle earthy flavor. But these days, most cooks use spinach instead — it’s easier to find, milder, and cooks faster while still giving that comforting leafy texture.
This soup combines three types of eggs — fresh chicken eggs, salted eggs, and century eggs — creating layers of flavor and texture that are both nutritious and indulgent. What started as a humble homestyle dish has evolved into a restaurant classic, where the use of superior broth and premium eggs makes it a treat that’s not cheap to order.
Why You’ll Like This Recipe
- Flavorful and layered: The three eggs provide creamy, salty, and umami notes in every spoonful.
- Quick and easy: Ready in about 20 minutes, perfect for weeknight dinners.
- Nutritious and comforting: Leafy greens + eggs = protein, iron, and vitamins.
- Restaurant-style at home: Silky egg ribbons and slightly thickened broth without the high price tag.
- Customizable: Use spinach or amaranth, adjust broth or seasoning to taste.
Ingredients and substitutions
- Spinach → amaranth for a traditional flavor, or bok choy/water spinach if preferred
- Chicken broth → vegetable broth or water with a dash of soy sauce
- Cornstarch slurry → arrowroot or tapioca starch
- Sesame oil → any neutral cooking oil
Frequently Asked Questions (FAQ)
- Where do I buy salted eggs and century eggs?
Available at most Asian grocery stores, either in refrigerated or preserved egg sections. - Can I make it thicker like a restaurant soup?
Yes! Use a little more cornstarch slurry and stir consistently before adding the chicken egg for that silky, velvety texture. - How should leftovers be stored?
I don’t recommend leftovers. But if you do have leftovers for whatever reason, store in an airtight container in the fridge for up to 2 days. Reheat gently on the stove to preserve the delicate egg ribbons and tender greens.

Chinese Spinach with Three Eggs in Broth (上汤苋菜)
Ingredients
- 250 g Chinese spinach or baby spinach, washed and trimmed
- 1 tsp sesame oil
- 2 cloves garlic minced
- 2 cups chicken or vegetable broth
- 1 chicken egg
- 1 Tbsp goji berries
- 1 salted egg hard-boiled, peeled and diced
- 1 century egg peeled and diced
- Salt and white pepper to taste
To thicken the broth: (optional)
- 1 tsp cornstarch + 1 tbsp water
Instructions
Prepare the eggs:
- Beat the chicken eggs on a bowl. Set aside. Peel and cut hard-boiled salted eggs into little cubes. Do the same thing with century eggs

Cook the garlic (optional):
- In a large skillet, heat sesame oil over medium heat. Add minced garlic and sauté until fragrant (about 20–30 seconds).

Add the spinach:
- Add spinach and cook for 1–2 minutes until just wilted. Remove from the pan to a serving dish

Add the broth:
- Pour in chicken or vegetable broth and bring to a gentle boil.

Add the chicken egg:
- Reduce heat to low. Slowly drizzle the beaten chicken egg into the soup while stirring gently in one direction to form silky ribbons.

- Add the goji berries. Cook for about 1 minute until the egg sets.

Add spinach, salted and century eggs:
- Gently stir in the pre-cooked spinach, salted egg and century egg, letting them warm in the broth for 1 minute.

Thicken the soup: (optional)
- If you like it "soupier", you can skip this step. Slowly stir in the cornstarch slurry, stirring constantly, until the soup thickens slightly. It should coat the back of a spoon.
Season:
- Add salt and pepper to taste. Be cautious with salt because the salted egg is already salty.
Serve:
- Transfer to a large serving bowl and serve immediately







