Soups & Stews
This beef and tomato stir fry recipe delivers restaurant-quality wok hei—smoky, spicy, and sweet—all in under 20 minutes. The secret lies in high-heat searing and a balanced sauce that caramelizes just enough to deepen flavors without overpowering the natural sweetness of the tomatoes. I developed this after years of testing stir-fry techniques, and it never fails to impress. What sets this recipe apart is the technique: beef strips are seared until deeply browned before being tossed with tomatoes that release their juices in the wok, creating a natural sauce. The sauce itself is a simple yet powerful blend of soy, ginger, garlic, and a touch of brown sugar—just enough to complement the beef’s richness. High heat is critical—it transforms the dish from ordinary to extraordinary. By the time you’re done, you’ll have tender beef strips with caramelized edges, juicy tomatoes that burst with flavor, and a sauce that coats every bite in perfect harmony. The aroma alone will draw everyone to the table, and the first bite delivers that signature wok hei—smoky, slightly charred, and packed with layers of umami and sweetness. Serve over steamed jasmine rice or noodles for a complete meal, and garnish with fresh cilantro or sesame seeds for brightness. This stir-fry is quick, satisfying, and packed with flavor—ideal for weeknights or weekend gatherings.
Ingredients for beef and tomato stir fry
High-heat searing meets caramelized tomatoes and a balanced sauce for this restaurant-style stir fry.
| Ingredient | Amount | Notes |
|---|---|---|
| Flank Steak 🥩 | 1 ¼ lb | Thinly sliced against grain |
| Roma Tomatoes 🍅 | 1 ½ lb | Halved lengthwise, seeds removed |
| Low-Sodium Soy Sauce 🥢 | 3 tbsp | Kikkoman preferred |
| Sesame Oil 🫒 | 1 tbsp | Toasted, for aroma |
| Brown Sugar 🍯 | 1 tbsp | Light or dark |
| Fresh Ginger 🧄 | 1 tbsp | Finely grated |
| Garlic Cloves 🧄 | 4 cloves | Minced, not pressed |
| Vegetable Oil 🫒 | 2 tbsp | High smoke point |
| Red Chili Flakes 🌶️ | 1 tsp | Adjust for heat preference |
| Jasmine Rice 🍚 | 1 ½ cups | Uncooked, for serving |
| Fresh Cilantro 🌿 | ¼ cup | Chopped, for garnish |
| Toasted Sesame Seeds 🌰 | 1 tbsp | For garnish |
| Kosher Salt 🧂 | 1 tsp | Diamond Crystal preferred |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
The flank steak is non-negotiable here—it’s lean but tender when sliced thinly against the grain. Ask your butcher to slice it if you’re not comfortable doing it yourself, or freeze it 20 minutes before slicing for easier cutting. For tomatoes, Roma or vine-ripened varieties hold up best to high heat and release their juices beautifully. I grab mine from the produce section at Whole Foods when they’re in season, but any grocery store’s tomato bin works. The ginger and garlic should be freshly grated and minced—no substitutes here, as they’re the flavor anchors of the sauce. For the sesame oil, look for 100% pure, toasted sesame oil in the Asian aisle, not the flavored cooking oil section.
No soy sauce? Coconut aminos work in a pinch, though the flavor will be slightly different. Short on brown sugar? Maple syrup or agave at half the amount adds sweetness without changing the texture. The chili flakes can be swapped for Sichuan peppercorns (lightly toasted and ground) if you want a numbing sensation along with heat. For the rice, jasmine rice is ideal, but basmati or even day-old white rice works if you’re in a hurry. The cilantro and sesame seeds are purely for garnish—skip them if you’re not a fan, but they add that final layer of brightness and texture that makes the dish feel complete. If you’re using pre-minced garlic or ginger from a jar, rinse it thoroughly to remove any added oils or preservatives.
Prep the beef and tomatoes first—they’ll wait while you cook the rice. Store the sliced steak in an airtight container with a paper towel to absorb any moisture, and keep it in the fridge for up to 2 days. The sauce ingredients (soy, sesame oil, sugar, ginger, garlic) can be mixed ahead and stored in the fridge for 3 days, but taste it before using—flavors deepen over time. The cooked stir fry reheats beautifully—just add a splash of water or soy sauce and stir over high heat for 2-3 minutes. For leftovers, portion into containers with a layer of plastic wrap pressed directly on the surface to prevent the sauce from drying out. Keeps for 3-4 days in the fridge.
Why You'll Love This Recipe
- One-Pan Magic: I swear by this recipe because it’s that easy—just sear the flank steak, toss in chopped tomatoes and a splash of soy, then let the sesame oil work its nutty charm. No pots, no pans, no stress. Honestly, I’ve made it while scrolling through my phone.
- Sweet-Savory Balance: The brown sugar and low-sodium soy sauce create this perfect harmony—tender beef with a glossy, slightly sticky glaze that clings to every bite. Roma tomatoes add that juicy pop, and the sesame oil? It’s the secret weapon that ties it all together.
- Meal Prep MVP: Between us, this is my go-to for lunches all week. The flavors actually improve the next day—yes, really. Pack it in containers, and you’ve got a protein-packed, restaurant-quality meal without the takeout cost.
- Budget-Friendly Powerhouse: Flank steak stretches far, and Roma tomatoes are cheap but pack serious flavor. A little sesame oil and brown sugar make it feel fancy, but the grocery bill stays light. My wallet and taste buds both win.
Step-by-step instructions for beef and tomato stir fry
Master this technique and you'll achieve restaurant-quality stir fry with tender beef and juicy tomatoes in minutes.
Prepare the Flank Steak and Tomatoes
Begin by slicing the 1.25 lb flank steak thinly against the grain into ¼-inch thick strips. This ensures tender bites that cook quickly. Pat the slices dry with paper towels—any moisture will prevent proper searing. In a bowl, toss the steak strips with 1 tablespoon sesame oil, 1 teaspoon kosher salt, and ½ teaspoon black pepper. Let it marinate for 10 minutes while you prepare the tomatoes.
Halve the 1.5 lb Roma tomatoes lengthwise and remove seeds using a spoon. Slice each half into ¼-inch thick wedges. This size ensures they cook evenly without turning mushy. Place the tomato slices in a separate bowl and toss with 1 tablespoon brown sugar, 1 tablespoon finely grated fresh ginger, 4 minced garlic cloves, and 1 teaspoon red chili flakes. The sugar will caramelize slightly while cooking, adding natural sweetness.
Cook the Jasmine Rice
Rinse the 1.5 cups jasmine rice under cold water until the water runs clear, then drain well. Cook the rice according to package instructions using a 1:1.5 rice-to-water ratio (typically 2.25 cups water). The rice should be al dente—slightly firm to the bite—when finished. While the rice cooks, proceed with the stir fry to maintain timing.
Real talk: Overcooked rice turns mushy and absorbs flavors poorly. If your rice finishes early, cover it with a damp towel to keep it warm. The stir fry should take about 15 minutes, so plan accordingly. This step sets the foundation for your meal—don't rush it.
Sear the Beef in Stages
Heat a 14-inch wok or large skillet over high heat until a drop of water sizzles and evaporates instantly. Add 2 tablespoons vegetable oil and swirl to coat the pan. Working in two batches (to avoid overcrowding), add the marinated steak strips and sear for 1-2 minutes per side until deep brown and just cooked through. The beef should be firm to the touch but still slightly pink in the center.
Remove the seared beef to a plate and set aside. If the oil starts smoking excessively, reduce heat slightly—you want a hot pan, not a fire. This high-heat sear locks in juices and creates that signature wok-hei flavor. Don't skip this step; it makes all the difference in texture and depth of flavor.
Stir-Fry Tomatoes and Combine Ingredients
Return the wok to high heat and add the prepared tomato mixture. Stir-fry for 3-4 minutes until the tomatoes soften slightly but still retain their shape. They should release their juices and develop a glossy sheen from the caramelizing sugar. Add the 3 tablespoons low-sodium soy sauce and toss everything together.
Return the seared beef to the wok and toss gently to combine. Cook for an additional 1-2 minutes just to heat through. The tomatoes should be tender-crisp with a slight sheen, and the beef should be fully warmed through without overcooking. Taste and adjust seasoning—add a splash more soy sauce if needed, but the tomatoes and sugar should balance the saltiness naturally.
Serve with Garnishes
Transfer the stir fry to a serving platter and garnish with ¼ cup chopped fresh cilantro and 1 tablespoon toasted sesame seeds. The cilantro adds brightness, while the sesame seeds contribute a nutty crunch. Serve immediately over the cooked jasmine rice, ensuring each portion gets an even distribution of beef, tomatoes, and sauce.
This dish shines when served fresh—waiting even 5 minutes lets the tomatoes release excess liquid, diluting the sauce. The contrast of tender beef, juicy tomatoes, and fluffy rice makes every bite satisfying. Pair with a cold beer or green tea to cleanse the palate between bites.
Pro Tips For Making Beef And Tomato Stir Fry
- Slice Steak Against the Grain: Flank steak’s tough fibers run diagonally—cutting thin slices perpendicular to those lines makes each bite tender. I used to ignore this and ended up with chewy, rubbery strips. Grab a sharp knife, angle it low, and slice at a 45-degree cut. The effort pays off instantly.
- Char Tomatoes First: Toss halved Roma tomatoes into a dry, screaming-hot pan for 30 seconds before adding anything else. That quick sear deepens their flavor and prevents them from turning to mush later. Yes, they’ll look blistered—good. It’s the first step to avoiding sad, watery tomatoes in your stir-fry.
- Salt the Steak Before Browning: Sprinkle the flank steak with salt right after slicing, then let it sit for 10 minutes. This ensures the seasoning penetrates instead of just clinging to the surface. I learned this the hard way—dry-salted steak in stir-fries tastes bland if you skip this step. Trust me, the crust will be worth it.
- Deglaze with Soy and Sugar: After browning the beef, splash in 1 tablespoon of low-sodium soy sauce and 1 teaspoon of brown sugar immediately—let it bubble for 30 seconds before adding tomatoes. This creates a glossy, slightly caramelized base that clings to everything. Skipping this means flavor hiding in the pan instead of coating your dish.
Essential equipment for perfect results
Wok Essentials
A 14-inch carbon steel wok is my go-to for stir-fries—it heats up fast and retains heat beautifully. I recommend the De Buyer Mineral B 14-inch for its even heating and durability. If you don’t have a wok, a heavy-bottomed cast iron skillet (like Lodge 12-inch) works just as well.
The key is high heat—your pan should be screaming hot before adding oil. 🔥
High-Heat Oil
Use a high-smoke-point oil like avocado oil or refined peanut oil—they won’t burn at the temperatures needed for stir-frying. I avoid olive oil here because it smokes too quickly and can make the dish taste bitter.
A 2-tablespoon amount is plenty for a 14-inch wok, but adjust based on your pan size. Keep a bottle of sesame oil (toasted, not flavored) on hand for finishing touches—it adds aroma without overpowering.
Knife Skills Matter
A sharp chef’s knife and cutting board are non-negotiable for this recipe. Thinly slicing the flank steak against the grain ensures tender bites, while ¼-inch tomato wedges cook evenly. I use a Wüsthof Ikon 8-inch for precision—it’s my workhorse in the kitchen.
If you’re not comfortable slicing meat, ask your butcher to do it for you. A mandoline can help with tomatoes if you’re new to knife skills, but practice makes perfect. ✨
Sauce Prep Tools
Small tools make sauce prep easier. A microplane for ginger and garlic ensures fine, even grates that dissolve into the sauce. I also keep a small mixing bowl (like OXO Good Grips 1.5-cup) for combining sauce ingredients ahead of time.
A fine-mesh strainer helps if you prefer smooth sauces—just strain the ginger-garlic mixture before adding to the wok. For measuring, a spoon rest with built-in scales (like OXO Good Grips) saves counter space.
Garnish Essentials
Fresh cilantro and toasted sesame seeds elevate the dish, so keep these on hand. Toast sesame seeds in a small dry skillet over medium heat for 1-2 minutes until fragrant—this brings out their nutty flavor. I store seeds in a small airtight container to keep them fresh.
For extra brightness, a zester makes quick work of lemon peel if you add a squeeze at the end. A pair of kitchen shears is handy for chopping cilantro quickly without dulling your chef’s knife.
Optional Upgrades
For next-level results, invest in a wok thermometer (like ThermoWorks One) to monitor heat—ideal temps hover around 500°F. A wok lid helps control heat when needed, though stir-fries are usually uncovered.
If you love wok hei (breath of the wok), a gas burner with high-BTU output (like Weber QuickFire) gives you the control to crank up the heat. For storage, glass containers with tight lids keep leftovers fresh for up to 4 days in the fridge.
Nutrition facts
Frequently asked questions
Can I use ground beef instead of flank steak?
Ground beef works in a pinch, but the texture will be quite different. For best results, use 80/20 ground beef (20% fat) and form it into small patties or thin strips to mimic the seared beef texture. Cook until browned and slightly crispy on the edges. Keep in mind the dish will be more hearty than the original recipe, so reduce the portion size accordingly.
What if I don't have a wok?
A heavy-bottomed skillet or cast iron pan works perfectly—just make sure it's large enough to handle the ingredients without overcrowding. The key is maintaining high heat throughout the cooking process. A 12-inch cast iron skillet is my second choice after a wok for achieving that signature wok hei flavor.
How can I make this dish spicier?
Add 1-2 teaspoons of chili crisp or 1 tablespoon of gochujang to the sauce for extra heat. For a smoky kick, sprinkle in ½ teaspoon of smoked paprika with the chili flakes. If you love fresh heat, stir in 1 finely chopped Thai chili at the end. Always taste as you go—start with less and adjust to your preference.
Can I make this stir fry ahead of time?
Yes, but with some adjustments. Cook the beef and tomatoes separately, then refrigerate in airtight containers for up to 2 days. Reheat the beef and tomatoes separately over medium heat with a splash of soy sauce, then combine. The sauce may thicken slightly when reheated, so add a little water if needed. For best texture, serve over freshly cooked rice.
What's the best way to store leftovers?
Portion leftovers into airtight containers with a layer of plastic wrap pressed directly on the surface to prevent drying. Store in the fridge for up to 4 days. For freezing, package in single portions and freeze for up to 3 months. When reheating, add a splash of water or soy sauce and stir over high heat for 2-3 minutes to restore moisture and texture.
