This High Protein Beef Stir Fry is a quick, macro-friendly dinner loaded with tender beef and colorful vegetables. Ready in 30 minutes!
Ingredients
Instructions
Start by prepping all your ingredients. This is crucial for a stir fry because the cooking happens fast. Thinly slice the flank steak against the grain into bite-sized strips about 1/4-inch thick. Slicing against the grain ensures the meat stays tender, not chewy. In a bowl, combine the sliced beef with 2 tablespoons of low-sodium soy sauce, 1 tablespoon of cornstarch, and 1 tablespoon of sesame oil. Toss well to coat every strip. The cornstarch helps create a velvety texture and helps the sauce cling to the meat. Let it marinate while you prepare the vegetables – at least 10 minutes. Meanwhile, wash and slice the red bell pepper into thin strips, trim the snow peas, julienne or ribbon the carrots (use a vegetable peeler for pretty ribbons), cut the broccoli into small florets, and slice the green onions. Mince the garlic and grate the ginger. In a small bowl, whisk together all the sauce ingredients: 3 tablespoons soy sauce, 2 tablespoons hoisin, 1 tablespoon rice vinegar, 1 teaspoon sriracha (if using), and 1 teaspoon sesame oil. In a separate tiny bowl, mix 1 tablespoon cornstarch with 2 tablespoons water to make a slurry – this will thicken the sauce at the end.

Heat a large wok or a heavy-bottomed skillet (cast iron works great) over high heat until it’s smoking hot. Stir fry needs high heat to sear the meat quickly without steaming. Add 1 tablespoon of avocado oil (or any high-smoke-point oil) and swirl to coat. Carefully add the marinated beef in a single layer – do not overcrowd the pan; cook in batches if necessary. Let the beef sear undisturbed for about 1 minute to develop a deep brown crust. Then, using a spatula or tongs, toss the beef and cook for another 1–2 minutes until just cooked through but still tender. The internal temperature should reach 135°F (57°C) for medium-rare. Transfer the cooked beef to a clean plate and set aside. The beef will finish cooking later when added back to the sauce, so avoid overcooking now.

Reduce the heat to medium-high and add the remaining 1 tablespoon of oil to the wok. Add the minced garlic and grated ginger, stirring constantly for about 15 seconds until fragrant – be careful not to burn them. Immediately add the broccoli florets and carrot ribbons. Stir fry for 2 minutes, tossing frequently. The broccoli should turn bright green and start to become tender-crisp. Then add the red bell pepper strips and snow peas. Continue stir frying for another 2 minutes. The vegetables should remain vibrant and crunchy – they will soften slightly but should still have a bite. If the pan gets too dry, add a splash of water or a little more oil. The sizzling sound is a good indicator of proper heat.

Return the cooked beef (and any accumulated juices) to the wok with the vegetables. Pour the prepared sauce over everything and toss well to combine. Let the sauce bubble and reduce for about 1 minute, coating all the ingredients. Then, give the cornstarch slurry a quick stir (it settles) and drizzle it into the wok while stirring continuously. The sauce will thicken almost immediately, becoming glossy and clinging to the beef and vegetables. If it’s too thick, add a splash of water; if too thin, let it cook a little longer. Taste and adjust seasoning – you can add a pinch of red pepper flakes for heat or a squeeze of lime for brightness. Finally, toss in the sliced green onions and cook for 30 seconds more. Remove from heat.

