Easy Cantonese Steamed Fish with Ginger and Scallions
This Cantonese steamed fish with ginger and scallions is one of my favorite family recipes passed down from my Cantonese dad, made with tender fish fillet, fresh aromatics, and light soy sauce that lets the natural flavor of the fish shine.

A Quick Look at the Recipe
🏷️ Recipe Name: Cantonese Steamed Fish
⏱️ Ready In: ~ 20 minutes
🍽️ Serves: 3 portions
🔥 Calories: 241 kcal per serving (estimate)
🧾 Main Ingredients: Fish fillet, ginger, scallion, chili, soy sauce, water, oil.
🥗 Dietary Info: Gluten free
🧠 Difficulty: Easy with step by step guide.
Have a question? Ask AI!
This Cantonese steamed fish with ginger and scallions is one of those dishes that proves simple ingredients can create incredible flavor. My dad was Cantonese, and steamed fish was a familiar dish at our family table. Fresh fish is gently steamed until tender, then topped with fragrant ginger, scallions, and a savory soy sauce that lets the natural sweetness of the fish shine through.
What I love most about this recipe is how surprisingly easy it is to make. While Chinese steamed fish is often served during family gatherings and special occasions, it does not require complicated techniques or a long ingredient list. The steaming method keeps the fish moist and delicate, while the fresh aromatics add layers of flavor without overpowering it.
If you enjoy homemade Chinese dishes, you may also like my juicy Char Siu Chicken, rich and tender Hong Shao Rou, or savory Egg Foo Young for another comforting meal idea.
Why You Will Love This Recipe
Recipe Ingredients

Ingredient Notes
Scallions and ginger: I use them in two ways in this recipe. The thicker scallion pieces and ginger slices are placed underneath the fish during steaming to help infuse flavor and reduce any strong fishy smell. The julienned scallions and ginger are added on top after steaming for freshness, aroma, and extra texture.
Bird’s eye chili: This ingredient is completely optional and is mainly for those who enjoy spicy food. Feel free to omit it for a more traditional Cantonese-style steamed fish.
I might also add one more because your ingredient image specifically shows snapper:
Fish fillet: I used snapper fillet for this recipe because it has a mild flavor and tender texture. Other good choices include tilapia, grouper, sea bass, or cod.
How to Make Cantonese Steamed Fish

STEP 1. Pat the fish fillet dry on both sides with a kitchen towel (Image 1). Arrange the ginger slices and scallion pieces on the base of a heatproof plate (Image 2). Place the fish on top, skin side down (Image 3). If using a whole fish, place it on either side. Steam over medium heat for about 10 minutes, or until cooked through (Image 4).

STEP 2. Check the fish by inserting a chopstick into the thickest part (Image 5). If it goes in easily and the flesh flakes, the fish is done. Carefully transfer the fish to a serving plate and discard the ginger and scallion underneath. Top with julienned ginger, scallions, and red chilies (Images 6, 7). In a small bowl, mix the soy sauce, water, and sugar until combined (Image 8).

STEP 3. Heat the oil until it is very hot and just starts to smoke (Image 9). Carefully pour the hot oil over the ginger, scallions, and chilies to release their aroma (Image 10). Gently pour the soy sauce mixture around the sides of the fish, not directly over the garnish (Images 11, 12). Serve warm.
Pro Tips
- Do not overcook the fish – Fish cooks quickly and can become dry if steamed too long. Check the thickest part with a chopstick. If it slides in easily and the flesh flakes apart, it is ready.
- Transfer to a clean serving plate for the best flavor – For a cleaner and more restaurant-style presentation, carefully move the steamed fish to a serving plate after cooking. The liquid released during steaming can dilute the sauce and may carry some fishy flavor.
- Using the same plate? Drain the liquid first – If you prefer not to transfer the fish, discard the ginger and scallions underneath and carefully pour away the liquid collected on the plate before adding the garnish and sauce.
- Heat the oil until very hot – The hot oil instantly releases the aroma of the ginger and scallions, giving the dish its signature Cantonese fragrance.

