I find that many people shy away from cooking whole fish, but this simple method is actually one of the most rewarding and healthiest dinners you can make. This vibrant steamed fish recipe transforms a whole fish with a quick marinade and a spicy chili oil drizzle in under 20 minutes. We’re skipping complex techniques and focusing on maximum flavor from fresh herbs, ginger, and garlic. The result is delicate, moist fish complemented by a rich, savory-spicy sauce that looks incredible on the plate. It’s a perfect family dinner that feels impressive without requiring extra effort or cleanup.

Ingredients for Steamed Fish with Chili Oil
- Whole Fish (600-800 g / 1.3-1.8 lb): Use snapper, branzino, or barramundi. Ask your fishmonger to scale, gut, and clean it for convenience. Pat it dry thoroughly before starting.
- Fresh Ginger (50 g / 1.8 oz sliced + 20 g / 0.7 oz julienned): The sliced ginger goes under the fish for steaming, while the julienned pieces go into the hot oil drizzle for flavor infusion.
- Scallions (Green Onions, 4 stalks, divided): Half are chopped for the herb marinade paste; the other half are julienned for the final fresh garnish on top.
- Fresh Cilantro (1 bunch / 30 g / 1 oz, divided): Half goes into the herb paste, and the rest is reserved for garnish. Use fresh, vibrant leaves.
- Limes (2 medium): Use one for zest and juice in the marinade; thinly slice the other for optional garnish. The acidity brightens the dish.
- Garlic (4 cloves, minced): Forms the core aromatic base for the herb paste, essential for depth of flavor.
- Fresh Green Chili (e.g., serrano, 1, minced): Adds a sharp heat to the marinade; remove seeds to control the spice level. (For a milder option, use a small amount of dried chili flakes instead.)
- Light Soy Sauce (60 mL / 1/4 cup): Provides the deep umami and salinity for the chili oil drizzle. (Use tamari if you need a gluten-free option.)
- Granulated Sugar (5 g / 1 teaspoon): Balances the acidity from the lime and the salinity from the soy sauce, preventing the sauce from tasting flat.
- Neutral Oil (120 mL / 1/2 cup, divided): Use grapeseed or canola oil for its high smoke point, essential for heating to a high temperature without burning the chili flakes.
- Dried Chili Flakes (10 g / 2 tablespoons): Infuses the hot oil with color and heat. Gochugaru flakes work best here for their mild, smoky flavor.
- Toasted Sesame Oil (5 mL / 1 teaspoon): Adds a deep, nutty aroma to finish the sauce. Add this last to retain its flavor.
Instructions for Steaming Whole Fish
- Prepare the fish: Pat the fish completely dry inside and out using paper towels. Use a sharp knife to make 2-3 diagonal scores on both sides of the fish, about 1 cm deep. These scores help the marinade penetrate and ensure quick, even cooking, which is crucial for a great steamed fish recipe.
- Make the vibrant herb paste: In a food processor, combine 20 g of the sliced ginger, 2 stalks of chopped scallions, half the cilantro, lime zest and juice, minced garlic, and minced green chili (if using). Pulse or chop until a coarse, aromatic paste forms, ensuring the ingredients are well-combined.
- Season the fish: Generously rub the prepared herb paste all over the fish, including inside the cavity and into the scored cuts. Allow this quick steamed fish recipe to marinate at room temperature for 15-20 minutes while you prepare your steamer setup.
- Steam the fish: Arrange the remaining 30 g of sliced fresh ginger on a heatproof plate that fits into your steamer basket. Carefully place the marinated fish on top of the ginger slices. Steam over a pot of rolling boiling water for 8-12 minutes, depending on the thickness of the fish. The flesh should turn completely opaque and flake easily at its thickest point near the spine when done, ensuring a perfect steamed fish.
- Prepare the chili oil drizzle: While the fish is steaming, heat 90 mL of neutral oil in a small saucepan over medium heat until it shimmers (approx. 175°C / 350°F). Combine the dried chili flakes and julienned fresh ginger in a separate heatproof bowl. Pour the hot oil over the mixture; listen for the vigorous sizzle and let steep for 5 minutes to infuse. Stir in the soy sauce, sugar, and toasted sesame oil. If the oil sizzles too hard and burns the flakes, remove it from heat for a few seconds to cool before pouring over the mixture.
- Finish and serve: Carefully transfer the steamed fish plate to a clean serving platter. Garnish generously with the remaining julienned scallions and fresh cilantro leaves. Pour the warm chili oil drizzle evenly over the entire fish, ensuring it coats all the aromatics and creates a glossy pool around the base. I love serving this family-friendly steamed fish recipe immediately with steamed rice; the hot oil makes a satisfying sound when it hits the fresh herbs.
What to Serve with Steamed Fish
The beauty of this steamed fish recipe is its versatility. The vibrant, savory-spicy sauce pairs well with a variety of simple sides that keep the meal family-friendly and quick. Here are a few great pairings:
- Steamed Jasmine Rice: The fluffy texture and subtle fragrance of jasmine rice are perfect for soaking up the vibrant chili oil and delicate fish juices.
- Stir-fried Greens: A simple stir-fry of bok choy, gai lan (Chinese broccoli), or asparagus complements the fish without competing with the complex sauce.
- Noodles: Quick-cooking noodles tossed lightly with sesame oil or a splash of soy sauce offer a more substantial meal option.
- Fresh Salad: A crisp cucumber salad or a simple green salad with a light vinaigrette provides a refreshing contrast to the rich chili oil and healthy steamed fish.