Serve immediately over steamed rice, cauliflower rice, or noodles. Garnish with a sprinkle of sesame seeds and extra green onions if desired. The dish is best fresh, but leftovers can be stored in an airtight container in the refrigerator for up to 3 days. To reheat, use a hot skillet or microwave – add a splash of water to restore the sauce’s consistency.
For best results
- Slicing the beef against the grain is absolutely critical for tenderness. Look at the direction of the muscle fibers – they run in long lines. Slice perpendicular to those lines (across the grain) to shorten the fibers, making each bite easier to chew. If you slice with the grain, the meat will be tough and stringy, no matter how good the marinade is. A sharp knife is your best friend here; partially freezing the steak for 15-20 minutes makes it much easier to slice thinly and uniformly. Also, slice the beef into uniform strips so they cook evenly – thicker pieces will be overdone by the time thinner ones are ready.
- High heat is non-negotiable for a proper stir fry. If your pan isn't hot enough, the beef will steam instead of sear, losing that beautiful caramelized crust. You want the oil to shimmer and almost smoke before adding the meat. A wok is ideal because its shape allows for even high-heat distribution and easy tossing, but a large cast-iron or stainless steel skillet works well too. Avoid non-stick pans at high heat as they can release fumes. Work in batches if needed – overcrowding the pan lowers the temperature and causes the food to boil in its own juices. Cook the meat in a single layer, then remove it before cooking the vegetables.
- Prep everything before you start cooking – this is the 'mise en place' principle. Stir fry moves fast, and you won't have time to chop an onion while the garlic is burning. Have all your vegetables sliced, sauce mixed, and slurry ready. The actual cooking time is only about 5-7 minutes once you start, so organization is key. Use small bowls to hold each component. This also helps you avoid forgetting an ingredient. Trust me, there's nothing worse than realizing you left out the ginger after the dish is done.
- For the most tender beef, avoid overcooking. Flank steak is lean and can become tough if cooked past medium. Aim for an internal temperature of 130-135°F (54-57°C) when you remove it from the pan, as carryover cooking will raise it a few degrees. If you're not using a thermometer, look for the beef to be no longer pink on the outside but still slightly pink in the center when you cut into a piece. When you add it back to the sauce, it will cook just a bit more, so err on the side of undercooking initially.
- The sauce can be customized to your taste. For a sweeter stir fry, add an extra tablespoon of hoisin or a teaspoon of honey. For more heat, double the sriracha or add a pinch of red pepper flakes. If you're watching sodium, use low-sodium soy sauce and tamari (gluten-free) works perfectly. The cornstarch slurry is key for that restaurant-style glossy coating – don't skip it. If you prefer a thicker sauce, use a bit more cornstarch, but remember that the sauce will continue to thicken as it cools.
- Vegetable variation is welcome, but keep the total volume about the same (around 4 cups). Broccoli, bell peppers, snow peas, and carrots are classic, but you can substitute snap peas, bok choy, mushrooms, or baby corn. Just be mindful of cooking times – add denser vegetables like broccoli and carrots first, then quicker-cooking ones like snow peas and bell peppers. This ensures everything is tender-crisp at the same time. Avoid watery vegetables like zucchini unless you sauté them separately first to remove excess moisture.
Variations
- For a lower-carb version, swap the flank steak for chicken breast or extra-firm tofu. Slice chicken breast thinly and marinate similarly, or press and cube tofu, then pan-fry until golden before stir frying. Serve over cauliflower rice or zucchini noodles for a keto-friendly meal. The sauce pairs well with any protein, and the vegetables keep the dish colorful and nutrient-dense.
- Make it spicy Korean-style by adding 1 tablespoon of gochujang (Korean chili paste) to the sauce and using a teaspoon of toasted sesame oil. Garnish with toasted sesame seeds and a drizzle of sesame oil. The gochujang adds depth and a subtle sweetness that complements the beef beautifully. You can also add a handful of kimchi for extra tang and probiotics.
- For a Thai-inspired twist, use fish sauce instead of soy sauce (or half and half), add a tablespoon of brown sugar, and throw in some Thai basil leaves at the end. The sauce becomes more savory and aromatic. Serve with jasmine rice and a wedge of lime. You can also add sliced red chili for extra heat and a squeeze of lime juice just before serving.
- If you're meal-prepping, this stir fry is excellent for the week. Cook the beef and vegetables separately and store them in the fridge. Reheat in a hot skillet and toss with the sauce just before serving to keep the vegetables crunchy. You can also prep the sauce and store it in a jar for up to a week. For a complete meal prep, divide into containers with cooked rice or quinoa and portion out the stir fry.
- For a vegetarian option, replace the beef with a plant-based protein like seitan, tempeh, or even a can of chickpeas (drained and patted dry). The marinade and sauce work perfectly with these alternatives. Cook the protein similarly – sear until golden and crispy. Add extra mushrooms like shiitake or oyster for an umami boost. This version is still high in protein and full of flavor.
Nutrition
- Calories385 kcal
- Total Fat18g
- Saturated Fat4g
- Cholesterol75mg
- Sodium820mg
- Total Carbohydrates18g
- Dietary Fiber4g
- Sugars8g
- Protein38g