Serving Suggestions
This Cantonese steamed fish is best served warm with steamed rice so the savory sauce can soak into every bite. For even more fresh ginger and scallion flavor, serve it with my homemade ginger scallion sauce on the side. I usually pair it with simple vegetable dishes and light stir-fries that complement the delicate flavors of the fish without overpowering it.
For vegetables, try garlic green beans or green bean beef stir fry for a quick and comforting side dish. Tomato egg stir fry is another family favorite that adds a sweet and savory balance to the meal. If you would like to add another main dish, chicken mushroom stir fry also pairs beautifully with the light flavors of this steamed fish.
Finish the meal with a light dessert like peach gum dessert, or serve it with refreshing drinks such as tamarind iced tea, lychee soda, or pineapple mint soda.
Looking for more homemade Chinese dishes? Browse my Chinese recipe collection for more family favorites and easy restaurant-style meals you can make at home.
Cantonese Steamed Fish FAQs
Mild white fish with a tender texture works best for Cantonese steamed fish. Snapper, sea bass, grouper, cod, and tilapia are all good choices because they absorb the flavors of ginger, scallions, and soy sauce beautifully.
Yes. Fish fillets are easier to prepare and serve while still giving you the classic Cantonese flavors. Whole fish is more traditional, especially for celebrations, but both versions work well.
Placing ginger and scallions underneath the fish helps infuse flavor during steaming and can reduce strong fishy smells. It also slightly elevates the fish so steam circulates more evenly.
Insert a chopstick or fork into the thickest part of the fish. If it goes in easily and the flesh flakes apart, the fish is ready.
Fish naturally releases liquid during steaming. For the best flavor, transfer the cooked fish to a clean serving plate or carefully discard the liquid before adding the garnish and sauce.
You can prepare the ingredients ahead by slicing the ginger, scallions, and chilies and mixing the sauce. For the best texture, steam the fish just before serving.
Cantonese steamed fish uses simple ingredients and gentle seasoning to highlight the natural flavor of fresh fish. Instead of heavy spices or thick sauces, it relies on ginger, scallions, and soy sauce for a lighter and more delicate taste.

Storage
Cantonese steamed fish is best enjoyed immediately after cooking because freshly steamed fish has the most delicate texture and flavor. If you have leftovers, transfer them to an airtight container and store them in the refrigerator for up to 1–2 days.
To reheat, place the fish on a heatproof plate and steam gently until heated through. Avoid microwaving if possible, as it may dry out the fish and affect its texture.
Freezing: I do not recommend freezing leftover Cantonese steamed fish because the texture of the fish can become softer and less delicate after thawing.

Cantonese Steamed Fish with Ginger and Scallion
Equipment
- 1 steamer
Ingredients
- 300 gr fish
- 35 gr ginger julienne cut
- 25 gr spring onion julienne cut
- 2 pcs red chili julienne cut
- 2 pcs bird eye chili
- 2 tbsp soy sauce
- 2 tbsp water
- ¼ tsp sugar
- 3 tbsp oil
Instructions
- Pat the fish fillet dry on both sides with a kitchen towel. Arrange the ginger slices and scallion pieces on the base of a heatproof plate. Place the fish on top, skin side down. If using a whole fish, place it on either side. Steam over medium heat for about 10 minutes, or until cooked through.
- Check the fish by inserting a chopstick into the thickest part. If it goes in easily and the flesh flakes, the fish is done. Carefully transfer the fish to a serving plate and discard the ginger and scallion underneath. Top with julienned ginger, scallions, and red chilies. In a small bowl, mix the soy sauce, water, and sugar until combined.
- Heat the oil until it is very hot and just starts to smoke. Carefully pour the hot oil over the ginger, scallions, and chilies to release their aroma. Gently pour the soy sauce mixture around the sides of the fish, not directly over the garnish. Serve warm.
Notes
- Do not overcook the fish – Fish cooks quickly and can become dry if steamed too long. Check the thickest part with a chopstick. If it slides in easily and the flesh flakes apart, it is ready.
- Transfer to a clean serving plate for the best flavor – For a cleaner and more restaurant-style presentation, carefully move the steamed fish to a serving plate after cooking. The liquid released during steaming can dilute the sauce and may carry some fishy flavor.
- Using the same plate? Drain the liquid first – If you prefer not to transfer the fish, discard the ginger and scallions underneath and carefully pour away the liquid collected on the plate before adding the garnish and sauce.
- Heat the oil until very hot – The hot oil instantly releases the aroma of the ginger and scallions, giving the dish its signature Cantonese fragrance.

This Cantonese steamed fish is one of my favorite family recipes, with tender fish and simple flavors that let the ingredients shine. If you give it a try, I’d love to hear how it turns out!