A weeknight beef in oyster sauce built on the one trick most cooks skip: a 30-minute baking-soda velvet, exactly 1/2 teaspoon per pound, rinsed hard before it ever hits the wok. One pound of flank steak or sirloin, sliced across the grain at 1/4 inch, gets the alkaline treatment that Cantonese stir-fry stations have used for decades, then a quick cornstarch-and-Shaoxing marinade, a 60-second sear in a screaming-hot wok, and a shiny oyster-soy sauce finished with garlic, ginger, and scallions. Total time from fridge to plate is about 45 minutes, eight of those at the stove. Restaurant-tender beef, home-stove burner, and no mystery ingredients on the counter.
Home-cooked beef stir fry usually comes out grey, chewy, or wet , and it’s almost never the recipe’s fault. It’s two missing steps. The first is a 30-minute soak in a 1/2-teaspoon dose of baking soda, which raises the surface pH of the beef and keeps the proteins from seizing into ropes when they hit a 600-degree wok. The second is slicing across the grain at 1/4 inch on a partially-frozen steak, because even velveted beef chews like a tire if the muscle fibers run the long way. Both moves are quiet kitchen-wisdom in Hong Kong and Guangzhou restaurant kitchens, only recently codified for home cooks by Kenji López-Alt at Serious Eats and the Leung family at The Woks of Life. The recipe below is the home-stove translation, and the part the takeout counter does not want you to know is that the chemistry takes 30 minutes and the cooking takes eight.

What You’ll Need
A 14-inch carbon-steel wok that holds screaming heat (cast iron works in a pinch, but carbon steel recovers faster between batches), a bottle of Lee Kum Kee Premium oyster sauce , the Panda-label brand reference for a reason , a box of Arm & Hammer baking soda for the velveting step, a sharp 8-inch chef’s knife that can cut 1/4-inch slices on a partially-frozen steak without sawing, and a long stainless-steel wok spatula for moving beef around fast in a hot pan. The two-batch sear is the heat argument: crowding a wok drops the temperature and the beef steams instead of searing, so a spatula that lets you move quickly is part of the technique, not an accessory.
Recommended Reads
- Mushroom in Oyster Sauce
- Noodles in Oyster Sauce
- Chicken with Oyster Sauce
- Bok Choy with Oyster Sauce
- Old-Fashioned Beef Stew
The Baking Soda Secret Restaurants Use
The chemistry is short. Baking soda is alkaline. Massaged into thinly-sliced beef and left for 30 minutes, it raises the surface pH of the meat from around 5.5 toward 7. At a higher pH, the proteins on the surface of the beef cannot cross-link as tightly when they hit heat, which means the meat stays smooth instead of seizing into the chewy ropes most home stir-fries produce. This is the same trick Cantonese stir-fry stations use to keep velveted beef tender on a 700-degree wok, and it works at home on a regular gas or induction burner for the same reason , the pH change does not care about the BTU rating of your stove. Kenji López-Alt walked through the chemistry at Serious Eats, the Leung family at The Woks of Life codified the home protocol, and Cook’s Illustrated has been quietly running variations of the method in test-kitchen pieces for fifteen years.
The dose is the part that gets botched. The correct ratio is 1/2 teaspoon of baking soda per 1 pound of sliced beef. Not 1 teaspoon. A full teaspoon overdoses the meat, drags the surface pH past the target, and leaves a soapy, faintly bitter aftertaste that no amount of sauce will hide. Half a teaspoon, dissolved in two tablespoons of water so it coats evenly, is the working dose for tenderness without the off-flavor. Rest the coated beef in the fridge for 30 minutes , long enough for the pH shift to do its job, short enough that the meat does not turn mushy at the edges.
The rinse is non-negotiable. After the 30-minute rest, the beef goes into a colander and gets rinsed hard under cold running water for a full 60 seconds, then patted very dry on paper towels. The rinse washes off the residual baking soda. Skip it and the beef goes into the wok still carrying the alkaline coating, which is exactly what produces the soapy taste people associate with “bad” velveted beef. Rinse hard, dry harder, then marinate. That is the whole secret.
A Few Notes on the Ingredients
- Beef, flank or sirloin: One pound (450 g) of flank steak is the first choice , open grain, beefy flavor, takes marinade well , with top sirloin as the easy alternative and skirt as a third option. Partially freeze the steak for 20 to 30 minutes for cleaner slicing, then cut across the grain at a true 1/4-inch thickness. Both the cut and the slice direction matter; with-the-grain slicing will produce chewy beef even with a perfect velvet.
- Baking soda, 1/2 tsp per 1 lb: Exact dosage matters. More baking soda does not mean more tender beef , it means soapy, bitter beef. The ratio is fixed at 1/2 teaspoon per pound of sliced meat, dissolved in 2 tablespoons of water to coat evenly. Arm & Hammer is the default; any plain baking soda works.
- Oyster sauce: Lee Kum Kee Premium (the Panda label) is the brand reference for Cantonese stir-fries. It has more oyster extract and less caramel color than the cheaper supermarket versions, which means the sauce tastes like oyster sauce rather than salty sweet. Three tablespoons in the sauce mix is the working amount.
- Dark soy sauce: Adds color and a deeper malted note than light soy. A single tablespoon in the sauce plus a teaspoon in the marinade is enough , dark soy is concentrated, and too much pushes the dish toward salty-bitter.
- Shaoxing wine: One tablespoon in the marinade. This is the Chinese cooking wine that gives the dish its restaurant aroma. Dry sherry is the most common substitute if your store does not stock it; do not substitute white wine or sake , different flavor entirely.
- Cornstarch, two ways: One teaspoon in the marinade coats the beef so it sears cleanly, and another teaspoon mixed with a tablespoon of water makes the slurry that thickens the sauce into a shiny glaze at the end. Two roles, same ingredient.
- Aromatics trinity: Garlic, ginger, and scallions are the non-negotiable trio for Cantonese stir-fry. Three cloves of garlic, a 1-inch knob of ginger, and four scallions (whites for the sauté, greens for the finish) , minced fresh, no jarred substitutes, no powders.
Recipe: Beef in Oyster Sauce

