Here’s my go-to stir fry chicken recipe, with tender pieces of chicken, fresh vegetables, and a simple sauce that brings everything together, all served over a bed of fluffy rice.
This stir fry has become my family’s favorite weeknight dinner. I often make extra because my kids always ask for seconds, and the leftovers make perfect lunch boxes the next day. Nothing better than a home-cooked meal that everyone enjoys, right?

Why You’ll Love This Chicken Stir Fry
- Quick preparation – Ready in just 30 minutes, this stir fry is perfect for busy weeknights when you need a satisfying meal without spending hours in the kitchen.
- Healthy and nutritious – Packed with colorful vegetables like broccoli, snow peas, and bean sprouts, plus lean protein from chicken thighs, this dish delivers a good balance of nutrients in every bite.
- Customizable recipe – You can easily swap in different vegetables based on what you have in your fridge, or adjust the spice level to suit your taste preferences.
- Restaurant-quality flavors – The combination of fresh ginger, garlic, and authentic Asian sauces creates that takeout-style taste you love, but made fresh in your own kitchen.
What Kind of Chicken Should I Use?
For stir-frying, chicken thighs are actually a better choice than chicken breasts because they stay juicy and tender even with high-heat cooking. While the recipe calls for thighs, you could substitute chicken breasts if you prefer – just be extra careful not to overcook them since they can dry out quickly. The key to great stir-fry chicken is cutting the pieces into thin, even strips (about 1/4 inch thick) so they cook quickly and evenly. If you’re having trouble getting clean cuts, try putting your chicken in the freezer for about 15 minutes first – this firms up the meat and makes it easier to slice.

Options for Substitutions
This stir fry recipe is super adaptable and you can make several swaps based on what you have in your kitchen:
- Canola oil: Any neutral-flavored oil works well here – try vegetable oil, grapeseed oil, or even light olive oil. Avoid strongly flavored oils like extra virgin olive oil or sesame oil (though a dash of sesame oil at the end is nice for flavor).
- Chicken thighs: You can easily use chicken breast instead, just be careful not to overcook it. Tofu, shrimp, or sliced beef would also work great in this recipe.
- Fish sauce: If you don’t have fish sauce, use soy sauce instead. The flavor will be different but still good. Use about 2 teaspoons of soy sauce to replace 1 tablespoon of fish sauce.
- Vegetables: The beauty of stir fry is that you can swap vegetables based on what you have. Bell peppers, carrots, mushrooms, or snap peas all work well. Just make sure to cut them in similar sizes for even cooking.
- Sambal oelek: Any Asian chili sauce works here – sriracha, gochujang, or even red pepper flakes can add that spicy kick. Start with less and add more to taste.
- Bean sprouts: These add a nice crunch, but you can skip them or replace with thinly sliced cabbage or julienned carrots.
- Jasmine rice: Any type of rice works fine – brown rice, basmati, or even cauliflower rice for a low-carb option. Just cook according to package instructions.
Watch Out for These Mistakes While Cooking
The biggest mistake when making stir-fry is overcrowding the pan, which causes the ingredients to steam instead of getting that perfect crispy sear – work in batches if needed and keep your pan hot. Another common error is not having all ingredients prepped and ready before you start cooking, as stir-frying moves quickly and you won’t have time to chop vegetables once you begin. To get the best results, make sure your chicken strips are cut uniformly in size so they cook evenly, and remember to let them sear undisturbed for 1-2 minutes before stirring. For perfectly cooked vegetables that stay crisp-tender, add them to the pan in order of cooking time – starting with firmer vegetables like broccoli and finishing with quick-cooking items like bean sprouts and basil.

