RecipeFish & Seafood

Suan Cai Yu (Sichuan Fish with Sour Vegetable, 酸菜鱼)

Tender fish slices in a hot and tangy broth bursting with aroma, Suan Cai Yu is an iconic Sichuan dish that can be easily prepared at home.

Published by CharWok

🥢 Fish & SeafoodSichuan⏱ Prep 20 min🔥 Cook 10 min🕒 Total 30 min🍽️ Serves 4
Tender white fish slices in pale golden sour mustard broth topped with garlic, scallion, dried red chilli and Sichuan peppercorns

The first time I made Suan Cai Yu at home, the fish turned to cottony strings and the broth tasted like dishwater. I had boiled it hard and dumped everything in at once, the way you would a Western fish stew. That is exactly the wrong instinct for this dish. Suan Cai Yu rewards restraint: a broth that never rises above a gentle tremble once the fish goes in, slices so thin the marinade does the heavy lifting, and a finishing pour of hot, shimmering oil that wakes the aromatics up at the very last second.

The soul of the dish is the tension between the lactic tang of pickled mustard greens and the clean sweetness of just-cooked fish, held together by a Sichuan peppercorn hum that makes your lips buzz. Get that balance right and you have one of the most beloved dishes in Sichuan home cooking. Get it wrong and you have a bowl of overcooked protein in salty water.

At a glance: Slice the fish 5 mm thick on a bias, marinate 10 minutes with cornstarch and egg white for that restaurant slipperiness, build a broth from rinsed pickled mustard greens, and never let it rise above a gentle simmer once the fish is in. Start checking at about two minutes, then continue until the fish is fully opaque and separates easily with a fork. Finish with 180°C (356°F) shimmering oil over the raw garlic, scallion, and peppercorns; the oil should not smoke.

What Suan Cai Yu actually is

Suan Cai Yu (酸菜鱼) translates plainly as "sour vegetable fish," and it is a Chongqing and Chengdu restaurant staple that migrated into home kitchens across China in the 1990s. The "sour vegetable" is suan cai, lacto-fermented mustard greens, the same preserved-vegetable family you meet in pork stir-fried with sour mustard greens. The "fish" is almost always grass carp in Sichuan, but a delicate white-fleshed fillet is what you want at home because it is forgiving and boneless.

It sits in the same Sichuan "water-boiled" family as Shui Zhu Niu Rou (water-boiled beef), with one key difference: those dishes lean on doubanjiang and chili oil for their fire, while Suan Cai Yu gets its character from the pickle itself. The heat is optional and secondary. That is why a bowl ordered in a good Sichuan restaurant tastes bright and tart before it tastes spicy, closer in tang to sweet and sour fish than to a chili-forward braise.

The ingredients that decide the dish

Ingredients at a glance

Ingredients for Suan Cai Yu (Sichuan Fish with Sour Vegetable, 酸菜鱼), arranged in a top-down flat lay
Use the ingredient table below for exact amounts and substitutions.

Three ingredients do most of the work, and cutting corners on any of them shows up immediately in the bowl. Here is what to buy and what you can substitute.

IngredientAmount (4 servings)Notes / substitute
Boneless white fish fillets (catfish, tilapia, swai, or cod)680 g / 1½ lbCatfish and swai hold together best. Cod and bass work but flake more. Avoid salmon and tuna.
Pickled mustard greens (suan cai / haam choy)200 g / 7 ozSold in plastic pouches at any Asian grocer. The fermentation, not fresh cabbage, is the point.
Shaoxing rice wine15 ml / 1 TbspFor the marinade. Dry sherry is the closest substitute; skip the cooking wine with salt added.
Cornstarch10 g / 2 tspCreates the silky coating. Potato starch works but gives a slightly glossier, more fragile coat.
Egg white (optional but recommended)1The restaurant secret for that slippery texture; plain cornstarch alone works at home.
Neutral cooking oil (avocado, canola, peanut)30 ml + 30 ml / 2 Tbsp + 2 TbspOne portion for the broth base, one for the finishing sizzle.
Ginger, minced5 g / 1 tspDon't skip; it is the main weapon against any fishiness.
Garlic, minced and divided5 clovesUse two-thirds in the broth, save one-third raw for the top.
Scallions, chopped and divided3 stalksSame split: two-thirds in the broth, one-third for the finishing pour.
Sichuan pickled chilies (suan jiao), optional15 g / 1 TbspAdds a deeper, more complex sour-heat than dried chilies alone.
Water or unsalted stock600 ml / 2½ cupsHomemade chicken stock adds body. A neutral store-bought stock is fine; avoid anything already salted.
Sugar4 g / 1 tspNot to sweeten, just to round the pickle's edge.
Ground white pepper2 g / ½ tsp, dividedHalf in the marinade, half in the broth.
Dried red chilies, chopped5, or to tasteFor the topping. Use less if you are heat-sensitive; the dish is still correct without them.
Sichuan peppercorns5 g / 1 tspThe tingling citrusy note that defines Sichuan food. Whole is best for the sizzle; ground loses aroma fast.
Toasted sesame seeds1 tspFor the top. Pure garnish, but it adds a nutty note against the heat.
Salt for the marinade: about ¼ tsp. Pickle saltiness varies wildly between brands, so taste the broth before adding any extra.