Prep time: 35 minutes (including 30-minute baking-soda rest) | Cook time: 8 minutes | Total time: 43 minutes | Serves: 4
Ingredients
- 1 lb (450 g) flank steak or top sirloin, sliced across the grain into 1/4-inch slices
For the baking-soda tenderization:
- 1/2 tsp baking soda
- 2 tbsp water
For the marinade:
- 1 tbsp Shaoxing wine
- 1 tsp dark soy sauce
- 1 tsp cornstarch
- 1/2 tsp sugar
For the sauce:
- 3 tbsp oyster sauce (Lee Kum Kee Premium)
- 1 tbsp dark soy sauce
- 1 tsp sugar
- 1/4 cup (60 ml) beef or chicken stock
- 1 tsp cornstarch + 1 tbsp water (slurry, mixed separately)
For the stir-fry:
- 3 tbsp neutral oil (such as canola or grapeseed), divided
- 3 cloves garlic, minced
- 1-inch knob fresh ginger, minced
- 4 scallions, whites and greens separated, both sliced
- 1 small onion, sliced
- 1 tsp toasted sesame oil
Instructions
- In a medium bowl, combine the sliced beef with the baking soda dissolved in 2 tablespoons of water. Mix with your hands to coat every piece evenly, then cover and rest in the fridge for 30 minutes. This is the tenderization window , the alkaline soak is doing the work that high-heat searing alone cannot.
- After the rest, transfer the beef to a colander and rinse it hard under cold running water for a full 60 seconds, tossing as you go to make sure every slice gets clean water. This step is non-negotiable. Skipping the rinse leaves residual baking soda on the meat and produces the soapy, bitter result people blame on “bad” velveting.
- Pat the rinsed beef very dry between paper towels , wet beef will steam in the wok instead of searing. Return it to the bowl, add the marinade (Shaoxing wine, dark soy sauce, cornstarch, sugar), and mix to coat. Let it sit while you prep the sauce and aromatics.
- In a small bowl, whisk together the sauce ingredients: oyster sauce, dark soy sauce, sugar, and stock. In a separate small bowl, mix the cornstarch slurry (1 teaspoon cornstarch + 1 tablespoon water) and set it next to the stove. Have the aromatics , garlic, ginger, scallion whites, sliced onion , measured and within reach. The cook from here is fast.
- Heat the wok over high heat until it is smoking. Add 2 tablespoons of oil and swirl to coat. Add the beef in a single layer and do not stir for 60 seconds , let it sear and pick up color on the underside. Then stir-fry for another 90 seconds, until the beef is just-pink in the center. Transfer to a clean plate. Total beef-in-pan time is about 2 1/2 minutes.
- Return the wok to high heat and add the remaining 1 tablespoon of oil. Add the sliced onion, garlic, ginger, and scallion whites. Stir-fry for 60 seconds, until fragrant and the onion edges start to soften but still have bite.
- Pour in the sauce and bring it to a simmer. Stir in the cornstarch slurry and cook for about 30 seconds, until the sauce turns shiny and coats the back of a spoon.
- Return the beef to the wok and toss for 30 seconds to coat with the sauce. Do not overcook , the beef should still be just-pink at the center when the dish comes off the heat; it will finish carrying-over by the time it hits the plate.
- Off the heat, add the toasted sesame oil and the scallion greens. Toss once more and serve immediately over jasmine rice.
Notes
The 1/2-teaspoon baking soda ratio is exact and not a starting point. Doubling it does not double the tenderness , it pushes the surface pH past the working window and leaves the beef tasting soapy and faintly bitter, the off-flavor people remember from a bad takeout night. Measure level, dissolve in water, and rest exactly 30 minutes. Longer than two hours and the beef edges start to turn mushy.
The rinse step is the other half of the protocol and the part most cooks skip. Sixty seconds of cold running water, tossing the beef as you go, then pat very dry. Wet beef going into a hot wok steams instead of searing, which is its own problem, but the bigger issue is that residual baking soda left on the surface is what produces the metallic aftertaste. Rinse hard, dry harder.
Across-the-grain slicing at 1/4 inch is the other tenderness lever. Look at the steak , you will see parallel lines running through the meat (those are the muscle fibers). Slice perpendicular to those lines, not along them. A partially-frozen steak (20 to 30 minutes in the freezer) is easier to cut at a true 1/4-inch thickness than a fully-thawed one. Cut too thick and the beef tastes underdone in the middle; cut too thin and it overcooks before it hits the sauce.
Tips and Variations
The 1/2 Teaspoon Baking Soda Rule (Not 1 Teaspoon)
The single most common mistake with home velveting is overdosing the baking soda. The internet is full of recipes that call for a full teaspoon per pound, and they all produce the same result: beef that is technically tender but tastes faintly metallic, soapy, or bitter. The chemistry has a working window. At 1/2 teaspoon per pound, the surface pH of the meat lifts from 5.5 to roughly 7 , neutral, the sweet spot where proteins lose their grip and the meat stays smooth. At 1 teaspoon, the pH overshoots into the alkaline zone where the surface starts to taste like baking soda smells. There is no upside to more. Measure level, use a clean teaspoon, and trust the ratio.
Why Rinsing Hard After Tenderizing Is Essential
The rinse is the part people skip because it feels counterintuitive , you just spent 30 minutes coating the beef in something, why would you wash it off? Because the baking soda has already done its job. The pH change happened during the rest, on the surface of the meat. What remains on the outside after 30 minutes is residue you do not want carried into the wok. Sixty seconds of cold running water, tossing the beef in a colander, removes the residual coating without removing the tenderness. The rinse is also why velveted beef from a restaurant kitchen tastes clean , they have been doing this step for decades. Pat the beef very dry afterward; wet beef will not sear properly.
Slicing Across the Grain at 1/4-Inch
Even a cleanly velveted piece of beef will chew like a tire if it is sliced the wrong way. Muscle fibers run in long parallel lines through a flank or sirloin steak , you can see them on the surface as faint stripes. Slicing along those stripes (with the grain) leaves the fibers full-length, which means every bite is a mouthful of tough beef threads. Slicing perpendicular to them (across the grain) cuts the fibers short, which is half the tenderness equation. Partially freezing the steak for 20 to 30 minutes firms it up enough to slice cleanly at a true 1/4 inch with a sharp 8-inch chef’s knife. Thinner than 1/4 inch and the beef overcooks before the sauce reduces; thicker and the inside stays raw. The 1/4-inch number is not a suggestion.
Adding Broccoli or Snap Peas to Make It a One-Pan Meal
The dish is already a complete protein over rice, but adding a green vegetable turns it into a one-pan dinner for four with no separate side. The easiest add is 2 cups of small broccoli florets, blanched for 60 seconds in salted boiling water, shocked in cold water, and drained. Stir them into the wok after the sauce thickens, in the same 30 seconds you toss the beef back in , they pick up the glaze without losing their snap. Snap peas (about 8 ounces) work the same way but go in raw, straight after the aromatics, for 30 seconds of stir-fry before the sauce hits the pan. Both versions move the dish into the “beef and broccoli”-style territory the takeout menu loves, without any extra steps or technique.
Make-Ahead the Tenderized Beef Up to 1 Day
The baking-soda velveting and marinade can be done the day before, which turns a 43-minute recipe into a 10-minute weeknight cook. Slice, velvet, rinse, dry, marinate, then refrigerate in a covered container for up to 24 hours. The cornstarch in the marinade keeps the beef from drying out, and an extra few hours in the fridge actually deepens the seasoning. On cook night, pull the beef out 20 minutes before the wok heats up so it is not stove-shockingly cold, mix the sauce, prep the aromatics, and you are eight minutes from plating. Do not freeze velveted beef , the texture turns spongy on thaw, and you lose the smooth bite that is the entire point of the technique.
What to Serve It With
Beef in oyster sauce is built for a Cantonese-style family dinner, and the default plate is the dish itself spooned over a bowl of steamed jasmine rice , the rice absorbs the oyster glaze the way it is designed to, and the meal is complete on the rice alone. For a fuller family-style spread, lean on the rest of the oyster-sauce series: bok choy with oyster sauce as the vegetable side that completes the restaurant plate, mushrooms in oyster sauce if you want a meaty-vegetarian counterpoint on the table, noodles in oyster sauce as a starch alternative when rice is not the move, and chicken with oyster sauce as the second protein for a larger table. A pot of jasmine tea pulls everything together. If you want a contrast in technique , beef cooked the slow way , our old-fashioned beef stew is the long-braise opposite of this 8-minute stir-fry.
Frequently Asked Questions
What is the most reliable cut of beef for stir fry?
Flank steak is the gold standard , open grain, beefy flavor, takes marinade well. Top sirloin is the easy alternative if your market does not carry flank, and skirt steak works too if you slice it thin and across the grain. Avoid anything labeled “stew beef,” chuck, or “for braising” , those are tough cuts designed for long cooking, and no amount of velveting will turn them into stir-fry meat in eight minutes. The cut and the slice direction matter more than the brand or grade.
How do Chinese restaurants make beef so tender?
Three moves, and the order matters. First, baking-soda velveting: 1/2 teaspoon per pound of sliced beef, dissolved in water, rested 30 minutes, then rinsed hard. Second, slicing across the grain at 1/4 inch , half the tenderness equation, often skipped at home. Third, a high-heat sear in two batches in a screaming-hot wok, so the beef caramelizes instead of steaming. The first two happen before you ever turn the burner on; the third happens in under three minutes. That is the entire trick.
What does baking soda actually do to beef?
Baking soda is alkaline. When you massage it into thinly-sliced beef and let it rest, it raises the pH of the meat’s surface from around 5.5 toward 7. At a higher pH, the surface proteins cannot cross-link as tightly when they hit heat, which means the beef stays smooth and tender instead of seizing up into chewy ropes. The key constraints are dose (1/2 teaspoon per pound, no more), time (30 minutes, no longer than 2 hours), and the rinse afterward to remove residue. Get those three right and the texture is restaurant-grade.
Do you slice beef with or against the grain?
Always against the grain. Look at the steak and you will see parallel lines running through the meat , those are the muscle fibers. Slice perpendicular to those lines, not along them. With-the-grain slicing leaves the fibers full-length, which is what makes beef chew like a tire. Across-the-grain slicing cuts the fibers short, which is half of how restaurants get tenderness even on cheaper cuts. Partially freeze the steak for 20 to 30 minutes before slicing for cleaner cuts at a true 1/4-inch thickness.
Can I skip the baking soda step?
You can , the dish will be cleanly fine. It will not be the dish you remember from a good Cantonese restaurant. If you skip the velveting, slice the beef extra-thin (closer to 1/8 inch than 1/4), make sure you are using a tender cut like top sirloin or flank, and do not overcook it in the wok. The flavor will be there from the oyster sauce and aromatics; the texture is what you sacrifice. The 30 extra minutes the velveting takes is what separates “fine home stir-fry” from “tastes like takeout.”
How do I store and reheat leftovers?
Leftovers keep in a covered container in the fridge for up to three days. To reheat, warm the beef in a skillet over medium heat with a splash of water or stock to loosen the sauce, just until heated through , about two minutes. Avoid the microwave on whole pieces; it overcooks the beef and turns the texture rubbery. The sauce actually protects the meat in the fridge better than you would expect, which is why this dish is on the short list of stir-fries that work as meal-prep lunches.
Key Takeaways
- Velvet the beef with 1/2 teaspoon baking soda per 1 pound of sliced meat , exact dosage. More baking soda equals soapy, bitter beef, not more tender beef.
- Rest the coated beef in the fridge for 30 minutes, then rinse hard under cold running water for 60 seconds and pat very dry. The rinse is non-negotiable.
- Slice flank steak or top sirloin across the grain at a true 1/4-inch thickness; partially freeze the steak first for cleaner cuts. Slice direction is half the tenderness equation.
- Sear the beef in a single layer in a screaming-hot wok with neutral oil for 60 seconds undisturbed, then stir-fry 90 seconds until just-pink in the center , total beef-in-pan time is under 3 minutes.
- Finish with the oyster-soy sauce and a cornstarch slurry for the shiny glaze; off-heat sesame oil and scallion greens are the closing aromatics.
- The tenderized, marinated beef holds in the fridge up to 24 hours , make-ahead the prep, and weeknight dinner is an 8-minute cook.
Final Thoughts
This is the recipe that closes the gap between home stir-fry and the takeout counter, and the gap is smaller than it looks. Thirty minutes of baking-soda velveting, a 60-second rinse, a 1/4-inch slice across the grain, and an 8-minute cook in a hot wok. None of those steps are difficult. They are just the ones most home recipes skip, and skipping them is the entire reason a home beef stir-fry usually arrives grey and chewy when the takeout version arrives smooth.
The two non-negotiables are the dose and the rinse. Half a teaspoon of baking soda per pound, not a full teaspoon , overdose and you get soapy beef, not tender beef. Sixty seconds of cold running water afterward, then pat dry , skip the rinse and the residual baking soda makes its presence known in every bite. Get the dose right and the rinse done, and the texture lands restaurant-perfect on the first try.
Cook this on a Tuesday night and it tends to become the beef dish that runs on rotation. The technique applies to almost any Cantonese stir-fry that calls for sliced beef , beef and broccoli, beef chow fun, beef with bitter melon , so the 30 minutes you spend learning the velvet pay back across an entire family of dishes. The oyster-sauce version is the canonical home-cook entry point, and the recipe above is the version that does not cut corners. Carry it forward. The takeout counter does not have to do this alone.
Beef in Oyster Sauce
A weeknight beef in oyster sauce built on the one trick most cooks skip: a 30-minute baking-soda velvet, exactly 1/2 teaspoon per pound, rinsed hard before it ever hits the wok.
Ingredients
- 1 lb (450 g) flank steak or top sirloin, sliced across the grain into 1/4-inch slices
- 1/2 tsp baking soda
- 2 tbsp water
- 1 tbsp Shaoxing wine
- 1 tsp dark soy sauce
- 1 tsp cornstarch
- 1/2 tsp sugar
- 3 tbsp oyster sauce (Lee Kum Kee Premium)
- 1 tbsp dark soy sauce
- 1 tsp sugar
- 1/4 cup (60 ml) beef or chicken stock
- 1 tsp cornstarch + 1 tbsp water (slurry, mixed separately)
- 3 tbsp neutral oil (such as canola or grapeseed), divided
- 3 cloves garlic, minced
- 1-inch knob fresh ginger, minced
- 4 scallions, whites and greens separated, both sliced
- 1 small onion, sliced
- 1 tsp toasted sesame oil
Instructions
- In a medium bowl, combine the sliced beef with the baking soda dissolved in 2 tablespoons of water. Mix with your hands to coat every piece evenly, then cover and rest in the fridge for 30 minutes.
- After the rest, transfer the beef to a colander and rinse it hard under cold running water for a full 60 seconds, tossing as you go to make sure every slice gets clean water. This step is non-negotiable.
- Pat the rinsed beef very dry between paper towels , wet beef will steam in the wok instead of searing. Return it to the bowl, add the marinade (Shaoxing wine, dark soy sauce, cornstarch, sugar), and mix to coat.
- In a small bowl, whisk together the sauce ingredients: oyster sauce, dark soy sauce, sugar, and stock. In a separate small bowl, mix the cornstarch slurry (1 teaspoon cornstarch + 1 tablespoon water) and set it next to the stove.
- Heat the wok over high heat until it is smoking. Add 2 tablespoons of oil and swirl to coat. Add the beef in a single layer and do not stir for 60 seconds , let it sear and pick up color on the underside.
- Return the wok to high heat and add the remaining 1 tablespoon of oil. Add the sliced onion, garlic, ginger, and scallion whites. Stir-fry for 60 seconds, until fragrant and the onion edges start to soften but still have bite.
- Pour in the sauce and bring it to a simmer. Stir in the cornstarch slurry and cook for about 30 seconds, until the sauce turns shiny and coats the back of a spoon.
- Return the beef to the wok and toss for 30 seconds to coat with the sauce. Do not overcook , the beef should still be just-pink at the center when the dish comes off the heat; it will finish carrying-over by the time it hits the plate.
- Off the heat, add the toasted sesame oil and the scallion greens. Toss once more and serve immediately over jasmine rice.
Notes
The 1/2-teaspoon baking soda ratio is exact and not a starting point. Doubling it does not double the tenderness , it pushes the surface pH past the working window and leaves the beef tasting soapy and faintly bitter, the off-flavor people remember from a bad takeout night. Measure level, dissolve in water, and rest exactly 30 minutes. Longer than two hours and the beef edges start to turn mushy.
The rinse step is the other half of the protocol and the part most cooks skip. Sixty seconds of cold running water, tossing the beef as you go, then pat very dry. Wet beef going into a hot wok steams instead of searing, which is its own problem, but the bigger issue is that residual baking soda left on the surface is what produces the metallic aftertaste. Rinse hard, dry harder.
Last update on 2026-08-08 / Affiliate links / Images from Amazon Product Advertising API