What to Serve With Chicken Stir Fry?
While this stir fry is already a complete meal with protein, veggies, and rice, you can add some simple sides to make dinner even more special. A bowl of egg drop soup makes a great starter, or try some crispy spring rolls for a fun appetizer. If you want to keep things light, serve some quick-pickled cucumbers on the side – just slice them thin and toss with rice vinegar and a pinch of sugar. For extra crunch, put out a bowl of chopped peanuts or cashews so everyone can sprinkle some on top of their stir fry.
Storage Instructions
Keep Fresh: Place your leftover stir fry in an airtight container and pop it in the fridge – it’ll stay good for up to 3 days. I like to store the rice separately from the chicken and veggies to keep everything tasting its best. The flavors actually get better after a day as they meld together!
Meal Prep: This stir fry is perfect for meal prep! You can chop all your veggies and chicken ahead of time and store them separately in the fridge for up to 2 days. When you’re ready to cook, just pull everything out and you’ll have dinner ready in no time.
Reheat: To warm up your leftovers, just pop them in a pan over medium heat for a few minutes, stirring occasionally. You can add a splash of water if needed. For the microwave, heat in 30-second intervals, stirring between each. The veggies might not be as crisp as when freshly made, but the taste will still be great!
| Preparation Time | 10-15 minutes |
| Cooking Time | 15-20 minutes |
| Total Time | 25-35 minutes |
| Level of Difficulty | Medium |
Estimated Nutrition
Estimated nutrition for the whole recipe (without optional ingredients):
- Calories: 600-700
- Protein: 40-45 g
- Fat: 30-35 g
- Carbohydrates: 60-65 g
Ingredients
For the stir-fry:
- 2 tbsp fresh basil
- 1 medium yellow onion (thinly sliced for even cooking)
- 1 tsp sambal oelek
- 1 tbsp fresh lime juice
- 1/2 lb boneless, skinless chicken thighs (cut into 1-inch pieces)
- 1 small broccoli crown (cut into small florets)
- 1 stalk celery
- 1 tbsp oyster sauce
- 1 cup mung bean sprouts
- 1/4 cup canola oil
- 1 tbsp hoisin sauce
- 1 garlic clove (finely minced for flavor)
- 1 tbsp fresh ginger (grated)
- 1 tbsp fish sauce
- 4 oz snow peas
For serving:
- steamed jasmine rice
Step 1: Stir-Fry Chicken and Onion
- 2 tablespoons canola oil (from 1/4 cup canola oil, used in two portions)
- 1 medium yellow onion, sliced thinly after halving
- 1/2 lb boneless, skinless chicken thighs, cut into strips
- 1 tbsp fish sauce
Heat a wok over high heat until very hot.
Add 2 tablespoons of canola oil; when the oil is nearly smoking, add the sliced yellow onion and chicken thigh strips.
Stir-fry quickly, keeping the ingredients moving, until the chicken is lightly browned in spots but not fully cooked through, which should take about 3 minutes.
Add the fish sauce, stir-fry for another 10 seconds to coat the chicken and onion, then transfer the mixture to a medium plate.
Wipe out the wok to remove any browned bits.
Step 2: Stir-Fry Vegetables
- 2 tablespoons canola oil (remaining from 1/4 cup canola oil, used in two portions)
- 1 small broccoli crown, trimmed into 1-inch pieces
- 1 stalk celery, sliced thin
- 4 oz snow peas (1 1/2 cups)
- 1 clove garlic, sliced thin
- 1 tbsp grated fresh ginger
Add the remaining 2 tablespoons canola oil to the cleaned wok and heat over high until shimmering.
Add the broccoli pieces, sliced celery, snow peas, garlic, and grated ginger.
Stir-fry over high heat until the vegetables are crisp-tender, about 3 to 4 minutes.
I always recommend keeping veggies moving in the wok to preserve their color and crunch.
Step 3: Finish Stir-Fry with Sauces and Aromatics
- chicken and onion mixture from Step 1
- vegetables from Step 2
- 1 tsp sambal oelek or Chinese chili-garlic paste
- 1 tbsp hoisin sauce
- 1 tbsp oyster sauce
Return the chicken and onion mixture along with any juices (from Step 1) to the wok with the vegetables.
Add sambal oelek (or chili-garlic paste), hoisin sauce, and oyster sauce.
Stir-fry everything together until the chicken is cooked through and the sauce is nicely distributed, about 3 to 4 minutes longer.
For extra depth, sometimes I drizzle in a little extra oyster sauce if I like things saucy.
Step 4: Add Fresh Herbs, Sprouts, and Finish the Dish
- 1 cup mung bean sprouts
- 2 tbsp fresh basil, shredded
- 1 tbsp lime juice, freshly squeezed
- steamed jasmine rice, to serve
Off the heat, add the mung bean sprouts, shredded basil, and freshly squeezed lime juice.
Toss everything together in the wok until just combined and slightly wilted.
Transfer the finished stir-fry to a serving bowl.
Serve immediately with steamed jasmine rice on the side.
I love to squeeze a little extra lime at the table for a burst of freshness!