Method, with the why at every step

Read through this once before you turn on the stove. Suan Cai Yu is a last-ten-minutes dish, and having everything prepped in bowls is what keeps the fish tender instead of rubbery.

1. Slice the fish on a bias, not straight down

  1. Lay the fillet flat and slice at a 45-degree angle into pieces about 5 mm thick, wider than they are long. The bias does two things: it gives each piece more surface area to pick up marinade, and the longer diagonal shape is what reads as "restaurant" on the plate. A straight-down cut looks like fish stew.
  2. Go thinner rather than thicker. A 3 mm slice poaches in 90 seconds; a 10 mm slice needs four minutes and turns dry in the center before the outside is set.

2. Marinate for slipperiness, not flavor

  1. In a bowl, combine the fish with 15 ml Shaoxing wine, ¼ tsp salt, ¼ tsp white pepper, the egg white if using, and the cornstarch. Toss gently with your fingers until each piece is evenly coated and slightly tacky. Let it sit 10 to 15 minutes while you prep everything else.
  2. The cornstarch does the real work here. It forms a thin gel around each slice when it hits hot liquid, which is what gives Suan Cai Yu that slippery, almost glossy mouthfeel. Without it, the proteins contract and squeeze out moisture, leaving you with tight, chewy fish. This is the same principle behind Cantonese steamed fish and scallion-ginger salmon, where a light starch or oil coat protects delicate flesh.
  3. Do not over-marinate. An hour is fine, overnight is not. The salt will start curing the protein and the texture will go dense.

3. Treat the pickled greens before cooking them

  1. Rinse the suan cai under running water, then soak it in a bowl of cold water for 5 to 20 minutes. Taste a piece. It should still be pleasantly sour and salty, but not puckeringly so. Remember it will dilute further in the broth.
  2. This step is not optional. Different brands range from mild to aggressively salty, and you cannot fix an over-salted broth once the fish is in. I have thrown out a whole pot because I trusted the package.
  3. Squeeze the greens firmly to remove excess water, then cut into bite-sized pieces. Slice any thick stems thinly on an angle so they cook through and release flavor evenly.

4. Build the broth in layers

  1. Heat 30 ml oil in a wok or wide pot over medium-high. Add the ginger, two-thirds of the garlic, two-thirds of the scallions, and the pickled chilies if using. Stir until fragrant, about 20 seconds. You are blooming the aromatics in fat, the same move that opens up hot and sour soup and most Sichuan braises.
  2. Add the chopped pickled greens and stir-fry for a full minute. This is where the dish's flavor actually develops. Frying the greens in oil mellows their sharp edge and draws out the savory depth that the fermentation built up. Skip this and your broth will taste flat.
  3. Pour in the water or stock, add the sugar and remaining white pepper, and bring to a full boil. Cover, drop the heat to low, and simmer 3 minutes. The short covered simmer lets the greens fully infuse the liquid without cooking them to mush.

5. Poach the fish gently, then stop

  1. Drop the heat so the broth is just trembling, not rolling. Add the fish slices one at a time, laying them flat and trying not to overlap. The instant they go in, do not stir. Stirring breaks the fragile cornstarch coat and shreds half-set protein.
    Chopsticks lower one thin fish slice into an open patch of barely simmering sour mustard broth while the other slices lie flat and separate

    Lower the heat until the broth only trembles, then slide in each marinated fish slice separately and leave it untouched. Start checking at about 90 seconds and continue until the flesh is no longer translucent and separates easily with a fork; where practical, a thick representative slice should reach 63°C / 145°F.

  2. Let the pot sit undisturbed for about 90 seconds to 2 minutes, then start checking. Continue until the fish is no longer translucent and separates easily with a fork; where practical, check a thick representative slice for 63°C (145°F). Do not rely on carryover heat to finish an undercooked center.
  3. If the broth has dropped below a bare simmer, nudge the heat up a hair. If it is bubbling, it is too high. Treat it like poached eggs, not like a boil.

