Cantonese Cuisine · tested Chinese home cooking
Steamed Whole Fish (Cantonese Style) Recipe
清蒸鱼 Qīng Zhēng Yú
The pinnacle of Cantonese cooking – a whole fish steamed to silky perfection and topped with sizzling ginger-scallion oil. The pure, clean flavor of the fish takes center stage in this elegant dish. This version is written for Western home kitchens, with supermarket-friendly measurements, practical substitutions, and clear visual steps.

Why this recipe works
This recipe keeps the flavor profile recognizable while making the workflow realistic for American and European kitchens. The ingredient list prioritizes items you can buy at mainstream grocery stores, with Asian-market upgrades where they truly matter.
Shopping notes for Western cooks
Most ingredients are easy to find at major U.S. and European supermarkets. For pantry items like Shaoxing wine, Chinkiang black vinegar, doubanjiang, Sichuan peppercorns, dried chilies, oyster sauce, and dark soy sauce, check an Asian market or order online. Use dry sherry for Shaoxing wine, balsamic plus rice vinegar for black vinegar, and tamari for a gluten-aware soy sauce swap when needed.
Ingredients
- 1 whole fish (sea bass, snapper, or trout, about 600-1 3/4 lb), cleaned and scaled
- 2 tbsp Shaoxing wine
- 3 slices ginger, julienned
- 2 scallions, julienned
- For sauce: 3 tbsp light soy sauce, 1 tbsp sugar, 1 tbsp water, 1 tsp sesame oil
- 3 tbsp hot oil for finishing
- Cilantro for garnish
Step-by-step instructions

Step 1
Score the fish on both sides with 3 diagonal cuts each
Score the fish on both sides with 3 diagonal cuts each. Pat dry. Rub with salt and shaoxing wine, inside and out.

Step 2
Place ginger slices on the fish and in the cavity
Place ginger slices on the fish and in the cavity. Place fish on a heatproof plate that fits in your steamer.

Step 3
Bring water to a rolling boil in a steamer or wok with…
Bring water to a rolling boil in a steamer or wok with a rack. Place the plate on the rack, cover, and steam over high heat for 8-10 minutes (depending on thickness).

Step 4
Carefully pour off any accumulated liquid on the plate…
Carefully pour off any accumulated liquid on the plate (this can be fishy).

Step 5
Mix soy sauce, sugar, water, and sesame oil
Mix soy sauce, sugar, water, and sesame oil. Pour over the fish. Top with julienned ginger and scallions.

Step 6
Heat oil in a small pan until smoking
Heat oil in a small pan until smoking. Pour the sizzling oil over the ginger and scallions. It should crackle and hiss dramatically. Serve immediately.
Cook’s notes
- The fish should be very fresh – the eyes should be clear and the flesh should spring back when pressed
- Don't over-steam – the fish is done when the flesh at the thickest part flakes easily with a fork
- The sizzling oil is non-negotiable – it releases the aroma of ginger and scallions
- Serving the fish whole is traditional and presents beautifully on the table
Common questions
Can I make Steamed Whole Fish (Cantonese Style) less spicy?
Yes. Reduce dried chilies, chili paste, or Sichuan peppercorns first, then add heat back at the table with chili oil.
What should I serve with it?
Steamed jasmine rice, a crisp cucumber salad, or a simple green vegetable make the meal feel complete without extra work.