Why Steaming is the Healthiest Way to Cook Fish
Steaming is a method for cooking fish that locks in flavor and nutrients. This technique retains essential vitamins, minerals, and omega-3 fatty acids that might leach out during other cooking methods like boiling or frying. Because steaming requires no added oil or fat, this steamed fish recipe is inherently lighter than pan-frying or deep-frying.
The gentle, moist heat prevents the delicate fish flesh from drying out, ensuring every bite is tender and juicy. The high heat of the steam cooks fish quickly, locking in flavor and nutrients in just minutes, making it ideal for quick meals and healthy eating. This method is key to a successful, high-protein meal.
FAQs
Can I use fish fillets instead of a whole fish for this recipe?
Yes, you can use fillets, but reduce the steaming time significantly to 4-6 minutes, depending on thickness, to prevent overcooking. Be sure to pat the fillets dry first and rub the herb paste on both sides for maximum flavor infusion.
How do I know when the steamed fish is done?
Use a fork to test the thickest part of the fish near the bone; if the flesh is opaque and flakes easily, it is done. Avoid cooking until it’s tough or dry. The cooking time for this steamed fish recipe can vary depending on the thickness of your specific cut of fish.
How long should I marinate the fish?
15-20 minutes at room temperature is sufficient to infuse the flavors without breaking down the delicate fish flesh. If marinating longer, refrigerate it for no more than 30 minutes, as the lime juice will start to cook the fish (like a ceviche) and change the final texture.
Can I use other types of fish?
Yes, any white-fleshed fish works well, especially cod, sea bass, or tilapia. Avoid oily fish like salmon, as the flavor profile may clash with the traditional Asian-style sauce in this steamed fish recipe.
How do I prevent the fish from sticking to the plate in the steamer?
Ensure your heatproof plate is lightly oiled, or place slices of fresh ginger underneath the fish as instructed to act as a barrier. I’ve found that the ginger slices add flavor while preventing sticking, making them essential to this steamed fish recipe.
What if I don’t have a bamboo steamer basket?
You can create a makeshift steamer by placing a heatproof bowl or crumpled aluminum foil balls in the bottom of a large pot with water, then placing the plate of fish on top. Cover the pot tightly to trap the steam and ensure even cooking.
How do I store and reheat this steamed fish recipe for meal prep?
Leftovers from this healthy steamed fish recipe can be stored in an airtight container in the fridge for 2-3 days. To reheat, I recommend warming gently in the microwave for 60-90 seconds, just until warm, to prevent the fish from overcooking and getting tough. I usually eat it cold over a salad the next day, which makes a great healthy meal prep option.
Conclusion
Steaming fish with a vibrant chili oil drizzle is a simple yet stunning way to bring restaurant-quality flavors into your home kitchen. This method ensures a moist and tender result, while the fresh herb and chili sauce provides a burst of flavor that’s perfect for a weeknight meal or entertaining guests.
Pin this steamed fish recipe and try it next time you’re looking for a healthy, impressive, and delicious dinner in under 30 minutes.
Print
steamed fish recipe
- Total Time: 35 minutes
- Yield: 4 servings
- Diet: General
Description
This vibrant steamed fish recipe transforms a whole fish with a quick marinade and a spicy chili oil drizzle in under 20 minutes. It’s a healthy and rewarding dinner, focusing on fresh herbs, ginger, and garlic for maximum flavor.
Ingredients
- 1 whole fish (e.g., snapper, branzino), scaled and gutted (1.3–1.8 lbs)
- 50 g fresh ginger, sliced (for steaming plate)
- 20 g fresh ginger, julienned (for chili oil)
- 4 stalks scallions, divided (chopped and julienned)
- 1 bunch fresh cilantro, divided (for paste and garnish)
- 2 medium limes (zest and juice, plus slices for garnish)
- 4 cloves garlic, minced
- 1 green chili (e.g., serrano), minced
- 60 mL light soy sauce (or tamari)
- 1 teaspoon granulated sugar
- 120 mL neutral oil (grapeseed or canola), divided
- 2 tablespoons dried chili flakes (gochugaru recommended)
- 1 teaspoon toasted sesame oil
Instructions
- Prepare the Fish: Pat the whole fish completely dry with paper towels. Score both sides of the fish with 2-3 diagonal cuts, about 1 cm deep.
- Make Herb Paste: In a food processor, combine 20 g of sliced ginger, 2 chopped scallions, half of the cilantro, lime zest, lime juice, minced garlic, and minced green chili. Pulse until a coarse paste forms.
- Season and Marinate: Rub the herb paste generously all over the fish, including inside the cavity and into the scored cuts. Allow the fish to marinate at room temperature for 15-20 minutes.
- Steam the Fish: Arrange the remaining 30 g of sliced ginger on a heatproof plate that fits into your steamer basket. Place the marinated fish on top. Steam over rolling boiling water for 8-12 minutes, or until the flesh turns opaque and flakes easily at its thickest point.
- Prepare Chili Oil Drizzle: While the fish steams, heat 90 mL of neutral oil in a small saucepan until shimmering (approx. 350°F). Combine the dried chili flakes and julienned ginger in a separate heatproof bowl. Pour the hot oil over the mixture, letting it sizzle and steep for 5 minutes. Stir in the soy sauce, sugar, and toasted sesame oil.
- Garnish and Serve: Carefully transfer the steamed fish plate to a clean serving platter. Garnish generously with the remaining julienned scallions and fresh cilantro leaves. Pour the warm chili oil drizzle over the fish and serve immediately with steamed rice.
Notes
Store leftovers in an airtight container in the fridge for 2-3 days. To reheat, warm gently in the microwave for 60-90 seconds, just until warm, to prevent overcooking.
- Prep Time: 25 minutes
- Cook Time: 10 minutes
- Category: Main course
- Method: Steaming
- Cuisine: Asian
Nutrition
- Serving Size: 1 serving
- Calories: 400 kcal
- Sugar: 1 g
- Sodium: 850 mg
- Fat: 31 g
- Saturated Fat: 5 g
- Unsaturated Fat: 26 g
- Trans Fat: 0 g
- Carbohydrates: 5 g
- Fiber: 1 g
- Protein: 38 g
- Cholesterol: 100 mg
FREE PRINTABLE RECIPE
Get the Printable Recipe PDF (Free)
Enter your email and we’ll send you the ingredients + step-by-step instructions as a clean PDF you can save to your phone.
- ✅ Printable PDF (ingredients + steps)
- ✅ Save it to your phone (no long scrolling)
- ✅ Includes cook time + servings
- ✅ Easy to follow
FAQ
Where’s the full recipe?
It’s delivered as a printable PDF so you can save it and cook without scrolling.
I didn’t get the email.
Check Spam/Promotions and search your inbox for your site name. Then click Confirm to receive the PDF.