Cantonese Steamed Fish

Having grown up in Hong Kong, I have so many memories of eating this celebration dish; fighting over the Lazy Susan to keep that fish on my side of the table! Once I started to delve into the cooking-world, it became my mission to finally get those exact same flavours onto my own table at home.

This fish should be served whole in line with traditional Cantonese festive style. You don’t even need to take the fins off! This is a super easy yet impressive dish to present to your loved ones.

Jump to Recipe Jump to Video

You can easily cook more than one fish at a time if you have a group coming over. Just remember to buy similarly weighted fish so they cook at the same rate.

When testing if the fish is nicely cooked, carefully flake some of the flesh towards the spine, in the middle of the fish, where you have scored the skin. Don’t worry too much about making a mess as we’ll be covering it up with veggies!

The best fried rice is actually made with day-old rice and is definitely worth the forward-planning if you’ve the time.

Cantonese Steamed Fish

Beautiful whole steamed snapper served with simple ginger fried rice.
Course: Lunch, Main Course, Sharing
Cuisine: Cantonese, Chinese, Seafood
Keyword: Cantonese, Fish, Healthy, Seafood, Steam
Servings: 2


  • Wok with steaming rack or a steamer
  • Parchment paper


  • 1 Red snapper, medium-sized Whole; gutted and descaled
  • 10 Spring onions
  • 2 Banana shallots; or 3regular shallots
  • 2 Inch Fresh ginger
  • 4 Bunches fresh cilantro
  • 1 Tbsp Coarse sea salt
  • 1 Tsp Sesame oil


  • 1/4 + 1/2 Cup Shaoxing rice wine Divided
  • 1 Tbsp Light soy sauce Or soy alternative such as coconut aminos
  • 1 Tbsp Dark soy sauce
  • 150 Ml Chicken or vegetable broth or stock Water will do in a pinch
  • 2 Tsp Cane sugar Or coconut, demerara or brown sugar
  • 2 Tsp Sesame oil
  • 1 Tsp Peanut oil

Ginger Fried Rice

  • 2 Cups Cooked brown rice (1 cup raw brown rice, cooked according to packet directions)
  • 1 Inch Fresh ginger
  • 2 Tbsp Peanut oil
  • 1 Tsp Fine salt such as Pink Himalayan


The day before

  • Cook your rice according the directions on the packet; refrigerate. If you’re buying fresh snapper and you’re not 100% confident in your supplier, you can freeze the fish to kill off any bacteria and defrost it the morning you plan to cook.

Prepare your fish

  • Before we prepare the vegetables, bring your fish to room temperature.Thoroughly rinse the snapper inside and out and check all of the scales have been removed; use the back of your knife to scrape off any stragglers. Pat dry and lay onto a chopping board.
  • Prepare a wok or steamer with ½ cup Shaoxing wine and 2 cups of water;put your steamer rack in place. Cover and bring the water up to a boil.
  • Prepare your sauce: combine the soy sauces, stock, sugar, Shaoxing, sugar and oil in a small bowl and set aside.
  • Take a sharp knife and gently score three or four diagonal slices across the body of your snapper. Don’t press too hard – you want to feel the rib bones under your knife but not to go through them. Rub coarse salt into the skin of your fish.
  • Prepare some parchment paper with a light brush of sesame oil to prevent your fish from sticking; lay your fish on top and set aside, lightly covered.
  • Skin your shallots, one chunk of ginger and remove the outer layer of your spring onions (keep one aside). Slice the vegetables into long thin strips, taking care to wash any dirt from your spring onion tops. Wash the cilantro.
  • Finely dice the remaining spring onion and chunk of ginger into ½ cm pieces and set both aside.
  • Take a couple of pieces of each of your vegetables and gently wedge them into the slices across your fish; lay a couple of stems of cilantro over the top.Check your water is at a rolling boil, and gently place the fish and parchment into your steamer rack. Set a timer for 15 minutes.
  • In a small pan, bring your sauce to a boil; remove the pan from the heat and add your remaining vegetables to soften.

Rice – this is super quick and easy!

  • Heat 2 tablespoons of peanut oil and add the ginger. Cook for 30seconds – 1 minute until it is really aromatic. Add in your rice and a large pinch of fine salt and toss to combine. Remove from the heat and keep covered until you’re ready to serve, garnished with the finely chopped spring onion.

Finishing Up

  • If your fish is ready, the flesh will flake apart if you gently run a fork over it. If not, cook for another 3 minutes or so. Once ready, use a large slice slice to manoeuvre your fish onto a serving dish. Evenly spread your softened veggies over your fish, pour your sauce on and bring any extra sauce over to the table with you – it will swiftly disappear!


  • This dish really speaks for itself. You can jazz it up a little with some beautiful crockery or some extra, fresh herbs but there’s no need to over-complicate things. With Cantonese food, you just want to people to dive right in and make a good old mess!!


We would love to hear what you think of our dish.

Please leave a comment below, or if you’ve given this or another dish a whirl, please tag us on Facebook, Instagram or Pinterest so we can see your hard work!

Author: thedbkitchen

Niche-free recipes, created out of a pure love of food, by home cook Carmel de Bedin (that’s me!). Genuine, accessible dishes tried and taste-tested by a couple of food nerds who truly love a good meal.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.