6. Sizzle the top, then serve immediately

  1. Pour everything into a wide serving bowl. Top with the reserved raw garlic, raw scallion, chopped dried chilies, Sichuan peppercorns, and sesame seeds.
  2. Heat the remaining 30 ml oil in a small, dry pan to about 180°C (356°F), when it looks fluid and shimmering but is not smoking. Never test hot oil with water. Pour it directly over the aromatics for an immediate crackle; if the oil smokes, turn off the burner and let it cool before continuing. This step is not garnish. It is the dish's final seasoning, the same finishing pour that defines a great water-boiled fish.
    A clear stream of shimmering hot oil hits the central garlic, scallion, dried chilli, Sichuan peppercorn and sesame mound over intact fish slices without visible smoke

    Pile the reserved garlic and scallion with dried chilli, Sichuan peppercorns and sesame in the center. Heat the remaining 30 ml oil to about 180°C, fluid and shimmering but not smoking, then pour it directly over the mound for an immediate crackle; if it smokes, turn off the burner and let it cool.

  3. Serve right away with steamed jasmine rice to soak up the broth.

Safety check: FoodSafety.gov recommends cooking fish to 63°C (145°F), or until the flesh is no longer translucent and separates easily with a fork. The U.S. Fire Administration advises turning off the burner if cooking oil starts to smoke.

When it goes wrong: troubleshooting

This is the section I wish I had read before my first attempt. Most Suan Cai Yu failures fall into four buckets, and each one has a clear cause.

The fish fell apart into threads

You either sliced with the grain instead of across it, skipped the cornstarch marinade, or stirred the pot while the fish was setting. The fix: slice across the muscle fibers, always marinate, and never touch the pot for the first 90 seconds of poaching. A few stray flakes are normal; a bowl of mush means one of those three.

The broth is too salty or too sour

You under-rinsed the pickled greens, or your brand is on the aggressive end. There is no rescue once the fish is in, so taste the soaked greens before cooking. If you realize mid-build that the broth is too intense, add 100 ml more water and a pinch more sugar before the fish goes in. Diluting after cooking the fish washes out the flavor you just built.

The fish is rubbery and dry

It overcooked. Thin white fish can move from just cooked to dry quickly, so start checking at about 90 seconds rather than treating two minutes as a hard cutoff. Stop once the flesh is fully opaque and separates easily with a fork, or a thick representative slice reaches 63°C (145°F); do not intentionally undercook it.

The top did not crackle

Your oil was not hot enough, or the aromatics were wet. The oil needs to be at a real shimmer, not warm. Heat it in a small pan (less surface area to lose heat from) and pour immediately. If there is no audible sizzle when the oil hits the garlic, it failed and you should reheat and try again over the same bowl.

Variations and what to serve alongside

The broth is the real star, so lean into it. A few directions worth taking.

For the rest of the table, keep things cool and crisp to balance the hot, tangy broth. A smashed cucumber salad or a simple blanched green works. If you are feeding a crowd, Suan Cai Yu fits naturally into a Sichuan-style spread, where its bright acidity cuts through richer dishes. A bowl of plain rice, made with good stock on the side if you have it, is the only carb you need.

Storage and reheating

Suan Cai Yu is best eaten the day it is made, but it keeps refrigerated for two days, and the broth actually improves overnight as the pickle flavor melds. The fish, however, does not. If you plan leftovers, store the broth and fish separately.

To reheat, bring the broth to a gentle simmer in a pot, then drop the cold fish slices in for 30 to 45 seconds, just until warmed through. Do not boil. Boiling reheated fish is how you turn silk into rubber. I have also served the leftover broth over fresh rice with a soft-boiled egg the next morning, and it was better than the original dinner.

Frequently asked questions

A few questions that come up again and again when readers make this for the first time.

Can I use frozen fish fillets?

Yes, as long as they are fully thawed and patted dry before slicing. Frozen catfish, swai, and tilapia fillets are honestly the most practical choice in most American kitchens. Avoid anything previously glazed in a heavy marinade.

What if I cannot find pickled mustard greens?

Look for packages labeled suan cai, haam choy, or pickled potherb mustard. Kimchi is a distant fallback if you are stuck, but the flavor is noticeably different. Don't substitute regular pickles or sauerkraut; the fermentation profile is wrong.

Is the egg white really necessary?

No, but it makes a real difference in the silky texture, especially with lean fish like cod. If you are using fattier catfish or swai, you can leave it out and the cornstarch alone will carry the dish.

How spicy is this supposed to be?

Mildly, by Sichuan standards. The pickle and pepper dominate; the dried chilies and pickled chilies add a gentle warmth you can dial up or down. If you want it as a fiery centerpiece, double the dried chilies and add doubanjiang to the base.

Can I make the broth ahead of time?

Yes, and you should if you are hosting. The broth keeps for two days refrigerated, and reheating it to a simmer before adding the fish is the cleanest path to a stress-free dinner. Marinate the fish fresh right before serving.

Make this once and you will see why it traveled out of Sichuan kitchens into restaurants across the country. The technique is forgiving as long as you respect two things: the cornstarch coat and the gentle poach. Get those right, and the rest of the dish mostly cooks itself.