清蒸鱼 Steamed Fish – Cantonese Ginger Scallion Steamed Fish

Steamed Fish (清蒸鱼) is the crown jewel of Cantonese seafood cookery — a whole fish steamed to perfection, adorned with silky julienned ginger and scallions, then drizzled with sizzling hot oil and a fragrant soy-based sauce. It is delicate, elegant, and the ultimate test of a chef’s skill: the fish must be just cooked through, moist, and flaking at the gentlest touch.

Cantonese cooking is built on the principle that the best ingredient needs the least interference, and 清蒸鱼 is its purest expression. The fish is not marinated, battered, or sauced in advance — it is steamed whole with ginger and scallion, then dressed at the table with hot oil and seasoned soy. Everything depends on freshness: a Cantonese fish restaurant will have live fish tanks at the entrance precisely because this dish cannot hide an old fish. It is the centerpiece of a Cantonese banquet, the dish that signals the meal’s quality, and the one the host will watch you taste first.

This recipe comes from a dim sum master in Hong Kong who taught me that the secret to perfect steamed fish is threefold: absolutely fresh fish, precise timing (1 minute per 100g of fish), and the ritual of pouring sizzling oil over the aromatics at the table.

Cantonese Ginger Scallion Steamed Fish with soy sauce

One Minute Per 100 Grams

The Cantonese rule of thumb is precise and reliable: steam for about one minute per 100g of fish, measured at the thickest point, over rapidly boiling water. A 600g fish takes six minutes; a 900g fish takes nine. Overcooking is the most common failure — fish proteins set quickly and then contract, squeezing out moisture, so a fish left two minutes too long is dry and fibrous rather than silky. Undercooking is also a problem, particularly near the bone. The test: insert a chopstick at the thickest point just behind the head. If it slides in with no resistance and the flesh is opaque, the fish is done.

Discard the Steaming Liquid

  • Pour off the liquid that collects in the dish — it carries fishy, muddy compounds released during steaming and dilutes the sauce
  • Then add the aromatics — fresh ginger and scallion juliennes go on the hot fish after the liquid is drained
  • Heat the oil until it just smokes — poured over the ginger and scallion, it cooks them slightly and releases their aroma
  • Sauce goes around, not over — pour the seasoned soy around the fish rather than on top, so the skin stays intact and the flesh is not drowned
  • Serve immediately — steamed fish loses its texture within minutes; this is not a dish to hold

Ingredients and Where to Find Them

Also needed: ginger, scallions, Shaoxing wine, and a little sugar. Some cooks add a few drops of sesame oil to the sauce, and cilantro is a common garnish.

How to Make It

  1. Have your fishmonger scale and gut a 600g (1.3 lb) whole fish; rinse and pat dry
  2. Score the thickest part of the body twice on each side, and rub the cavity with 1 tablespoon Shaoxing wine and a little salt
  3. Lay half the ginger slices and scallion lengths on a heatproof plate and set the fish on top, with the remaining ginger in the cavity
  4. Steam over rapidly boiling water for 6 minutes per 600g, until a chopstick slides into the thickest part with no resistance
  5. Carefully pour off the liquid that has collected in the plate and discard it
  6. Scatter julienned ginger and scallion over the fish; heat 4 tablespoons peanut oil until smoking and pour it over the aromatics
  7. Mix 3 tablespoons seasoned soy sauce with 1 teaspoon sugar and a splash of water, pour it around the fish, and serve immediately

Variations

  • With fish fillets — use two skin-on fillets and steam for 5–6 minutes; less dramatic but equally good
  • With black bean sauce — a spoonful of fermented black beans with the ginger gives a savory, fermented version
  • With 剁椒 — a Hunan-leaning version topped with chopped chili; see my Steamed Fish Head with Chopped Chili 剁椒鱼头
  • With lime and garlic — a Southeast Asian-inflected variation popular in Hong Kong’s modern kitchens

Frequently Asked Questions

How long do I steam the fish?

About one minute per 100g of whole fish, measured over rapidly boiling water. A 600g fish needs roughly six minutes. Check by inserting a chopstick at the thickest point behind the head — it should slide in with no resistance.

Why is my steamed fish watery or fishy?

The liquid released during steaming contains fishy compounds and excess moisture. Removing it before adding the sauce ensures a clean, pure flavor profile.

Can I use fish fillets instead of a whole fish?

Yes — use 2 fillets (skin on) totaling 400-500g. Reduce steaming time to 5-6 minutes. The presentation is less spectacular, but the flavor is equally delicious.

What is 蒸鱼豉油 and can I substitute it?

It is a seasoned soy sauce made specifically for steamed fish — slightly sweeter and less salty than regular light soy. If you do not have it, mix light soy sauce with a pinch of sugar and a splash of water; the result is very close.

More Cantonese Seafood & Classics

Love Cantonese cooking? Try my Salt and Pepper Prawns 椒盐虾, the lacquered Roast Duck 烧鸭, or the sweet Honey Char Siu 蜜汁叉烧.

As an Amazon Associate, I earn from qualifying purchases. These are affiliate links at no extra cost to you.

Leave a Reply

Your email address will not be published. Required fields are marked *