Vietnamese Poached Fish (Ca Hap) - Ginger-Scallion Steamed Fish
The broth takes time. This poached fish follows that same philosophy — great Vietnamese cooking is never rushed. It builds, layer by layer, until the flavors sing together.
From my mother's mother. My family has made this dish for generations, adjusting here, adding there, always keeping the core the same. Fresh herbs change everything — that's the magic of Vietnamese cuisine.
Ingredients
For the Fish
1 whole white fish (1.5-2 pounds/700-900g), such as sea bass, snapper, or tilapia, cleaned and scaled
1 teaspoon salt
1/2 teaspoon white pepper
2 tablespoons Shaoxing wine or dry sherry
For the Aromatic Base
4-inch piece fresh ginger (about 50g), divided
6 green onions, divided
4 cloves garlic, thinly sliced
2 stalks lemongrass, bottom 4 inches only, bruised and halved
4 sprigs fresh cilantro, stems and leaves separated
2 cups water or light fish stock
For the Ginger-Scallion Oil (Mo Hanh)
1/4 cup (60ml) vegetable oil
2-inch piece fresh ginger, julienned very fine
4 green onions, white and light green parts, julienned
1/4 teaspoon salt
Pinch of white pepper
For the Nuoc Cham Dipping Sauce
3 tablespoons fish sauce
3 tablespoons fresh lime juice (about 2 limes)
2 tablespoons warm water
2 tablespoons sugar
1 clove garlic, minced
1 Thai chili, thinly sliced (adjust to taste)
1 tablespoon shredded carrot (optional, for garnish)
For the Soy-Ginger Drizzle (Alternative Sauce)
2 tablespoons light soy sauce
1 tablespoon oyster sauce
1 teaspoon sesame oil
1 teaspoon sugar
2 tablespoons poaching liquid
For Garnish and Serving
Fresh cilantro leaves
Thinly sliced red chili
Fried shallots
Steamed jasmine rice
Instructions
Step 1: Prepare the Fish (10 minutes)
Proper preparation ensures even cooking and beautiful presentation.
Rinse the whole fish thoroughly under cold running water, inside and out
Pat the fish completely dry with paper towels, including the cavity
Make 3 diagonal slashes on each side of the fish, cutting to the bone (about 1/2 inch deep)
These cuts allow heat penetration and sauce absorption
Season the fish inside and out with salt and white pepper
Rub the Shaoxing wine over the fish and inside the cavity
Let the fish rest while you prepare other ingredients
Visual Cue: The slashes should be evenly spaced and deep enough to see the bone. The fish surface should be completely dry with no pooling liquid.
Timing Note: Allowing the fish to come to room temperature for 15 minutes ensures even cooking.
Step 2: Prepare the Aromatics (8 minutes)
The aromatics are divided between the steaming base and the finishing oil.
Cut half of the ginger (2 inches) into thin coins - this goes under and inside the fish
Julienne the remaining ginger (2 inches) into thin matchsticks for the finishing oil
Cut 2 green onions into 3-inch lengths - these go under and inside the fish
Julienne 4 green onions (white and light green parts only) for the finishing oil
Separate cilantro stems from leaves - stems for steaming, leaves for garnish
Thinly slice the garlic
Visual Cue: The julienned ginger and scallions should be uniformly thin, about the width of a matchstick.
Step 3: Set Up the Steaming Arrangement (5 minutes)
Creating a proper steaming bed protects the fish and infuses flavor.
Select a heat-proof plate that fits inside your steamer with at least 1 inch clearance on all sides
Scatter the ginger coins and 3-inch green onion pieces on the plate
Add the bruised lemongrass and cilantro stems
Place the prepared fish on top of this aromatic bed
Stuff the fish cavity with remaining ginger coins and green onion pieces
Pour 2 cups water or fish stock into your steamer base or wok
Visual Cue: The fish should sit elevated on the aromatics, not touching the plate directly.
Step 4: Steam the Fish (8-12 minutes)
Gentle steaming preserves the delicate texture.
Bring the water in your steamer to a rolling boil over high heat
Carefully place the plate with fish into the steamer
Cover with a tight-fitting lid
Steam for 8-12 minutes depending on fish thickness
A 1.5-pound fish typically needs 8-10 minutes
A 2-pound fish needs 10-12 minutes
Do not lift the lid during the first 8 minutes
Visual Cue: The fish is done when the flesh in the deepest slash is opaque white and flakes easily. The eye should be white and slightly bulging.
Timing Note: Calculate approximately 8 minutes per inch of thickness at the thickest part of the fish.
Step 5: Prepare the Nuoc Cham (During Steaming)
This classic dipping sauce balances the dish.
In a small bowl, combine the sugar and warm water
Stir until sugar is completely dissolved
Add the fish sauce and lime juice
Stir to combine thoroughly
Add the minced garlic and sliced Thai chili
Taste and adjust: add more lime for tartness, sugar for sweetness, or fish sauce for depth
Add shredded carrot if using for color
Set aside to allow flavors to meld
Visual Cue: The sauce should be slightly cloudy from the garlic and have visible chili slices floating.
Step 6: Make the Sizzling Ginger-Scallion Oil (3 minutes)
This is prepared just before serving for maximum impact.
Have all julienned ingredients ready beside the stove
Heat the vegetable oil in a small saucepan over high heat
Watch for the oil to shimmer and just begin to smoke (350-375°F/175-190°C)
Remove the fish from the steamer and transfer to a serving platter
Scatter the julienned ginger and green onions over the fish
Immediately pour the hot oil over the aromatics - it should sizzle dramatically
Season with salt and white pepper
Visual Cue: The oil must be hot enough to create an audible sizzle and slightly cook the aromatics when it hits them. They should wilt but retain bright color.
Safety Note: Stand back when pouring the oil as it will splatter. Pour from a height of about 8 inches for even distribution.
Step 7: Final Assembly and Presentation (2 minutes)
If using the soy-ginger drizzle, combine ingredients and drizzle around (not over) the fish
Garnish with fresh cilantro leaves
Add sliced red chilies for color
Sprinkle fried shallots over the top
Serve immediately with nuoc cham on the side
Present the whole fish at the table before portioning
Visual Cue: The finished dish should be aromatic, with visible curls of ginger and scallion, glossy from the oil, and decorated with bright garnishes.
Tips for Perfect Vietnamese Poached Fish
Selecting the Best Fish
Choose fish with clear, bright eyes and red gills
The flesh should spring back when pressed
There should be no fishy smell - fresh fish smells like the ocean
Whole fish between 1.5-2 pounds are ideal for this preparation
Sea bass, red snapper, striped bass, and tilapia all work excellently
Achieving Perfect Texture
Never overcook - fish continues cooking for 1-2 minutes after leaving the steamer
The flesh should be just opaque and flaky, not dry
Remove from heat when a knife inserted into the thickest part meets slight resistance
Let the fish rest for 1 minute before adding the hot oil
The Perfect Sizzle
Oil temperature is critical - it must be hot enough to sizzle but not smoking
Test with a small piece of ginger - it should sizzle immediately
Have all toppings arranged on the fish before heating the oil
Work quickly once the oil is ready
Steamer Setup Tips
If using a wok, ensure the plate sits at least 1 inch above the water
Create a foil ring or use chopsticks to elevate the plate if needed
Never let the water touch the plate bottom
Keep the lid slightly ajar if it doesn't have a vent to prevent condensation dripping
Sauce Balance
Nuoc cham should have equal sweet and sour notes with savory undertones
Always add fish sauce last and taste as you go
Fresh lime juice is essential - bottled cannot compare
Make the sauce while the fish steams so flavors can marry
Variations and Substitutions
Fish Alternatives
Fish Fillets: Use thick fillets (cod, halibut, mahi-mahi) and reduce steaming time to 6-8 minutes
Salmon: Works beautifully, steam 8-10 minutes for a 1-inch thick fillet
Whole Trout: A smaller fish that cooks in 6-8 minutes
Shellfish Version: Large prawns or lobster tails can be prepared similarly
Dietary Modifications
Low-Sodium: Reduce fish sauce in nuoc cham, use coconut aminos instead of soy sauce
Gluten-Free: Ensure all sauces are gluten-free certified
Oil-Free: Skip the sizzling oil and top with fresh aromatics; drizzle with citrus instead
Flavor Variations
Cantonese Style: Use more ginger, add fermented black beans
Thai Influence: Add Thai basil and more chilies to the nuoc cham
Lemongrass Forward: Double the lemongrass and add some to the finishing oil
Coconut Poached: Replace water with coconut milk for a richer version
Sauce Alternatives
Black Bean Sauce: For a more savory preparation
Tamarind Sauce: Sweet and sour variation popular in southern Vietnam
Coconut-Lime: Coconut cream, lime juice, and fish sauce for a creamy option
Simple Soy-Lime: Equal parts soy sauce and lime juice with ginger
Regional Styles
Hue Imperial Style: More elaborate garnishes, served with rice paper
Mekong Delta: Often includes fresh herbs and wrapped in lettuce leaves
Hanoi Style: More subtle, focusing on the fish's natural flavor
Storage and Reheating Instructions
Important Note on Fresh Fish
Poached fish is best enjoyed immediately after cooking. Unlike braised dishes, it does not improve with time and the delicate texture can become dry or rubbery when reheated.
If You Must Store
Refrigerator Storage:
Cool the fish completely before refrigerating
Store in an airtight container with a small amount of the cooking liquid
Keep separate from the sauces
Consume within 24 hours for best quality
Maximum storage: 2 days
What to Store Separately:
Nuoc cham keeps refrigerated for up to 1 week
Ginger-scallion oil (without the aromatics on fish) keeps 3-4 days refrigerated
Fresh aromatics should not be stored - prepare fresh when reheating
Reheating Methods
Steaming (Recommended):
Bring steamer to a boil
Place refrigerated fish on a heat-proof plate
Steam for 3-4 minutes just until warmed through
Prepare fresh ginger-scallion oil to pour over
Serve immediately with fresh nuoc cham
Microwave (Acceptable but not ideal):
Place fish on a microwave-safe plate
Sprinkle with 1 tablespoon water
Cover loosely with damp paper towel
Heat in 30-second intervals until just warm
Do not overheat or fish will become rubbery
Oven (For larger portions):
Preheat oven to 275°F (135°C)
Place fish in oven-safe dish with splash of water
Cover tightly with foil
Warm for 10-15 minutes
Check temperature - fish should be just warm, not hot
Repurposing Leftover Fish
If the texture has changed, consider:
Flaking into fried rice
Adding to congee or rice porridge
Making fish cakes or patties
Incorporating into fish soup
Make-Ahead Strategies
Prepare nuoc cham up to 3 days ahead
Clean and prepare fish up to 4 hours ahead (keep refrigerated)
Julienne ginger and scallions up to 2 hours ahead (cover with damp towel)
Set up steaming arrangement but don't heat until ready to cook
Serving Suggestions
Traditional Accompaniments
Steamed jasmine rice (essential)
Fresh herb plate (cilantro, mint, Thai basil)
Rice paper for wrapping (Central Vietnamese style)
Light vegetable soup (canh)
Stir-fried morning glory or water spinach
Complete Vietnamese Meal
Serve alongside:
Canh chua (sour soup)
Rau muong xao toi (garlic morning glory)
Dua chua (pickled vegetables)
Fresh fruit for dessert
Wine Pairing
Dry Riesling
Gruner Veltliner
Sauvignon Blanc
Light, unoaked Chardonnay
Equipment Needed
Creating this elegant dish requires simple equipment, but quality tools make a difference.
Large steamer (bamboo, metal, or wok with steaming rack)
Heat-proof oval plate that fits inside steamer
Small saucepan for heating oil
Sharp knife for scoring fish and julienning aromatics
Citrus juicer
Serving platter (oval, large enough for whole fish)
Small bowls for dipping sauce
Affiliate Disclosure: This post contains affiliate links. If you purchase through these links, we may earn a small commission at no extra cost to you. This helps support our recipe development and keeps our content free.
Shop Recommended Steamers and Cookware →
Kitchen Science: Why This Method Works
Baking relies on the Maillard reaction and caramelization to develop complex flavors. Between 280-330°F, amino acids and sugars undergo hundreds of chemical reactions that create the golden-brown crust and deep savory notes we associate with well-baked food. Understanding this science explains why proper preheating and avoiding overcrowding (which traps steam and prevents browning) are critical to achieving the best results with this recipe.
Nutrition Deep Dive
White fish varieties provide lean, highly digestible protein — typically 20-25g per 100g with minimal fat. Fish protein is absorbed more quickly than meat protein due to its lower connective tissue content. White fish is particularly rich in iodine (critical for thyroid function), phosphorus, and selenium. The low calorie density makes fish ideal for nutrient-rich, lighter meals. Even low-fat fish species contain some omega-3 fatty acids, and all fish provides vitamin D in greater quantities than most terrestrial protein sources.
Hosting and Entertaining Tips
Fish intimidates many home entertainers, but timing is the only challenge — and it's a short one. Choose thick-cut fillets (halibut, cod, mahi-mahi) that forgive a minute of overcooking better than thin, delicate species. Prepare everything else first, then cook the fish last. En papillote (fish in parchment packets) is a brilliant entertaining technique: assemble packets hours ahead, refrigerate, and pop in the oven 15 minutes before serving. Each guest gets their own beautiful packet to open at the table.
Seasonal Adaptations
Vietnamese cooking shifts beautifully between seasons. Spring brings fresh herbs at their most aromatic — mint, Thai basil, and cilantro that elevate every dish. Summer calls for cooling bún bowls, fresh spring rolls, and lighter preparations. Autumn introduces warming phở broths and heartier claypot dishes. Winter means rich, slow-simmered soups and braised preparations that warm the body, with preserved and pickled vegetables bridging the gap when fresh produce is limited.
Cultural Context and History
Vietnamese cuisine reflects over 1,000 years of Chinese influence, nearly a century of French colonialism, and the indomitable creativity of a people who transformed foreign ingredients into something distinctly their own. The French left behind baguettes (bánh mì), pâté, and coffee culture; Chinese influence contributed stir-frying, noodle soups, and chopstick use. But the Vietnamese genius lies in the fresh herb plate that accompanies nearly every meal — a celebration of brightness and balance that makes this cuisine uniquely refreshing.
Ingredient Substitution Guide
If you need to swap the main protein, these alternatives work well with the same seasonings and cooking method:
Salmon: Richer and fattier than most white fish. Reduce any added oil.
Cod or halibut: Mild, flaky white fish. Cod is thinner, so adjust cooking time.
Firm tofu: Press 30 minutes, season with kelp powder for seafood-adjacent flavor.
Shrimp (large): Peel and devein, cook significantly less time. Done when pink and C-shaped.
Troubleshooting Guide
Even experienced cooks encounter issues. Here's how to recover:
If the interior is still raw when the outside is done, reduce the oven temperature by 25°F and extend cooking time, allowing heat to penetrate gently.
If the top is browning too fast, tent loosely with aluminum foil and continue baking until the interior reaches the correct temperature.
If the bottom is soggy, move the dish to a lower rack for the last 10-15 minutes of cooking to crisp from below.
Common Mistakes to Avoid
Avoid these common pitfalls for the best results:
Overcrowding the baking sheet — ingredients steam instead of browning when packed too tightly together.
Not rotating the pan halfway through — most ovens have hot spots that cause one side to cook faster.
Opening the oven door repeatedly — each opening drops temperature by 25-50°F and extends cooking time significantly.
Skipping the preheating step — starting in a cold oven leads to uneven cooking and longer bake times that dry out the exterior.
Mastering the Perfect Texture
Achieving the perfect baked texture is about controlling moisture at every stage. Start by patting the surface completely dry — moisture is the enemy of browning and crispiness. A light oil coating promotes even heat transfer and Maillard reaction development. Resting after baking allows residual moisture to redistribute rather than flooding out when cut. If you want a crispy exterior with a moist interior, start at high heat (425°F) for the first 15 minutes to set the crust, then reduce to finish gently.
Kitchen Wisdom
These fundamental kitchen principles will elevate not just this recipe, but everything you cook:
Season in layers, not all at once. Add salt when you sauté the aromatics, again when you add the protein, and a final adjustment before serving. Each addition seasons a different component.
Taste as you go — seasoning at every stage builds layers of flavor that a single final adjustment can never match. This is the single most important cooking habit you can develop.
A sharp knife is safer than a dull one. Dull blades require more pressure, increasing the chance of slipping. Hone your knife on a steel before every session and sharpen it with a whetstone monthly.
Salt your cooking water generously — it should taste like the sea. This is your only chance to season pasta, vegetables, and grains from the inside. Under-salted water produces bland food that no amount of finishing salt can fix.
Temperature and Doneness Guide
Most white fish reaches optimal texture at 135-145°F (57-63°C), where the flesh is opaque, flakes easily with a fork, and remains moist.
Delicate fish (sole, flounder): Cook gently to 130-135°F to preserve their tender texture.
Firm fish (halibut, swordfish, mahi-mahi): These can handle 140-145°F and still remain moist due to their denser muscle structure.
Tuna: Often served rare at 115-120°F for sashimi-grade preparations. The fork test is reliable for fish: insert a fork at a 45-degree angle and twist gently — the fish should flake and separate cleanly without being dry or crumbly.
Building Your Aromatic Foundation
Vietnamese aromatics are all about freshness and balance. The foundational trio is shallots, garlic, and lemongrass — sautéed in oil until fragrant (never browned, which creates bitterness in Vietnamese cooking). Fish sauce is the umami backbone, used in cooking and as a table condiment mixed with lime juice, sugar, garlic, and chile (nuoc cham). Fresh herbs are not an afterthought but a central component: Vietnamese meals arrive with a plate of Thai basil, mint, cilantro, perilla, and saw-tooth herb that diners add to taste. Star anise and cinnamon scent broths, while fresh ginger adds warm spice.
Global Flavor Riffs
Once you've mastered the base recipe, try these international variations that use the same protein with different flavor profiles:
Give this a Peruvian twist with a ceviche-style treatment: "cook" in lime juice with red onion, cilantro, and ají limo for a refreshing cold preparation.
Try a British approach with a classic beer batter (lager, flour, and a touch of baking powder) for pub-style fish with malt vinegar and mushy peas.
Go West African with a tomato-based stew featuring scotch bonnet, ginger, and okra — a style of fish cookery that spans the coast from Senegal to Nigeria.
*Last updated: 2025-12-20*