Main Courses
This beef and spinach stir fry recipe delivers restaurant-quality wok heat in just 15 minutes, with tender beef, vibrant spinach, and a bold soy-ginger sauce that balances sweet, spicy, and umami.
The secret lies in high-heat stir-frying—where the beef develops a caramelized crust while the spinach wilts into tender, bright green perfection. I've perfected this technique over years of testing, ensuring every bite delivers that signature wok smokiness without sacrificing simplicity.
What sets this recipe apart is the sauce—a foolproof blend of soy sauce, ginger, garlic, and a touch of honey that creates depth without overpowering the natural flavors.
The beef is prepped with a quick marinade that tenderizes while adding subtle sweetness, and the spinach is added at the perfect moment to maintain its vibrant color and crisp-tender texture.
This isn't just another stir fry; it's a complete dish that pairs beautifully with steamed rice or noodles for a satisfying meal in record time.
The result is a dish that's restaurant-quality at home, with perfectly seared beef strips, wilted yet still crisp spinach, and a sauce that clings to every bite. The aroma alone—smoky, garlicky, and slightly sweet—will have everyone gathering around the table.
Whether you're cooking for a weeknight dinner or meal prepping for the week, this recipe delivers flavor, speed, and that unmistakable wok-house crunch.
For those without a wok, don't worry—this recipe adapts seamlessly to a cast-iron skillet or even an air fryer, ensuring you get the same high-heat results regardless of your tools.
The instructions walk you through every step, from prepping the beef to balancing the sauce, so you can achieve professional results with confidence. Let's get cooking!
Ingredients for beef and spinach stir fry
Restaurant-quality wok heat starts with these 15 ingredients—tender beef, vibrant greens, and a sauce that balances sweet, spicy, and umami.
| Ingredient | Amount | Notes |
|---|---|---|
| Flank Steak 🥩 | 1 ¼ lb | Thinly sliced against grain |
| Baby Spinach 🌿 | 8 oz | Fresh, vibrant leaves |
| Low-Sodium Soy Sauce 🍶 | ½ cup | High-quality, dark variety |
| Fresh Ginger 🧄 | 1 ½ tbsp | Finely grated, aromatic |
| Garlic Cloves 🧄 | 4 cloves | Minced, fresh preferred |
| Honey 🍯 | 1 ½ tbsp | Pure, light variety |
| Sesame Oil 🫒 | 1 tbsp | Toasted, for aroma |
| Vegetable Oil 🫒 | 2 tbsp | High smoke point |
| Red Pepper Flakes 🌶️ | ½ tsp | Adjust for heat preference |
| Cornstarch 🌾 | 1 tbsp | For tenderizing beef |
| Sesame Seeds 🌰 | 1 tbsp | Toasted, for garnish |
| Green Onions 🧅 | 2 whole | Thinly sliced, for garnish |
| White Wine 🍷 | ¼ cup | Dry, for deglazing |
| Salt 🧂 | 1 tsp | Diamond Crystal preferred |
| Black Pepper 🌶️ | ½ tsp | Freshly ground |
The beef is everything here, so flank steak is your best bet—it's lean but tender when sliced thin. Look for grass-fed if you're at a specialty butcher, or the regular supermarket cut works fine. Slice it against the grain for that signature stir-fry texture. Costco or Whole Foods often have pre-sliced flank steak, which saves time. If you're buying a whole cut, ask the butcher to slice it thinly for you—thick slices won't sear properly. Baby spinach is ideal because it wilts quickly without turning mushy, but regular spinach works too if that's what you've got.
No soy sauce? Coconut aminos is a great 1:1 swap, though it's slightly sweeter. Fresh ginger and garlic are non-negotiable for that authentic wok-house flavor, but dried powdered versions work in a pinch (use half the amount). The honey adds depth, so don't skip it—Manuka honey if you're feeling fancy, but regular works fine. Sesame oil is for aroma, not cooking—add it at the end. If you're avoiding gluten, use tamari instead of soy sauce. The cornstarch is key for tenderizing the beef—marinate it for at least 30 minutes (or overnight for extra tenderness).
Prep the beef first—it needs time to marinate. Store any unused marinade in the fridge for up to 3 days, but don't reuse it for cooking. Spinach keeps for 5 days in the fridge, but wilts faster as it ages. The sauce components (soy, ginger, garlic, honey) can be pre-mixed and stored for 1 week in an airtight container. For meal prep, cook the beef and sauce separately, then toss with spinach right before serving to keep it crisp. Leftovers reheat beautifully—just add a splash of water or soy sauce to loosen the sauce.
Why You'll Love This Recipe
- One-Pan Magic: I swear by this for nights when I’m too tired to load the dishwasher. Thinly sliced flank steak and spinach hit the same pan—no extra bowls, no fuss. The soy sauce and ginger caramelize right there while you chop garlic, and suddenly, dinner’s done.
- Umami Bomb: That first bite? The garlic sizzles, the ginger adds a bright kick, and the low-sodium soy sauce ties it all together without tasting flat. The spinach wilts just enough to soak up all the savory goodness—like a flavor party in your mouth.
- Meal Prep MVP: Between us, this is my go-to for busy weeks. Cook a double batch, store it in the fridge, and reheat it for lunches all week—still tastes fresh, not sad. (Yes, even on a Tuesday night.) The steak stays tender, and the spinach doesn’t turn to mush if you reheat it gently.
- Budget Steakhouse Trick: Flank steak’s affordable, but it feels like a fancy dinner. You get that restaurant-quality wok-hei flavor without the markup. Leftovers? Even better—they’re perfect for quick lunches or tossing into grain bowls later. Honestly, it’s the kind of dish that makes you wonder why you ever ordered takeout.
Step-by-step instructions for wok-hot soy ginger crunch
Here's how to transform simple ingredients into a restaurant-quality stir fry that delivers bold flavors and perfect texture in just 15 minutes.
Prep the Flank Steak for Maximum Tenderness
Start by slicing the 1.25 lb flank steak thinly against the grain into ¼-inch thick strips. This is critical—cutting against the grain ensures each bite is fork-tender. Place the sliced steak in a bowl and add the 1 tbsp cornstarch, 1 tsp salt, and 0.5 tsp black pepper. Toss gently but thoroughly to coat each piece evenly. Let it marinate for 15 minutes while you prep the rest.
This cornstarch coating creates a delicate crust that locks in juices while developing a beautiful caramelized exterior. Don't skip this step—it's what transforms tough flank steak into silky, melt-in-your-mouth bites. If you're short on time, even 5 minutes of tossing will help, but 15 gives you the best results.
Build the Flavor Base with Ginger, Garlic, and Honey
Heat the 2 tbsp vegetable oil in a wok or large skillet over medium-high heat until shimmering. Add the 4 minced garlic cloves and 1.5 tbsp finely grated fresh ginger, cooking for 30 seconds until fragrant but not browned. Immediately add the 1.5 tbsp honey and stir vigorously for 1 minute—you'll see the mixture bubble and caramelize slightly.
Here's where the magic happens: the honey creates a glossy glaze that'll coat every piece of beef and spinach. If you notice the mixture darkening too quickly, reduce heat to medium—you want caramelized depth, not burnt bits. This aromatic base forms the flavor foundation for your entire dish, so don't rush this step.
Cook the Beef to Perfect Doneness
Working in batches if needed, add the cornstarch-coated steak to the wok in a single layer. Let it sear undisturbed for 1-2 minutes until the edges develop a golden crust. Stir briefly, then immediately add the 0.5 cup low-sodium soy sauce and 0.25 cup white wine. Scrape up any browned bits from the bottom—these contain concentrated flavor.
The wine will sizzle dramatically as it hits the hot pan, but don't be tempted to add more. Let it reduce by half (about 1 minute) before adding the 8 oz baby spinach. You'll know the beef is ready when it's 80% cooked—it'll finish cooking when the spinach wilts. Overcooking here makes the steak tough, so watch carefully.
Wilt the Spinach and Finish with Sesame Crunch
Add the spinach in batches, stirring constantly until just wilted (about 1 minute). The residual heat from the beef will finish cooking it perfectly. Immediately turn off the heat and stir in the 1 tbsp sesame oil and 0.5 tsp red pepper flakes. The sesame oil adds nutty aroma while the red pepper flakes introduce subtle heat that brightens all the flavors.
Here's the thing—spinach wilts in seconds, so constant stirring is essential. If you let it sit too long, it'll turn to mush. The moment it's just wilted but still vibrant green, it's ready. Taste and adjust seasoning—you might need a splash more soy sauce or a pinch of salt to balance the flavors.
Plate with Garnishes for Restaurant-Quality Presentation
Divide the stir fry among 4 plates, drizzling each portion with any pan juices. Garnish each serving with 1 tbsp toasted sesame seeds and ½ of the 2 thinly sliced green onions. The sesame seeds add textural contrast while the green onions provide freshness that cuts through the rich flavors. Serve immediately while the spinach is still vibrant and the beef retains its perfect doneness.
This dish tastes best right out of the wok when everything is piping hot. The contrast between the silky beef, tender spinach, and crunchy sesame seeds creates an experience that's both comforting and exciting. If you have leftovers, they reheat beautifully—just add a splash of water or soy sauce to prevent drying out.
Pro Tips For Making Beef And Spinach Stir Fry
- Slice Against the Grain: Flank steak’s tough fibers run in one direction—cutting perpendicular to them (about ¼-inch thick) turns chewy meat into tender strips. I used to ignore this and ended up with rubbery bites. Trust me, the knife work pays off.
- Wilt Spinach Last: Baby spinach wilts faster than you think—add it to the pan only in the final 30 seconds. If you toss it in too early, you’ll end up with a sad, limp pile instead of bright, crisp leaves that hold their shape.
- Salt the Steak Early: Season the flank steak with soy sauce, ginger, and garlic before searing, not after. The marinade needs 10 minutes to penetrate—rushing this step means flavor stuck on the surface and dry meat inside. (Yes, even if you’re impatient like me.)
- Use a Splatter Screen: Searing garlic and ginger releases oil that’ll fly everywhere—especially when you’re flipping hot steak. A cheap splatter screen (or even foil crumpled into a bowl) keeps your stove clean. I learned this the hard way after scrubbing grease off my cabinets for an hour.
Creative variations of this dish
Spicy Thai Twist
Transform this classic stir fry into a Thai-inspired dish by adding 1 tbsp fish sauce and 1 tsp palm sugar to the soy-honey mixture. Swap the red pepper flakes for 1 tsp chili paste (like Maesri Sriracha) and finish with 1 tbsp crushed peanuts and lime wedges for serving.
The fish sauce deepens the umami, while the palm sugar balances the heat—trust me, this Thai-inspired version is a game-changer. 🌶️
Creamy Mushroom Fusion
For a richer, creamier take, stir in ½ cup sliced shiitake mushrooms with the beef and add 2 tbsp coconut milk to the sauce at the end. Toss in 1 tsp white miso paste for depth, then garnish with toasted coconut flakes instead of sesame seeds.
The mushrooms add earthiness, while the coconut milk creates a velvety texture that pairs perfectly with the spinach. This fusion style works surprisingly well with the original flavors. 🍄
Sweet Chili Glaze
Swap the soy-honey sauce for a sweet chili glaze by combining ½ cup sweet chili sauce (like Maesri) with 1 tbsp rice vinegar and 1 tsp sriracha. Cook the beef in batches, then toss with the glaze and spinach.
Finish with thinly sliced red onions and extra chili flakes for heat. This version has a sticky, slightly sweet profile that's addictive—perfect for those who love bold, tangy flavors. 🔥
Teriyaki Beef & Spinach
For a Japanese-inspired twist, replace the soy-ginger sauce with ¼ cup teriyaki sauce (like Kikkoman) mixed with 1 tsp grated ginger and 1 tsp honey. Add 1 tbsp mirin to the sauce for extra sweetness and depth.
Garnish with extra sesame seeds and thinly sliced scallions. The teriyaki adds a glossy, slightly sweet coating that clings beautifully to the beef and spinach. This version feels like a cozy, restaurant-style takeout dish. 🍜
Garlic Butter Upgrade
Elevate this stir fry with a garlic butter finish—after cooking the beef and spinach, remove the pan from heat and stir in 2 tbsp melted butter and 2 extra minced garlic cloves. The rich butter adds a luxurious touch that balances the soy flavors.
Garnish with extra sesame seeds and crispy fried shallots for crunch. This upgrade turns a simple stir fry into something restaurant-worthy in seconds. 🧈
Meal Prep Adaptation
For meal prep, cook the beef and sauce separately, then store them in airtight containers for up to 3 days. When ready to eat, reheat the beef in a pan with a splash of water, then toss with fresh spinach and extra sesame oil.
This keeps the spinach crisp-tender and prevents sogginess. Double the recipe and freeze half for later—just thaw and reheat with fresh spinach. Perfect for busy weeknights! ⏰
Nutrition facts
Frequently asked questions
Can I use regular spinach instead of baby spinach?
Yes, but regular spinach will wilt faster and may turn slightly more mushy. Use 10 oz instead of 8 oz baby spinach, and add it to the wok just before serving to maintain its texture. Baby spinach holds up better to high-heat cooking, but regular spinach still works if that's what you have.
What's the best cut of beef for stir fry?
Flank steak is ideal because it's lean yet tender when sliced thinly against the grain. Other great options include sirloin, ribeye, or even pre-sliced stir-fry strips from the grocery store. Avoid tougher cuts like chuck—they won't tenderize properly in the short cooking time.
How do I prevent the beef from getting tough?
Slice the beef thinly against the grain and marinate with cornstarch for at least 15 minutes before cooking. High heat and quick cooking are key—don't overcrowd the pan, and cook in batches if needed. The cornstarch creates a protective crust that locks in juices while developing flavor.
Can I make this ahead of time?
For meal prep, cook the beef and sauce separately, then store them in airtight containers for up to 3 days. Reheat the beef with a splash of water, then toss with fresh spinach and sesame oil right before serving. This keeps the spinach crisp-tender and prevents sogginess.
What if I don't have a wok?
A heavy-bottomed skillet or cast-iron pan works perfectly! The key is maintaining high heat—preheat your pan until it's smoking hot before adding oil. Stir-frying requires constant motion, so keep your ingredients prepped and ready to go for quick cooking.
