A twist on the Sichuan hot and sour fish soup classic, this vegan suan cai yu utilises plant based fish in place of bodies while keeping the signature numbing, spicy, and pungent broth that defines the dish.

According to Fuchsia Dunlop, in The Food of Sichuan, suan cai yu is thought to have first appeared in the 1980s, first gaining popularity in Chongqing and later in Chengdu. Though I was alive in the 80s, I only tried suan cai yu for the first time last year. In China, but not in Sichuan province.
Long time readers probably know I go to Thailand for culinary research once a year, during the vegetarian festival season. My preference for carriers shifts depending on current circumstances (ranging from political to practical) and in recent years I've gravitated toward Chinese airlines. Last year, we scored tickets with Hainan Airlines at an astonishingly low price, though there was a catch: we had to overnight in Haikou. We landed in the evening, and after collecting our complimentary hotel vouchers and checking in, my thoughts pivoted to dinner. And so, fueled by that absurd cocktail of exhaustion, delusion, and hunger, I ordered a Didi (China's answer to rideshares) and we headed into town.
Haikou isn't littered with vegan restaurants, and out of the handful I'd bookmarked in Amap only one was still open: Yidaotang (Longhua neighbourhood). They looked to be closing up when we arrived, but the proprietor, an earnest young man with Taiwanese roots, insisted on allowing us in for a meal. We ordered a couple of items; one was salt and pepper vegan fish tofu (a bouncy, firm faux seafood product that resembles tofu in form only). The other was vegetarian sui cai yu, or fermented sour vegetables with vegan fish.
After an indication the suan cai yu would take a little while to prepare, we offered to change our order. No, he insisted, we should keep the order; his concern was for our time and state of hunger. We were in no hurry. I still think about that dish and, were I to return to Haikou, I would repeat my order of actions exactly: check into hotel, then go straight to Yidaotang for this dish.
Ingredients for vegan suan cai yu
Fermented mustard greens are considered a requirement for authentic suan cai yu, but I've also made it with fermented napa cabbage. Both, or a combination, work well in my recipe. For the latter, I use the preserved Chinese cabbage recipe in Hannah Che's The Vegan Chinese Kitchen (an outstanding cookbook that everyone should own IMO). If using mustard greens, I cheat and buy them ready made. They're easily sourced from East and Southeast Asian supermarkets.
Many cooks would finish the dish by pouring hot oil over the Sichuan peppercorns and remaining garlic, then using it a final seasoning. Some may also add chilli oil. I cook the peppercorns in oil first and build on top of that. You can use red or green, but make sure they're fresh.
As for the vegan fish, I've had success with both homemade and shop bought versions. Vivera brand salmon works really well. If you use something like my vegan okara fish, or a similar product made with soy protein, I recommend frying it first, preferably after a coating in a starch slurry (which I explain in the instructions). The reason is twofold. First, this style of vegan fish is more likely to soften and disintegrate in broths, and frying will help to mitigate this. Second, frying helps to dry foods out, which provides some sturdiness that is, again, useful in soupy applications.
If you don't have access to vegan fish, you can also use tofu.
Feel free to add additional veg, like fresh napa cabbage and/or bean sprouts if you want to bulk out the dish.
Suan cai yu would traditionally contain Sichuan pickled chillies but my version does not (and nor do I claim my methods to be true to origin). I adore the smokiness imparted from fried dried chillies, which is why they are my seasoning of choice here. I use shop bought pre sliced dried chillies, pictured above, but failing this I buy medium-spicy small dried chillies, deseed them, and chop them into rings myself. If the soup needs additional sourness at the end, I might add some Thai chilli vinegar.
Vegan suan cai yu (Sichuan hot and sour soup with plant based fish)
Ingredients
- Vegetable oil for frying
- 1 tablespoons sichuan peppercorns
- Dried chillies to taste (snipped into segments)
- 2 spring onions white and green parts separated, sliced
- 3 teaspoons minced garlic divided
- 1 teaspoon grated or minced fresh ginger
- 150 grams fermented napa cabbage or pickled mustard greens roughly chopped
- 1 tablespoon Shaoxing rice wine
- 500 millilitres sodium free stock or water
- ½ teaspoon sugar
- ¼ teaspoon ground white pepper or more, to taste
- ⅛ teaspoon salt or more, to taste
- 1-2 pieces vegan fish or to taste
- 1 ½ tablespoons potato starch mixed with 2 tablespoons cool water
Instructions
Prep the soup
- Heat 2 tablespoons of the oil in a medium saucepan to medium-low heat. Add the sichuan peppercorns and cook for a few minutes until fragrant. Add the dried chillies, white part of the spring onion, 2 teaspoons of the garlic, and the ginger. Continue cooking, stirring regularly, until the chillies turn a shade or two darker and the garlic begins to turn golden.
- Turn the heat to medium high and add the fermented mustard greens and/or fermented napa cabbage. Fry until some of the liquid from the fermented vegetables has cooked off, around 3-5 minutes.
- Add the Shaoxing rice wine and stir fry for 15-20 seconds before tipping the stock or water in. Season with the sugar, white pepper, and salt. Wait for the contents to boil and then turn the heat down so you've got a low simmer. Cover and cook for 15 minutes.
Prep the fish
- This is an optional step, but I prefer the texture.Heat a few millilimetres of oil in a small nonstick frying pan to medium heat. Cut your fish into bite sized or whatever-size-you-like pieces. Combine the potato starch and water in a cereal bowl or a small saucer with a rim. Coat the fish pieces lightly and carefully place in the pan, with some space between the pieces so they don't stick together. Fry for a couple of minutes and then flip. Cook, flipping every so often, until golden and crispy on both sides. Remove to a plate.
Dish up
- Decant the soup to a serving bowl, if using. Sprinle over the green parts of the spring onion and the remaining 1 teaspoon of raw garlic. Layer the fish on top. Eat with freshly steamed rice.