This Chinese steamed fish topped with ginger and scallion, served in a lightly sweetened soy sauce, is a classic fish dish enjoyed as part of the daily meal, for banquets, and also for Lunar New Year due to its auspicious symbol, just like pan fried dumplings and turnip cake. This steamed fish recipe is takes only 20 minutes to make, is incredibly easy to follow, and needs only 6 basic ingredients! Also, because the fish is steamed, it stays juicy and tender and the ginger and green onion makes it extra fragrant. It's a great dish to enjoy anytime and also for the holidays.
If you’ve made this recipe or any recipes from our blog, please tag us on Instagram using #twoplaidaprons! You can also tag us in your Instagram stories using @two_plaid_aprons. We would love to see your creations! It absolutely makes our day! 🥰
Jump to:
Why do you eat fish for Lunar New Year?
This steamed fish recipe is perfect for weekly meal rotations, but because most Chinese superstitions are based on word play, it's also a popular dish served for Lunar New Year.
The word fish (yu - 鱼) sounds the word surplus/abundance (yu - 余). So fish dishes like this Chinese steamed fish would be served to wish for a year of abundance (nian nian you yu - 年年有余). New year rice cake (nian gao) and tang yuan (glutinous rice balls) are a couple more dishes served for prosperity and good luck.
Ingredients needed for steamed fish
Please scroll down to the recipe card for the ingredient quantities!
- White fish - This steamed fish recipe is perfect for most white fish. Some of our favorite choices are stripped bass, flounder, sea bass, tilapia, yellow croaker, and red snapper. You can find most of these choices at most Asian markets or even your local seafood markets.
- Ginger and green onion - These two aromatics makes the whole dish extra fragrant but also helps to get rid of any unwanted fishy flavor.
- Soy sauce and sugar - These two makes up the sauce. We like to use regular soy sauce because the sauce gets a little diluted by the fish broth (from steaming the fish) and because the fish only gets dipped in the sauce as you eat it. It doesn't not soak up the sauce. However, if you prefer, you can definitely use low sodium soy sauce instead.
- Oil - Any high smoke-point, neutral cooking oil is perfect. We usually use avocado oil, grapeseed oil, or canola oil.
Best fish for making Chinese steamed fish
The best fish for this this Chinese steamed fish recipe is a white fish because steaming is better suited for milder, delicate fish. For example, salmon is not the best choice for this recipe because it's too strong in flavor and fatty. Likewise, tuna is not suitable either because it's too irony.
Our favorite fish for steaming is a nice flounder. It's flat, mild in flavor, but it also has just enough fat to ensure the fish stays tender, juicy, and flavorful. Which brings me to another point. Avoid getting fish that are too thick because the thickness plays a big factor in the steaming time. Yes, you can overcook a fish by steaming it. So those meatier, thick fish will take longer to cook, which could result in a dry fish.
Other great fish choices are stripped bass, sea bream, sea bass, yellow croaker, cod, and red snapper.
How to steam fish (Chinese-style)
Please scroll down to the recipe card for the full recipe and instructions!
1. Prepare the steamer. Set up your steamer with about 2 inches of water and bring it to a boil.
2. Clean the fish. Get the fish scaled and gutted. Then rinse it well to remove any debris, blood, scales. Pat dry with paper towels.
🌟 Pro move: Remove the dark red line that runs down the side of the fish spine. This is known as the bloodline and it contributes to the fish's fishiness and unwanted irony flavor. Sometimes the butcher will have it cleaned for you, but if not, you can easily do it yourself. Run a sharp knife along the fish spine to cut open the membrane. Then use your thumb to remove the bloodline from the spine of the fish.
3. Prepare the fish. Stuff the inside cavity of the fish with half of the ginger and green onion and place the fish onto the heatproof plate/dish that you'll be steaming in. Top the fish with the remaining julienned ginger.
4. Steam the fish. Place the plate with the fish into the steamer and cover. Let the fish steam for about 11 to 13 minutes, until the fish is cooked through.
✅ How to check if the fish is cooked: You can do so by breaking off a piece of the fish at its thickest area. If the flesh if flakey and white, it's cooked. You can also check by inserting a thermometer into the thickets part of the fish. The internal temperature should register 140-145°F (60-63°C). If the fish is not cooked through, steam for a couple extra minute or until cooked.
5. Make the sauce. While the fish is steaming, make the sauce by mixing together the soy sauce and sugar until the sugar has dissolved.
Once the fish is cooked, there will be a pool of liquid on the bottom of the plate. That's normal and its "fish broth" from steaming the fish. It'll give the sauce extra flavor. Pour the sauce over the entire fish then scatter the remaining green onion on top of the fish.
6. Finish. In a saucepan over medium high heat, heat up the oil until it is shimmering and starts to smoke. Carefully pour the hot oil over the green onion.
Top the steamed fish with some cilantro if desired. Enjoy the fish dipped into the sauce with some ginger, green onion, and cilantro while it's hot!
How to serve a whole steamed fish
For most Asian families, steamed fish is served whole and everyone at the table partakes in picking the fish off the bone as they enjoy their meal. Sometimes the fish gets cut and placed onto your plate so that you can remove all the bones and pick at the meat.
However, if you're serving it at a dinner party to your guests, you can totally impress your guests and save them from all the fish bones with some table-side fish carving service!
Table-side fish carving guide:
1. Using a spoon, separate the fish fillet from the head and tail of the fish. Just cut through the meat but you don't have to cut all the way through the bones.
2. With the back of the spoon, make a long incision down the spine of the fish. Keep the spoon as close to the fin bones as possible to avoid waste.
3. Once the incision has been made, push the spoon further into the fillet. The fillet should easily separate from the fish bones. Lift and flip the fillet skin side down onto the plate.
4. Firmly cut down at the nape of the fish spine to break it. Then lift up the bone to remove it. If you're removing the fish head too, you don't have to break the spine. Instead, you can just lift the entire spine bone along with the fish head from the other fillet. Remove the rib bones and if desired, the fin bones as well. Discard these bones or move it to the edge of your platter.
5. Generously spoon the sauce onto to both fillets. Portion and serve the fish immediately while it's hot.
Recipe tips
- Ask for your whole fish to be descaled and gutted. This service is usually offer for free and will save you a lot of time, the cleaning, and the fish scale treasure hunt.
- Remove the bloodline for a cleaner taste. The bloodline is usually what makes the fish extra fishy. So removing it will help make the fish taste cleaner.
- Keep the "fish broth" to dilute the soy sauce for an extra flavorful sauce. The broth is already flavored by the fish, ginger, and green onion, so it's already packed with flavor.
- Line the bottom of the fish with thin slices of ginger to prevent the skin from sticking to the plate after steaming. The collagen in the fish skin makes it really sticky, so using ginger slices, a gap is created to prevent that and to make the fish extra fragrant.
Storage
Fish of any kind is best enjoyed freshly made because reheating can easily cause it to dry out. However, if you have leftover steamed fish, it can be stored in the fridge for up to 4 days. Transfer the fish into a container and the sauce to another. This is to prevent the fish from "marinating" in the sauce and becoming too salty. Make sure to let the fish cool completely before covering and refrigerating.
Reheating
The easiest way to reheat the fish is by microwaving but the best way is by steaming or baking in the oven.
Microwave method: Place the steamed dish in a microwave safe container and cover loosely. Microwave until warm then pour the sauce over the fish. Heat again until warm and the fish is warmed through.
Steaming method: Put the fish on a heatproof plate or container and pour the sauce over it. Place it into a high simmering steamer and steam for about 5 minutes or until heated through.
Oven method: Wrap the leftover fish in foil with the sauce and bake in a 350°F preheated oven for 5 to 10 minutes or until heated through.
FAQs
The steaming time really depends big the fish is, especially its thickness. Typically, a 1.5 pound fish that's about 1.5 inches thick takes about 10 to 11 minutes to steam. Thinner fish will take less time.
The easiest way to check if a fish is cooked is by checking its flesh where it's the thickest. The meat should be white and opaque and flakey. You can also check using a thermometer and the internal temperature should register 140-145°F (60-63°C). The remaining heat will carry over and keep cooking the fish.
You can use gluten free soy sauce or substitute with tamari to make this steamed fish recipe gluten free.
If you don't have a steamer, you can make one with a metal steaming rack and a wide pot or wok with a lid. Simply place the rack in the pot or wok and add water half way up the rack. You can place the plate of fish on top of the rack to steam. You can also DIY a steaming rack by using metal cans like from canned tuna. Just remove the top and bottom of the can you voila! Use it as you would a steaming rack.
📖 Recipe
Steamed Fish
Ingredients
For the fish:
- 1½ pound whole white fish descaled and gutted *see notes
- 2 inches ginger peeled and cut into juliennes (aka thin matchsticks), divided
- 2 stalks green onion thinly sliced and divided
- 2 tablespoons oil any neutral oil with high smoke point
- ¼ cup cilantro cut into 1 inch pieces (optional)
For the sauce:
- ¼ cup regular soy sauce *see notes
- 2 teaspoon granulated sugar
Instructions
- Bring 2 inches of water to a boil in your steamer then reduce the heat to keep it at a high simmer.
- While the water is heating up, rinse the whole fish under water to remove any impurities or scales. Gently pat the fish dry with paper towels.
- Stuff half julienned ginger and green onion inside the fish and place the fish onto a heatproof plate for steaming. Place the remaining julienned ginger on top of the fish.
- Once the water is ready, place the fish (with the plate) into the steamer. Cover and steam the fish for about 11 to 13 minutes until the fish is cooked through.*The cook time will depend on the thickness of the fish. Most fish around 1.5lb take only 12 minutes or less. You can check to see if the fish is done by cutting into the thickest part of the flesh using chopsticks or a spoon. The flesh should be white and flakey.*
- While the fish is steaming, make the sauce. Combine the soy sauce and sugar. Mix until the sugar has completely dissolved. Set aside until needed.
- Once the fish is cooked, carefully remove the whole plate from the steamer. There will be a pool of liquid on the plate and that's broth from the steaming the fish and its totally normal.*Optional - You can transfer the fish into a serving platter if you want. If doing so, make sure to keep the fish broth too.*
- Pour the prepared soy sauce over the whole fish and top the fish with the remaining green onion.
- In a saucepan, add the oil and heat on medium high until the oil is shimmering and starts to smoke. When the oil is ready, carefully pour it over the fish on top of the green onion.
- Garnish the fish with cilantro if you'd like enjoy while it's hot!
Notes
- White fish - This recipe is great for most white fishes. Some of our favorites are white stripped bass, sea bream, sea bass, flounder, yellow croaker, cod, and snapper.
- Descaled and gutted - You can do this at home or ask the seafood department to have the fish descaled and gutted for you.
- Soy sauce - We prefer using regular soy sauce for this recipe because we like our sauce on the saltier side since the fish will only be dipped in the sauce and won't be soaking up the sauce. It does get slightly diluted by the fish broth. But if you prefer, you can use low sodium soy sauce to have a more mellow sauce.
Paul says
Could I use fish fillet?
Mei says
Hi Paul! Yes, you can definitely use just fish fillet. The only thing to note is the steaming time. Depending on the size and thickness of your fillet, the steam time may be as little as 4 minutes. Also, we recommend making a little aromatic bed of green onion and ginger to put the fillet on (skin side up) when steaming to protect the fish and to make it more aromatic. Hope this helps!
Mei ❤️