Whole grouper, steamed Cantonese-style. The whole game is not overcooking — grouper's thick dorsal back drags the cook long, so by the time the back is done the rest is tough. The fix: score by thickness, pull early, and a short covered rest. Finished with peanut-oil-fried fine leek over the classic raw scallion & ginger.
1 whole grouper, ~600 g–1 kg, scaled, gutted, gills out (ask the fishmonger)
20–30 g ginger — half in coins/strips for steaming, half fine-julienned for the top
2–3 spring onions — whites for under the fish, greens fine-shredded for the top
Small handful coriander, leaves picked, to finish
Finishing oil & leek
1 leek (white + pale green), very finely julienned (fine "Japanese" cut)
4–5 tbsp peanut oil — fries the leek and becomes the finishing oil
Sauce — 蒸鱼豉油
3 tbsp light soy sauce
3–4 tbsp water (or light chicken/fish stock for a rounder sauce)
1 tsp fish sauce (鱼露) — the restaurant-flavour secret; umami depth
2 tsp rock sugar (冰糖), or 1.5 tsp white sugar
1 tsp Shaoxing / huadiao wine
A few drops dark soy (老抽), optional — just for amber colour
Pinch white pepper
1 tbsp neutral/peanut oil, warmed into the soy (gloss + body)
¼ tsp sesame oil, to finish
No added salt — let the soy + fish sauce carry the seasoning
Method
Prep & score — the key step
Fish out of the fridge ~15 min before — room-temp steams more evenly. Pat dry. Do not salt the flesh (it tightens/toughens it).
Relief cut, back of each side: lay the fish on its side; run a sharp knife head→tail high on the body, just under the dorsal-fin line, angled in toward the spine and down to the bone. Flip, repeat. Opens the thick loin over the backbone — the part side-diagonals can't reach.
Crosswise diagonals, graded by thickness: 2–3 slashes per side, deep to the bone on the back half, shallower toward the thin belly. Match cut depth to flesh thickness so the whole fish finishes at once.
Elevate the fish on a couple of chopsticks + spring-onion whites in the dish so steam circulates underneath. Tuck ginger coins on top and in the cavity.
Steam
Bring the steamer to a full, fierce boil first — start timing only at full steam. High heat throughout. Lid stays shut — no peeking.
~5 min steam + 1 min rest for a ~500–600 g fish (the textbook "6 min per 500 g" slightly overshoots on a hot setup); ~10–12 min for ~1 kg. Sea fish like grouper run a touch faster than freshwater.
Rest — carryover finishes it
Pull early — target ~54 °C at the thickest part (just-opaque, slight resistance to a chopstick). Lid off, rest ~1–2 min: carryover adds a few degrees and coasts it to done. A chopstick through the nape with no resistance = ready.
Finish — order matters
Fry the leek: gently fry the julienned leek in the peanut oil over low-medium heat until pale gold — pull early, it browns/bitters off-heat. Drain on paper, set aside (your crisp topping). Keep the leek-infused oil.
Make the sauce: simmer the soy mixture + 1 tbsp oil for 1–2 min (a brief simmer dissolves the rock sugar and fuses it — tastes "restaurant"). Stir in the sesame oil off-heat. Keep warm.
Pour off the steaming liquid from the fish dish (it's fishy/watery).
Dress the fish: lay raw scallion threads + raw fine ginger threads on the fish; scatter coriander.
Sizzle: reheat the leek oil to smoking and pour over the aromatics — they sizzle and semi-cook. (Stand back — it spatters.)
Sauce around: spoon the warm soy around the fish, not over — keeps the topping crisp and the skin from going soggy.
Crisp leek on top, last — so it stays crunchy. Serve immediately.
Chef's tips
Fierce heat + lid shut + full steam before the fish goes in — the three things most home cooks get wrong.
Don't salt the flesh pre-steam; season via the soy at the end.
Keep fresh ginger (+ a little fresh scallion) even with the fried leek, or the plate skews sweet and flat — that pungency is the lift.
Fine ginger (silver-needle 姜丝): slice with the grain into thin planks, stack, cut into hair-fine threads. Soak in iced water 5–10 min to curl, firm and mellow; pat dry before topping.
Scallion threads (葱丝): cut into ~5–7 cm lengths, slice each open lengthwise, scrape out the slippery core, then cut fine threads along the length. Iced-water bath 5–10 min → they curl into ringlets and lose the raw sharpness.
Eyes turned white/popped and a clean chopstick pull = done.
Pull temp ~54 °C. Silky, just-set. ~57 °C = firmer but still moist; past ~60 °C it dries. The thick back is the universal failure point — score it deeper than the belly so the whole fish finishes together.
Variations
Japanese-pantry sauce: base of koikuchi (濃口) shoyu — enough colour to skip the dark soy; light dashi for the water; mirin for the rock sugar; sake 1:1 for the Shaoxing; nam pla / しょっつる for the fish sauce. Japanese soy runs saltier — dilute toward 1:2 soy:liquid and taste before the full sweetener.
Classic: skip the fried leek — just raw shredded scallion + ginger, smoking peanut oil, 豉油 around. The traditional benchmark.
Big fish: cut into thick blocks or peacock-cut (孔雀開屏) and re-form on the plate so the back doesn't overcook the rest.