This beefless chow fun, 素干炒牛河 (Sù gàn chǎo niú hé) or Sou Gon Chow Ngau Hor (Cantonese) is vegan and tossed in a heated wok for maximum flavor. This wok hei aroma makes me crave for more especially when it’s made from homemade rice noodles, hor fun (粿條).

Chow Fun in Cantonese means stir-fried noodles and a famous dish of it is Gon Chow Ngau Hor which translates to ‘dry stir-fry beef flat rice noodles’. Today, you’ll see how to make a vegan version of this popular dish at home.
Cantonese cuisine is so dear to my heart, probably because I grew up watching too many TVB dramas. Jokes aside, it’s mostly due to my mom. She is Cantonese so I picked up a few things from her since young.
What is the first thing you think of when it comes to Cantonese cuisine? For me, the food is usually full of wok hei (breath of wok) and the second is dim sum. I grew up with stir-fries, soothing soups, and big wok tossed dishes. A simple veggie stir-fry will taste amazing when it’s tossed in a big heated wok.

To create a similar beef look, I’m using soy slices that I marinate in a simple sauce. With the help of cornstarch in the sauce, the soy slice texture is unbelievably smooth and silky.
Then, with a few more steps to cook the noodles, you’ll have a plate of amazingly charred flavored and fragrant stir-fried noodles in no time. Don’t worry if you don’t have a wok, you can still make this dish using a normal pan. Please check the cooking tips section below.
How to cook Vegan Beef Chow Fun
Step 1: Prepare the protein
Normally, I like to use tofu but I found a pack of soy chop from the store. When I was in Malaysia, I used a lot of dried soy products and I am thrilled to share this method with you.
First, soak the dried soy chop as directed. These dried rectangles will puff up once they absorb the water. Then, squeeze out the water and cut them into thin slices.
If you are using firm tofu, drain out the tofu liquid, and simply slice them into 3mm thick. Pat dry, then continue to the next step.
Whisk together sugar, dark soy sauce, soy sauce, and water in a bowl until well-combined. To marinate the slices, I like to form a claw-like gesture and rub the slices while squeezing them to increase the absorption. I
If you are using tofu, please dredge them in the marinade instead. Since tofu releases moisture, the marinade will turn thinner over time.
Step 2: Make the Sauce
Now, in another bowl, mix the noodle sauce until well-combined. This sauce is to give the noodles and bean sprouts flavor. It’s a mixture of dark soy sauce, soy sauce, and a pinch of mushrooms seasoning.

Feel free to use other umami seasoning such as vegetable bouillon or leek seasoning.
Step 3: Pan-Fry
Next, heat a large wok and add the oil. Typically, Dai Chow chefs will rinse the wok with oil. Since I’m using a smaller wok at home and the heat is not as vigorous, I just made sure my wok is hot enough before adding the oil.
Once you add in the oil, pan-fry the marinated soy slices until they turn slightly charred on both sides. Remove and set aside.

The wok should be clean but if not, clean it accordingly. Heat up the wok again and add a tablespoon of oil. Then cook the noodles and spread them to cover the bottom in a layer. It’s highly recommended to cook the noodles in a smaller batch if you don’t have a large wok.

Similar to the soy slices pan-fry the noodles until they turn slightly charred. Try not to stir the noodles constantly but instead use a large spatula to flip them in batches.

Step 4: How to put everything together
Once the noodles are cooked, you should smell the smoky flavor. Now, add the mung bean sprouts. Toss these two ingredients until well combined. The mung bean sprouts’ moisture will soften the noodles a little.

Next, add in the sauce by swirling it over the noodles. This way, the noodles will be coated evenly. Toss until the noodles are covered with sauce.

Finally, add the cooked soy slices and fold in the green onions. Taste and season if needed. Turn off the heat and serve warm.
Vegan Beef Chow Fun Cooking Tips
Noodles
Chow fun is made with fresh flat rice noodles or known as hor fun or 粿條 (Guǒ tiáo). Back at home, there are few types of hor fun available, one is for soup that is usually softer and cooks in a short time. The second type is specifically for chow fun that is more pliable and can be tossed without breaking apart easily.

