Hello from my kitchen in China! I’m Jason, and today I want to share one of the most comforting and simple soups I know. This is a dish that proves you don’t need heavy cream or hours of simmering to create a broth that is rich, savory, and beautifully “milky” white.

This soup is pure, nourishing comfort. The flavor is light but layered: you get the savory umami from the pan-fried egg, the delicate, sweet perfume of the tofu, and a fresh, briny kick from the clams, all balanced by the sweet Napa cabbage. In Chinese home cooking, we’d call this a “清热” (qīngrè) soup—something light, hydrating, and “cooling” or “clearing” to help balance the body.
This is my absolute go-to “I feel a little run-down” soup. My wife always asks for it when she wants something nourishing that won’t weigh her down, and the simple, clean aroma of the simmering eggs and tofu instantly makes the kitchen feel cozier.
This is a classic “homestyle” (家常) dish. You won’t find this exact soup in many restaurants; it’s the kind of quick, nutritious meal made in homes. The star of the show is the “奶白” (nǎibái) or “milky white” broth. And the best part? All the main ingredients—tofu, eggs, cabbage, and even clams—are becoming wonderfully easy to find in Western supermarkets, making this a perfect, authentic taste of Chinese home cooking for your own kitchen.
🥣 Why You’ll Love This Recipe
- Amazing Flavor & Texture: The broth is light yet creamy (without dairy!), the tofu is silky, and the clams add a fresh, sweet brine.
- Incredibly Fast: This is a true one-pot meal that goes from prep to table in about 15-20 minutes.
- Healthy & Nourishing: It’s packed with protein from the tofu, eggs, and clams, and it’s light on calories.
- The “Milky” Broth Secret: You’ll learn a classic Chinese kitchen technique to create a rich, white, emulsified soup broth using just eggs and water.
- Beginner-Friendly: The steps are simple, and the ingredient list is short and accessible.
🥦 What You’ll Need
Main Ingredients
- Tofu: You must use Silken Tofu or Soft Tofu for this recipe. It will come in a small tub or a box. Its delicate, high-water-content texture is what makes the soup so comforting. Please do not use firm or extra-firm tofu; they won’t provide the right “melt-in-your-mouth” feel.
- Eggs: Just two large eggs. These are pan-fried first to create the flavor base.
- Clams: About 10 fresh clams. Littlenecks or Manila clams are perfect. They must be fresh and alive (see food safety notes!). You can also substitute peeled shrimp.
- Napa Cabbage: The original recipe uses 娃娃菜 (wáwá cài), or “baby” Napa cabbage, but half of a small, regular Napa cabbage works perfectly. It adds a wonderful, subtle sweetness.
- Garnish (Optional): The original recipe notes you can add a few goji berries (枸杞) and sliced scallions for color. I like adding them; the goji berries add a tiny hint of sweetness that complements the clams.
- Water: The “broth” is just water! The magic comes from the technique.
Equipment
- A Wok or Medium Soup Pot: A Dutch oven, nonstick pot, or a deep skillet will all work perfectly for this.
- Spatula: For frying and cutting the eggs.
- Knife & Cutting Board
💡 Deeper Dive: Chinese Cooking Insight
The Secret to a “Milky” White Broth (奶白汤)
How does this soup get so beautifully creamy and white using just water? The secret is a cooking-school-level technique that Chinese grandmothers have been using for centuries: emulsion.
In our kitchens, we call this “奶白” (nǎibái), or “milky white.” Here’s the science:
- Fat & Protein: When you pan-fry the eggs, you create a base of cooked fats and proteins.
- The “Shock”: When you add boiling water to the hot pot, the intense heat and agitation break the fats from the egg (and later, the tofu) into microscopic droplets.
- The Emulsion: The proteins from the egg and tofu act as stabilizers, wrapping around these tiny fat droplets and keeping them suspended in the water, rather than letting them float to the top.
This is the exact same principle behind a French vinaigrette, mayonnaise, or a rich tonkotsu ramen broth. This beautiful, stable emulsion is what gives the soup its creamy white color and rich, satisfying mouthfeel, all without a single drop of milk or cream.
🍳 How to Make Creamy Tofu Soup
The whole process is very fast. Make sure your tofu is cubed, cabbage is chopped, and clams are scrubbed before you start.
- Fry the Eggs Heat a teaspoon of neutral oil in your pot over medium heat. Crack in the 2 eggs and fry them, flipping once. You want them cooked all the way through, like an “over-hard” egg. A little golden-brown color is great.


