Steamed fish with soy sauce is a classic Cantonese dish where a whole fish is steamed until just tender, then dressed with a hot, aromatic soy-based sauce and sizzling oil. The gentle steaming keeps the flesh moist and flaky, while the sauce—made with light soy sauce, sugar, and a touch of water—adds savory depth without masking the fish’s natural sweetness. It’s a simple, elegant dish that works for weeknight dinners or special occasions.
Ingredients
- 1 whole fish (about 1–1.5 lb / 450–680 g), scaled and gutted (e.g., sea bass, trout, or snapper)
- 2 scallions, white and green parts separated, julienned
- 1 (2-inch / 5 cm) piece fresh ginger, peeled and julienned
- 3 tbsp (45 ml) light soy sauce
- 1 tsp (5 ml) dark soy sauce (optional, for color)
- 1 tsp (5 g) granulated sugar
- 3 tbsp (45 ml) water
- 2 tbsp (30 ml) neutral oil (e.g., canola or vegetable)
- Fresh cilantro leaves (optional, for garnish)
Instructions
- Pat the fish dry with paper towels. Make 2–3 shallow diagonal cuts on each side to help it cook evenly. Season lightly with salt on both sides and inside the cavity.
- Place a few slices of ginger and a few white scallion pieces inside the cavity. Arrange the fish on a heatproof plate that fits inside your steamer.
- Fill a wok or large pot with about 2 inches (5 cm) of water and bring to a rolling boil over high heat. Place a steaming rack or a small inverted bowl in the pot, then set the plate on top. Cover and steam over high heat for 8–10 minutes, depending on thickness. The fish is done when the flesh flakes easily with a fork and the internal temperature reaches 145°F (63°C) (USDA FSIS safe minimum for fish).
- Carefully remove the plate from the steamer (use tongs or oven mitts). Pour off any accumulated liquid from the plate—this can be fishy and watery.
- In a small bowl, mix the light soy sauce, dark soy sauce (if using), sugar, and water. Stir until the sugar dissolves.
- Scatter the julienned ginger and white scallion over the cooked fish. Pour the soy mixture evenly over the top.
- In a small saucepan, heat the neutral oil over high heat until shimmering and just smoking (about 30–60 seconds). Carefully pour the hot oil over the ginger and scallions—it will sizzle and release their aroma.
- Garnish with green scallion tops and cilantro leaves, if desired. Serve immediately.
Tips
- Choose a fresh whole fish—clear eyes, bright red gills, and a clean smell. If using fillets, reduce steaming time to 5–7 minutes and place them skin-side down.
- Don’t skip pouring off the liquid after steaming; it’s watery and can dilute the sauce. Use a wide spatula to lift the fish if needed.
- For a more aromatic sauce, add a few drops of sesame oil or a pinch of white pepper to the soy mixture.
- If you don’t have a steamer, use a large pot with a metal colander or a heatproof plate set on a small inverted bowl. Ensure the water doesn’t touch the plate.
Serving Suggestions
Serve the steamed fish with steamed jasmine rice and a simple green vegetable like bok choy or Chinese broccoli. It also pairs well with a light soup, such as egg drop or wonton soup. For a family-style meal, place it in the center of the table and let everyone help themselves.
Variations
- Spicy version: Add 1–2 sliced bird’s eye chilies or a teaspoon of chili oil to the sauce before pouring.
- Black bean sauce: Replace the soy mixture with 2 tbsp fermented black beans (rinsed and mashed) mixed with 1 tbsp soy sauce, 1 tsp sugar, and 2 tbsp water.
- Thai-style: Use a combination of lime juice, fish sauce, and a little palm sugar instead of soy, and top with fresh Thai basil.
- With mushrooms: Add a few sliced shiitake mushrooms to the plate before steaming for an earthy flavor.
Storage and Reheating
Steamed fish is best enjoyed fresh, but leftovers can be stored in an airtight container in the refrigerator for up to 2 days. To reheat, place in a steamer over boiling water for 3–4 minutes, or microwave on medium power in 30-second intervals until just warmed through. Avoid overcooking, as the fish will become dry. The sauce may thicken slightly; add a teaspoon of water if needed.
Frequently Asked Questions
Can I use frozen fish? Yes, but thaw it completely in the refrigerator overnight. Pat it dry before steaming to remove excess moisture. Frozen fish may release more liquid, so be sure to drain it well after steaming.
What if I don’t have a steamer? You can use a large pot with a lid, a metal colander, or a heatproof plate set on a small inverted bowl. Just make sure the water doesn’t touch the plate, and keep the lid on to trap steam.
How do I know when the fish is done? The flesh should be opaque and flake easily with a fork. For accuracy, use an instant-read thermometer—it should read 145°F (63°C) in the thickest part.
Can I use fillets instead of a whole fish? Absolutely. Use 2 fillets (about 6 oz / 170 g each) and reduce steaming time to 5–7 minutes. Place them skin-side down and follow the same steps.
Why is the hot oil poured over? The hot oil sizzles and briefly cooks the ginger and scallions, releasing their fragrance and slightly toasting them. It also helps the sauce cling to the fish.
Is dark soy sauce necessary? No, it’s optional. Dark soy sauce is slightly thicker and sweeter, and it gives the sauce a deeper color. If you don’t have it, just use all light soy sauce.
Related
- Potato Bread Hamburger Buns Recipe
- Potato Bread Cinnamon Rolls: Soft & Fluffy Recipe
- Potato Bread Cubes: Crispy Croutons Recipe
More recipes to cook
Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes
Spotted an error? Tell us and we will correct it (corrections policy).