In today’s recipe, I’m using a homemade Kuey Teow that you can cut into the desired width. For dried noodles options such as flat rice sticks, soften them before use. Some package directions asked that you boil the noodles, in that case, reduce the boiling time so it’s not too soft for this recipe. Alternatively, soak them in water until pliable.
Protein
There are many protein options such as tofu, soy slices, seitan or vegan beef. Whatever you plan to use, always marinate the protein to give it more flavor.
Then, pan-fry them separately. This is a crucial step because the noodles need to be tossed quickly and will not have enough time to cook the protein if you add them along with the noodles.
Vegetables
The most common vegetable is mung bean sprouts and green onions. Feel free to skip green onions for allium-free.
You may add other vegetables of choice and it’s highly recommended to cook them separately like the protein. Mung bean sprouts’ cook time is really short so it’s okay to add them when you cook the noodles.
Pan to use
I used a carbon steel wok to create that char flavor. What if you don’t have a wok? You can definitely use a non-stick pan. In fact, non-stick cookware is easier to handle.
When using non-stick cookware, cook the ingredients as how it’s shown in the video. The cooking time may be a little longer since most non-stick pans use medium-hight heat.
Why You Need this Vegan Beef Chow Fun
- It’s easy to make
- Highly customizable
- Gluten-free options (sub with gluten-free sauces and tofu)
- Made with simple ingredients
- Super flavorful with amazing wok hei

If you try this recipe, I would love to hear your feedback and see your beautiful re-creation. Leave me a comment, rate it, and tag @woon.heng and #woonheng to your photos on Instagram or Facebook. Happy cooking, friends!

Vegan Beef Chow Fun – 干炒素牛河
Ingredients
- 2 servings of fresh flat rice noodles
- 3 slices soy chop slices* softened as directed on package
- 4 stalks green onions
- 1 cup mung beansprouts
- oil for cooking
Marinade
- ½ tablespoon sugar
- ½ tablespoon soy sauce
- 1 tablespoon dark soy sauce
- 1 tablespoon water
- 1 tablespoon cornstarch
Noodle' Sauce
- 2 tablespoons soy sauce
- 1 tablespoon dark soy sauce
- ¼ teaspoon mushrooms seasoning
Instructions
- Prepare the soy chop by squeezing out the water. Then, cut them into thin slices.
- Prepare the marinade: Whisk together sugar, soy sauce, dark soy, and water in a bowl until well-combined. Marinate the soy slices until well-combined.
- Rub in the cornstarch until all soy slices are well coated.
- Heat a large wok and add about 2 teaspoons of oil. Then, pan-fry soy slices until you see slight char on both sides. Remove and set them aside until ready to use.
- Using the same wok, heat it up again and add about a tablespoon of oil.
- Add the fresh noodles and spread them to cover the bottom of the pan. Pan-fry each side until slightly char, about 1-2 minutes.
- Add the beansprouts on top of the noodles, then using a spatula, toss the two ingredients together for about 30 seconds.
- Add the noodle sauce by swirling it around the noodles. Toss again until all the noodles are coated with sauce.
- Finally, add the soy slices and fold in the green onions until well-combined. Remove from heat and serve warm.
Video
Notes
- *Feel free to sub soy chop with tofu slices. Please check out the ‘Step 1: Prepare the protein ‘ section on how to prepare the tofu
Feel free to pin the below picture on your Pinterest Board for easy reference.

What is the measurement for the “2 servings” of fresh flat rice noodles? Hoping to use this recipe this week, thanks!
Hi Sele, my homemade flat rice noodles yields about 420g (~1lb). Hope you give this a try. Thank you!
Can you tell me what is mushroom seasoning is please
Hey Kelly, it’s a seasoning made from mushrooms, they also come in powder or granules. I used a brand called Po Lu Ku (it’s a big bag and lasts a long time so I don’t have the package with me). There are a few brands online such as dark horse, but I haven’t tried them before. Let me know if you need anything else. 🙂
Recipe was easy to follow and the dish was really tasty. I’m really loving your recipes. Thank you x
Many, many thanks Susan. I’m so happy you made this recipe. I love this dish and planning to make it again for the weekend. 🙂 Hope you get to try other recipes soon. Best, WoonHeng
What is the measurement for the “2 servings of fresh flat rice noodles” in ounces (oz)?
Hi Ty, my homemade flat rice noodles yield about 420g (~1lb). Thanks!
Thank you! Can’t wait to try the recipe!