Chinese Recipes
Quick Beef and Tomato Stir-Fry
Last updated: September 30, 2026
Cantonese tomato beef is the kind of dish a home cook can put on the table in half an hour, yet it tastes like it took much longer. Thin slices of beef are velveted so they stay silky, then seared fast and folded through soft tomato wedges and sweet onion in a savory sauce that turns glossy in the pan. It is comfort food built from a short list of everyday ingredients.
The trick is to keep the beef tender and the tomatoes just soft enough to give up their juice without collapsing into mush. Get that balance right and you have a plate of beef in a light, tangy-sweet gravy that soaks straight into a mound of steamed rice, which is exactly how it is eaten in Cantonese homes.

Why This Tomato Beef Works
Tomato beef looks simple because it is, but two small techniques do all the heavy lifting. The first is velveting: tossing the sliced beef with cornstarch and a little soy before it cooks. That thin coating seals in moisture and gives the beef its signature silky, tender bite instead of the dry, chewy texture that fast, high-heat cooking can produce.
The second is treating the tomatoes as both a vegetable and a sauce. As the wedges heat, they soften and release their juice, and that juice combines with the soy, oyster sauce, and sugar to build a light gravy right in the pan. A small spoon of cornstarch slurry pulls it all together into something glossy that clings to every slice of beef rather than pooling at the bottom of the bowl.
Heat and timing matter too. The beef is seared quickly and pulled out early so it does not overcook, then returned only at the very end to warm through in the sauce. The onion goes in for sweetness and a little bite, and the tomatoes are cooked just until soft, never to a puree. Each element keeps its own character.
Best of all, it is forgiving and cheap. A modest amount of beef stretches to feed a family once the tomatoes and rice come into play, and the pantry sauce ingredients are ones you likely already keep. It is a weeknight dish that rewards you far beyond the effort it asks for.
Pro observation: Add the tomatoes in two stages if you like a saucier result. Cook half until they melt into the gravy, then add the rest near the end so you get both a rich sauce and soft, intact wedges in the same bowl.
Ingredients
Kitchen Measurement Converter
Need to convert an amount while you measure? Pick a category, enter a value, and the result updates instantly.
Ingredient Notes & Substitutions
Beef
Flank steak or sirloin sliced thinly across the grain gives tender bites that cook in seconds. Freeze the beef for 20 minutes first to make it easier to slice thin. Chuck or skirt also work as long as you cut against the grain.
Tomatoes
Ripe, firm tomatoes hold their shape best. Cut them into thick wedges so they soften without dissolving. Roma or plum tomatoes are meaty and reliable, while very juicy tomatoes give a looser, saucier result that is still delicious over rice.
Sauce
Soy sauce, oyster sauce, and a little sugar build the sweet-savory balance. This version is fully halal, so it leans on beef broth and soy for depth instead of any forbidden ingredient. A splash of extra broth loosens the sauce if you want more gravy.
Aromatics
Garlic, ginger, and onion form the backbone. Fresh ginger is worth using for its warmth and lift. Scallions go in at the end for color and a fresh, grassy note. A pinch of white pepper is a traditional finishing touch if you have it.
Equipment
- Wok or large skillet
- Wooden spoon or spatula
- Sharp knife and board
- Mixing bowl
- Small bowl for sauce
- Measuring spoons
Before You Start
1. Freeze the steak for 20 minutes, then slice it. Partly frozen beef firms up enough to cut into slices about 1/8 inch thick, straight across the grain. Thicker slices, or slices cut along the grain, stay chewy no matter how carefully you velvet them.
2. Velvet the beef before you touch the vegetables. The slices need their full 15 minutes in the cornstarch, soy, and oil for the coating to cling and keep them silky in a scorching wok. Mix it first, then cut the tomatoes and onion while it sits.
3. Start the rice and park an empty plate by the stove. Once the wok is hot, the whole dish takes about 10 minutes, and the beef has to leave the pan after roughly 2 minutes, before it is cooked through. There is no time to go hunting for a plate.
Step-by-Step Instructions
Stir-frying moves fast, so slice, measure, and mix the sauce before you turn on the heat. Have the rice cooked and warm so everything reaches the table together.
Velvet the Beef and Mix the Sauce
Slice the beef thinly across the grain and toss it in a bowl with 1 tablespoon of the cornstarch, 1 tablespoon of the soy sauce, and 1 tablespoon of the oil. Let it sit for 15 minutes while you prep. In a small bowl, stir the remaining 2 tablespoons soy sauce, the oyster sauce, sugar, and beef broth together, then whisk in the last tablespoon of cornstarch to make the sauce.
Sear the Beef
Heat a wok or large skillet over high heat until very hot, then add 1 tablespoon of the oil. Add the beef in a single layer and sear, undisturbed, for about 1 minute, then toss quickly until just browned but not fully cooked through, about 2 minutes total. Scoop the beef out onto a plate and set it aside.

