A fresh whole fish steamed to a tender texture, seasoned with a delicious dressing, Chinese steamed fish requires little cooking skill but tastes incredible.

A must-have for Chinese feasts
A Chinese saying explains how important fish dishes are to Chinese cuisine: 无鱼不成席 (Wú Yú Bù Chéng Xí) meaning you can’t call it a feast if there is no fish present. As the centrepiece of a multi-course meal for festivals and special occasions, the fish has to be whole with the head, tail and fins all in place. Among many varieties, steamed fish is no doubt the most popular type as it retains the best natural taste of the fish.
Today’s recipe is based on Cantonese style steamed fish which is seasoned with a simple soy sauce based dressing, along with aromatics like scallions and ginger. I give the traditional recipe a twist by infusing the oil with dried chili and Sichuan peppercorn.
The freshness of the fish matters
Many types of fish can be used to make delicious Chinese style steamed fish. For shooting this recipe, I used sea bream which is widely available in the UK. Sea bass, grass carp, perch, grouper, catfish, flounder, etc. all work very well. Although traditional recipes call for white flesh fish, I find rainbow trout a great option too.
No matter what fish you use, make sure it’s as fresh as possible (straight out of a fisherman’s net if possible). Believe me! In terms of both taste and texture, the freshness of the fish contributes the most to the success of this steamed dish. It’s not ideal, but acceptable, to use frozen fish for heavily seasoned dishes, such as Sichuan Boiled Fish or Sweet & Sour Fish. But for today’s recipe, I strongly recommend fresh fish.
Prepare the fish before steaming
If the service is available, have the fish gutted and descaled by the fishmonger, but keep the head and tail on for the whole look. If you have to do the work yourself, have a look at this tutorial on how to descale and gut a fresh fish.
Before steaming, give the fish a good rinse under running water then pat dry thoroughly using kitchen paper. Lay the fish on a chopping board to cut it at a 45-degree angle several times on each side. This helps to cook through quickly and allow more flavour to penetrate.
The last step of preparation is to “dress” the fish with some aromatics: scallions and ginger. Cut them into thin strips and place them underneath and over the fish, as well as inside the cavity. During steaming, they lend a beautiful, subtle aroma to the fish. Be generous in volume if you appreciate their tastes as I do.
How to set up a steamer
To steam a fish whole, you would usually need a wok that is big enough to fit a plate which holds the fish. Here is how you set up a steamer:
- Place a small bowl in the middle of the wok (use a wire steamer rack instead if you have one).
- Add water to the wok. Make sure it’s lower than the bowl/rack.
- Bring the water to a full boil then put the fish plate on top of the bowl/rack. Cover with a lid to steam.
The home version of bamboo or metal steamers are often too small for placing a whole fish in (especially if you’ve got an extra-long one). In this case, follow the “cheat” method that I learnt from food writer Fuchsia Dunlop:
- Cut the fish into halves at a steep diagonal angle.
- Put them side by side onto a small plate that fits into your steamer.
- After steaming, transfer to a serving plate and join the two halves together to regain a whole fish appearance.
Steam for about 8 minutes
Take the sea bream in my image for example. It weighs about 400g/14oz and I steamed it for 8 minutes over high heat. Please feel free to adjust the cooking time based on the size of your fish. Remember to set a timer as soon as you put the fish into the wok/steamer, especially when you’re multitasking in the kitchen and can be easily distracted.
The goal is to avoid overcooking and achieve the “just cooked” texture: perfectly tender and juicy. If uncertain, gently poke the thickest part of the fish with chopsticks. If the flesh comes off the bones effortlessly, it’s fully cooked. Remove the fish plate immediately from the wok/steamer.
Season with spiced oil & soy sauce
After steaming, you’ll see some cloudy water in the plate which comes from the condensation. It’s very important to remove it before adding any seasoning to the fish as you don’t want it to dilute the sauce.
Heat up about one and a half tablespoon of neutral-flavoured cooking oil, along with sliced dried chili and a pinch of whole Sichuan peppercorns. As soon as the oil starts to smoke, pour it over the fish. Traditional Chinese steamed fish, which is often cooked in the Cantonese style, doesn’t include any spices in the oil. You may do so if you wish. But I highly recommend you try my way to spicy it up. It won’t come out too hot but a subtle hint of spiciness and numbing sensation can effectively elevate the taste of the dish.
Now onto the final step: briefly heat up the sauce in the pan you just used for the oil then pour it over the fish. The simple sauce consists of:
- Soy sauce, the star seasoning for Chinese steamed fish. Use the light version or regular soy sauce (which isn’t labelled as light or dark).
- Shaoxing rice wine which can be replaced by dry sherry, sake or regular white wine for this recipe. If you wish to make the dish alcohol-free, please feel free to skip it.
- Sugar and white pepper which enhance the umami taste.
You can use fish fillet too
As I mentioned in the beginning of the post, fish is appreciated whole in most dishes of Chinese cuisine. That being said, the steaming method and seasoning formula can be applied to skinless, boneless fish fillet too. You may need to adjust the cooking time a little based on the thickness of the fillet, but everything else can be done exactly the same way. I often steam fresh cod fillet which is absolutely delicious!
Steamed Fish, the Chinese Way (清蒸鱼)
Ingredients
- 1 whole fish, gutted and descaled - about 400g/14oz, see note 1
- 2 stalk scallions, julienned
- 1 small piece ginger, julienned
- 1½ tablespoon cooking oil - sunflower, vegetable, peanut, etc.
- 1 dried chili, julienned
- 1 pinch whole Sichuan peppercorn
- 3 tablespoon light soy sauce
- 1 tablespoon Shaoxing rice wine - see note 2
- ½ teaspoon sugar
- 1 pinch ground white pepper
Instructions
- Wash the fish thoroughly then pat dry with kitchen paper. Cut the fish at a 45-degree angle several times on each side. Lay it onto a plate that fits in the wok/pot which you’ll use to steam.
- Put ⅓ of the scallions and ginger into the cavity of the fish. Scatter the rest under and over the fish.
- Place a steamer rack (or a small bowl) in the middle of a wok. Add water to the pot (lower than the rack/bowl) and bring it to a full boil.
- Put the fish plate on top of the rack (bowl). Cover the wok with a lid. Steam over high heat for 8 minutes (add 2 more minutes if your fish is larger).
- Take out the plate (use oven gloves to avoid burning). Carefully remove the cloudy liquid.
- Heat up oil, dried chili and Sichuan pepper in a small pan over low heat. As soon as the oil starts to smoke, pour it over the fish (you may either pour the spices onto the fish or discard them).
- Add light soy sauce, Shaoxing rice wine, sugar and white pepper to the same pan. Heat up until it bubbles. Pour over the fish.
- Serve immediately with plain rice (Don’t forget to dip the flesh into the sauce for best flavour).
NOTES
NUTRITION
NUTRITION DISCLOSURE: Nutritional information on this website is provided as a courtesy to readers. It should be considered estimates. Please use your own brand nutritional values or your preferred nutrition calculator to double check against our estimates.
Have not try yet. Will give my comment after trying out. Thanks
Really simple and easy to make. It also taste delicious. Thanks!
Thank you for featuring a delicious, easy-to-prepare dish!
I used tilapia because it is less expensive and has a ‘neutral’ taste, but followed your ingredients and directions. The feedback from the household is so positive that I’m including it in my kitchen repertoire!
Lovely to hear that Nick!
Cooked this for Chinese New Year 2023 and everyone loved it. No fishy smells or taste. Just fish! Thank you.
That’s wonderful to hear. Happy New Year!
i will try to make this for this chinese new year! hopefully i could make it 😀
Happy cooking!
Super delicious and very easy to follow.
That’s great to hear Jennifer!
I am not a good cook. Shall try your recipe soon. Reckon the results would astonish my friends. This terrible cook prepared the steam fish????? I m certain of receiving compliments from your 5 star recipe. Thanks
Happy cooking Jay!
This recipe was so good. First time steaming fish, or ever actually using a whole one. Thanks for making this great dish accessible!
So simple and easy to execute!
I tried your recipe today using sea bass fish fillets. The recipe was tweaked slighty combing the proceduresof making the sauce consequent to steaming. It was easy to prepare and delicious.
Happy to hear that Krish!