Silky steamed cod and soft tofu in a fragrant chili-sesame broth — a fast, clean weeknight dinner ready in 45 minutes.
Steaming is one of the most underused techniques in the home kitchen, and cod is one of the best fish to prove it. The flesh stays impossibly moist — no searing, no babysitting — while the ginger-scallion broth does the heavy lifting on flavor. The trick here is a two-stage approach: build a deeply aromatic base first, then steam the cod directly over it so the fish absorbs every bit of that heat and fragrance as it cooks.
The finished dish is light but not sparse. Silken tofu soaks up the chili-sesame broth, the cod flakes in clean white layers, and a final pour of sizzling scallion oil over the top adds a sharp, smoky finish that pulls everything together. This works as a clean weeknight meal over steamed jasmine rice, or as an impressive low-effort dinner for guests. If your cod releases too much liquid during steaming and dilutes the broth, simply ladle some off and reduce it in the pan for 2 minutes before serving.
🛒 Links may earn us a small commission at no cost to you.
🛒 We may earn a small commission at no extra cost to you. We only recommend gear we'd use ourselves.
Jasmine rice is the obvious call here, and for good reason — its slightly floral, sticky quality absorbs the chili-sesame broth without competing with it. Cook it in a 1:1.5 ratio of rice to water for tight, separate grains that hold up under the broth. A steamed or stir-fried gai lan (Chinese broccoli) with a splash of oyster sauce alongside adds a slightly bitter counterpoint to the richness of the sesame oil.
For wine, reach for a dry, unoaked Grüner Veltliner — its white pepper and citrus notes echo the ginger without clashing with the chili heat. A cold Taiwanese Tsingtao or a Sapporo lager also works well; carbonation cuts through the sesame fat and refreshes the palate between bites. Avoid anything heavily oaked or tannic.
If you want a non-alcoholic option, a chilled Taiwanese chrysanthemum tea (lightly sweetened) is the ideal match. Its subtle floral bitterness cleans the palate between bites and complements the ginger without sweetness overload. A sparkling yuzu water would also work.
Finish the table with a simple shredded cucumber salad dressed with 1 tbsp rice vinegar, 1 tsp sesame oil, and a pinch of sugar. The cool, acidic crunch provides textural contrast to the soft tofu and fish, and keeps the meal from feeling heavy.
For a gluten-free version, swap the 2 tbsp regular soy sauce for 2 tbsp tamari — Kikkoman makes a widely available certified GF tamari that behaves identically in this recipe. The hoisin used as a finishing drizzle contains wheat, so replace it with a mix of 1 tsp molasses and 1 tsp tamari stirred together. No other changes are needed.
To make this vegetarian, skip the cod entirely and replace it with two additional blocks (14 oz each) of silken tofu and a handful of fresh shiitake mushrooms, stems removed, placed cut-side down on the steaming plate. Steam for 10 minutes instead of 12, and add 1 tsp of white miso whisked into the broth at the end for umami depth that the fish would otherwise provide.
For a spicier profile, double the chili oil to 2 tsp in the broth base and add 1 tsp doubanjiang (Pixian brand if you can find it) when you bloom the ginger and garlic. This shifts the flavor toward Sichuan-style without overwhelming the delicate fish — just be aware it will also add more salt, so hold back on the soy sauce by about half a teaspoon and adjust at the end.
This recipe scales well for two: halve every ingredient and use a single 10-inch skillet with a tight-fitting lid instead of the wok. Reduce steaming time by 2 minutes and check for doneness at the 10-minute mark.
Yes, but thaw them completely in the refrigerator overnight first. Pat them very dry with paper towels before steaming — frozen fish releases more moisture, and excess liquid will dilute the broth. Don't thaw on the counter; uneven thawing makes the flesh mushy at the edges.
Silken tofu is essential — it's the only variety that takes on a custard-like texture when gently steamed in broth. Firm or extra-firm tofu will stay dense and won't absorb the broth flavors the same way. Look for silken tofu in shelf-stable Tetra Pak boxes (Mori-Nu brand is widely available) or refrigerated tubes in the produce section.
Yes. Build the aromatic broth (steps 1 through 4) up to 2 days in advance and refrigerate it in an airtight container. Reheat it to a simmer before adding the tofu and fish. Don't make the scallion oil ahead — it loses its fresh, sharp fragrance quickly and should be made right before serving.
Press the thickest part gently with a finger — it should feel just firm, not squishy, and the flesh will turn from translucent to opaque white. A thin metal skewer or cake tester inserted into the center for 3 seconds should feel warm (not hot) when touched to your lower lip. Overcooked cod turns rubbery and dry; err on the side of pulling it 30 seconds early.
Halibut works well but takes 2-3 extra minutes to steam because it's denser. Tilapia steams faster — check at the 8-minute mark. Avoid thin, delicate fish like sole or flounder; they'll overcook before the tofu is properly warmed through. Stick to fillets at least 1 inch thick at the center.
Store the fish, tofu, and broth separately in airtight containers for up to 2 days. Reheat the broth in a saucepan over low heat and gently warm the fish and tofu in it for 3-4 minutes — don't boil or the tofu will fall apart and the fish will toughen. The scallion oil doesn't reheat well; make a fresh small batch if desired.
Freeze only the broth base, not the assembled dish. Silken tofu becomes grainy and watery when frozen, and steamed cod turns rubbery. The broth freezes well for up to 3 months in a sealed container. Thaw it overnight in the fridge, then proceed with fresh fish and tofu on cooking day.
A large, deep (at least 4-inch sides) 12-inch skillet with a tight-fitting lid works fine. You need enough headroom for steam to circulate around the fish. Alternatively, use a wide Dutch oven with a collapsible steamer basket set inside. The key is a tight seal — if your lid doesn't fit snugly, drape a clean kitchen towel between the lid and pan to trap steam.
Partially. The broth base and sliced aromatics can be prepped and refrigerated for up to 3 days. But steam the fish fresh each time you eat — it takes only 12 minutes and loses quality dramatically if cooked ahead and reheated. This makes it a great 'partial prep' weeknight dish: do the work once, then cook fast all week.
Use 1 tsp of sambal oelek plus 1/2 tsp of toasted sesame oil as a substitute. It won't have the same crispy chili bits, but the heat and sesame aroma are close. Lao Gan Ma brand chili crisp is widely available at most grocery stores and is worth buying — it also stores for months and works on everything.
Daily Home Cookery is self-funded. If something you cooked here made dinner a little better, a coffee keeps the kitchen running.
☕ Buy me a coffee
A meal-prep-friendly Mediterranean quinoa bowl with chickpeas, Kalamata olives, feta, and a sharp lemon-oregano dressing. Ready in 30 minutes.
Wire rack baking gives these parmesan-panko zucchini fries real crunch on all sides. Ready in 35 minutes. Serve with warm marinara.
Broiled miso-glazed black cod with a crisp sesame cucumber slaw. A 35-minute dinner that tastes like serious effort.