- Cut the Eggs Don’t even remove the eggs from the pot. Just use your spatula to slice the fried eggs into 6-8 small, bite-sized pieces. This increases the surface area, which is key for the next step.
- Add the Tofu Gently cube your ½ box of silken tofu and carefully slide it into the pot with the egg pieces. Be gentle to avoid breaking it.

- Create the Milky Broth (The Key Step!) Have your boiling water (about 4-5 cups) ready. Slowly pour it into the pot with the eggs and tofu. The source recipe is very clear: it must be boiling water, not cold. Bring the pot back to a boil, then reduce the heat to a steady, strong simmer. Let it cook uncovered for 7-8 minutes. You will literally watch the broth turn from clear to an opaque, creamy white. This is the emulsion magic!

- Cook the Clams & Cabbage Add the 10 scrubbed clams and the chopped Napa cabbage to the pot. Let it simmer for another 2-4 minutes, just until all the clams have popped open and the cabbage is tender-crisp.

- Season & Serve Ladle some broth and taste it. This soup is meant to be light and delicate. With the briny clams, you might not need any salt at all. If it needs a little lift, add a tiny pinch of salt or white pepper. Ladle into bowls and garnish with scallions and goji berries, if using.

✨ Pro Tips & Notes
- Use BOILING Water: I’m saying it a third time because it is the single most important tip. Adding cold water will stop the emulsion process, and you will get a clear, thin, and disappointing soup.
- Purge Your Clams: Nothing ruins a good soup like a bite of sand. To purge your clams, soak them in a bowl of cold, salted water (1 tbsp salt per quart of water) for 20-30 minutes before you start cooking. They will spit out any internal grit.
- Be Gentle with the Tofu: When adding the tofu and water, slide them in gently. When stirring, use a “pushing” motion rather than a vigorous swirl to keep the delicate tofu intact.
- Vegan/Vegetarian Option: To make this vegan, skip the eggs and clams. The “milky” trick won’t work in the same way. Instead, create a flavor base by pan-frying 4-5 sliced shiitake mushrooms. Add the tofu, water, and cabbage. For a creamy color, stir in 1/4 cup of unsweetened soy milk at the end.
- Protein Swaps: This soup is also fantastic with peeled raw shrimp (add them in the last 2 minutes, just until pink) or very thin-sliced pork (add and poach before the cabbage).
- Seasoning is Minimal: Do not be tempted to add soy sauce or dark vinegar. This soup is all about the “鲜” (xiān) or “fresh umami” of the ingredients. A pinch of salt and a dash of white pepper are the most you should need.
- Cabbage Technique: For even cooking, add the white, crunchy stems of the Napa cabbage first, let them cook for 1-2 minutes, then add the tender green leafy parts in the final minute.
🍚 Serving & Pairing Ideas
In Chinese homes, this soup is a classic light lunch or a comforting, hydrating part of a larger family-style meal. It’s perfect on its own for a healthy, low-carb dinner.
The original recipe author gives my favorite pairing suggestion: serve it with pan-fried potstickers (煎饺). This is a classic combination! The light, briny soup perfectly cuts the richness of the savory, crispy-bottomed dumplings.
It’s also wonderful served alongside a simple bowl of [steamed white rice] to soak up the delicious broth.
📦 Storage & Food Safety
- Storage: This soup is really best eaten fresh, immediately after it’s made. Both seafood and silken tofu do not store well. If you have leftovers, they can be kept in an airtight container in the fridge for 1 day, but the texture will not be as good.
- Freezing: Do not freeze this soup. The silken tofu will become spongy and grainy, and the clams will be unpleasantly rubbery.
- Reheating: If reheating from the fridge, do so very gently on the stovetop over low heat. Do not re-boil it, as this will overcook the clams and make them tough.
- Food Safety for Clams: This is critical.
- Before Cooking: Your clams must be alive. If any are open, tap them on the counter. If they don’t close, discard them. Also discard any with broken shells.
- After Cooking: Discard any clams that did not open during the simmering.
- Allergen Warning: This recipe contains Egg and Shellfish (Clams). It is naturally dairy-free and gluten-free.
🩺 Nutrition Facts (Estimated)
Per serving (about 1/2 of the total recipe)
- Calories: 185
- Protein: 16g
- Total Fat: 10g
- Saturated Fat: 3g
- Carbohydrates: 8g
- Fiber: 2g
- Sugar: 3g
- Sodium: 310mg (This varies greatly based on the natural salt in the clams and any salt you add.)
These values are estimates and vary by tofu brand and portion. This information is not intended as medical advice.
💬 Frequently Asked Questions (FAQ)
- Q: What’s the best tofu for this soup?
- A: Silken or Soft Tofu, 100%. You need that high water content and delicate, custard-like texture that melts in your mouth.
- Q: My soup didn’t turn white! What went wrong?
- A: Two likely reasons: 1) You didn’t fry the egg first, or 2) You added cold or warm water instead of boiling water. The high heat is essential to “shock” the fats and proteins into an emulsion.
- Q: Can I use tofu from a shelf-stable box?
- A: Yes! That is typically silken tofu and is perfect for this recipe. Just be careful when sliding it out of the package.
- Q: Can I make this soup ahead of time?
- A: I really don’t recommend it. It’s a 15-minute soup that is best enjoyed immediately. The clams and silken tofu are delicate and don’t reheat well.
- Q: How do I reduce the salt if I’m watching my sodium?
- A: Don’t add any salt at all! The clams themselves release a natural, briny saltiness into the broth. For most people, this is enough.
🛠️ Troubleshooting Guide
- My soup is gritty or sandy.
- Cause: You didn’t purge your clams properly.
- Fix: Next time, soak your clams in cold, salted water for at least 20-30 minutes before cooking.
- My tofu all broke apart.
- Cause: You probably stirred too aggressively, or your simmer was a violent, rolling boil.
- Fix: Silken tofu is delicate! Use a gentle “push” motion with your spoon instead of stirring, and keep the pot at a steady, strong simmer, not a crazy boil.
- My soup is clear and thin, not milky.
- Cause: You missed a key step. You must pan-fry the eggs first, and you must add boiling water.
- Fix: Unfortunately, you can’t fix it at this point. The soup will still be tasty, but it won’t be “Nai Bai Tang.” Next time, follow steps 1 and 4 exactly!

Creamy Tofu Soup with Clams (Nai Bai Doufu Tang)
Ingredients
Equipment
Method
- Heat the 1 tsp of oil in a medium soup pot or wok over medium heat. Add the 2 eggs and fry them “over-hard” until both sides are cooked and lightly golden.
- Use your spatula to cut the fried eggs into small, bite-sized pieces inside the pot.
- Gently slide the cubed silken tofu into the pot.
- Slowly pour the 4-5 cups of boiling water into the pot. Bring back to a boil, then reduce to a strong, steady simmer. Cook for 7-8 minutes, uncovered, until the broth turns an opaque, “milky” white.
- Add the scrubbed clams and the chopped Napa cabbage. Continue to simmer for 2-4 minutes, or until all the clams have opened and the cabbage is tender.
- Discard any clams that did not open.
- Taste the broth. Add a tiny pinch of salt or white pepper if needed (the clams provide a lot of natural salt).
- Ladle into bowls and garnish with optional goji berries and sliced scallions. Serve immediately.
Notes
- Calories: 185
- Protein: 16g
- Total Fat: 10g
- Saturated Fat: 3g
- Carbohydrates: 8g
- Fiber: 2g
- Sugar: 3g
- Sodium: 310mg