Cook the Onion and Aromatics
Add the last tablespoon of oil to the same pan and lower the heat to medium-high. Add the sliced onion and cook for 2 minutes until it begins to soften, then stir in the minced garlic and ginger. Cook for about 30 seconds, until fragrant, keeping everything moving so the garlic does not brown and turn bitter.
Cook the Tomatoes Down
Add the tomato wedges and cook for 3 to 4 minutes, stirring gently, until they soften and start to release their juice but still hold their shape. Press a few wedges lightly with your spatula to help them give up their liquid, which becomes the base of the sauce.

Add the Sauce and Thicken
Give the sauce bowl a quick stir to recombine the cornstarch, then pour it into the pan. Bring it to a gentle simmer and stir for about 1 minute, until the sauce turns glossy and thick enough to coat the back of a spoon. If it looks too tight, splash in a little more broth.
Return the Beef and Finish
Return the seared beef and any resting juices to the pan and toss for about 1 minute, just until the beef is warmed through and coated in the glossy sauce. Stir in most of the scallions, taste and adjust the seasoning, then scatter the rest of the scallions over the top and serve right away over steamed rice.

Chef’s Tips From Real Kitchen Testing
Slice the beef thin and against the grain, and velvet it with cornstarch. This is the single biggest factor in beef that is tender rather than tough and chewy.
Get the pan properly hot before the beef goes in and sear it in a single layer. A crowded, cool pan steams the beef gray instead of searing it.
Pull the beef out after a quick sear and return it only at the end. Cooking it twice, briefly, keeps it silky instead of overdone.
Recipe Variations
Serving Suggestions
- A generous mound of steamed jasmine or white rice
- Steamed or stir-fried greens on the side
- Extra scallions and a pinch of white pepper
- A bowl of clear broth soup to round out the meal
Nutrition Facts
| Nutrient | Amount per serving |
|---|---|
| Calories | 320 |
| Protein | 26 g |
| Carbohydrates | 14 g |
| Fat | 17 g |
| Saturated Fat | 4 g |
| Fiber | 2 g |
| Sugar | 8 g |
| Sodium | 720 mg |
Values are estimates per serving and vary with the exact ingredients and brands you use.
Make-Ahead Tips
Slice the beef and velvet it, chop the vegetables, and mix the sauce up to a day ahead and keep them separate in the refrigerator. When it is time to eat, the actual stir-fry takes only a few minutes from start to finish.
Storage, Freezing & Reheating
Common Mistakes to Avoid
Troubleshooting
Beef tough? It was sliced too thick, cut with the grain, or overcooked. Slice thinly across the grain, velvet it, and sear only until just browned.
Sauce too thin? The cornstarch slurry needs another minute at a simmer to activate, or add a touch more cornstarch mixed with water and stir until glossy.
Tomatoes fell apart? They were overripe or cooked too long. Use firmer tomatoes, cut thick wedges, and add them for only a few minutes.
A Note on Chinese Cooking
Tomato beef belongs to the everyday, home-style side of Cantonese cooking, the quick stir-fries that land on the family table alongside a big pot of rice rather than at a banquet. Its Chinese name is fanqie chao niurou, which translates almost literally as what it is: fanqie means tomato, chao means stir-fry, and niurou means beef. Put together, it is simply a stir-fry of tomatoes and beef, a name as plain and practical as the dish itself.
It is easy to mix up with its most famous cousin, the Chinese tomato and egg stir-fry, which uses the same tomato base but folds in soft scrambled eggs instead of beef. The difference is right there in the protein: eggs make a light, breakfast-friendly dish, while beef makes a heartier main course built around the same sweet-savory tomato sauce. If you love this style of cooking, a bowl of Taiwanese beef noodle soup shows how far tender beef and a tomato-tinged broth can travel across the region.
What keeps dishes like this alive is how adaptable and affordable they are. A little beef stretches a long way once the tomatoes and rice arrive, the sauce is built from pantry staples, and the whole thing comes together in one pan. That thrifty, one-wok spirit is the heart of home cooking across southern China.
