Instructions

  1. Marinate the beef: combine soy sauce, sesame oil, garlic, and ginger in a bowl. Add flank steak strips. Toss to coat. Marinate 20 minutes at room temperature or up to 4 hours refrigerated. Start brown rice simultaneously: 1.5 cups dry + 3.25 cups water, bring to boil, cover, lowest heat, timer 40 minutes.
  2. Make the sauce: whisk soy sauce, oyster sauce, sesame oil, honey, cornstarch, beef broth, garlic, and ginger until fully combined. The cornstarch is key โ€” it gelatinises when the sauce hits a hot pan, creating a stable coating that holds 4 days refrigerated without separating. Set aside in a small jar.
  3. Blanch broccoli: bring a large pot of salted water to a rolling boil. Add broccoli florets. Cook exactly 2 minutes โ€” bright green with a slight bite. Drain immediately and transfer to an ice bath (bowl of cold water + ice). This stops the cooking and locks in the green colour. Drain again and dry thoroughly on a clean kitchen towel. Broccoli stored wet gets slimy by day 2.
  4. Sear the beef: heat a cast iron or stainless steel skillet over high heat until very hot. Add 1 tbsp oil. Remove beef from marinade and pat dry with paper towels โ€” surface moisture prevents searing and causes steaming instead. Cook in batches (don't crowd the pan โ€” crowding drops the temperature and causes steaming). Sear 1โ€“2 minutes per side. Target internal temperature: 160ยฐF (71ยฐC) for stir-fry strips. Rest 3 minutes before portioning.
  5. Verify temperature: insert thermometer into the thickest strip. Must read 160ยฐF (71ยฐC). Salmonella and E. coli O157:H7 are the relevant bacterial risks in beef. For intact steaks, 145ยฐF with rest is sufficient โ€” but thinly cut strips expose more internal surface area during slicing, so 160ยฐF is the safer target for this preparation.
  6. Cool everything: spread beef and broccoli on separate trays. Spread rice on a wide pan. Cool 20 minutes before containerising โ€” hot food sealed in containers creates condensation that makes rice gummy and broccoli wet.
  7. Portion into 5 containers: ยพ cup cooked brown rice and 4โ€“5oz beef strips per container (these can share one compartment). Broccoli in a separate small container or the second compartment. Sauce in one shared jar โ€” it serves all 5 meals. Label with date. Refrigerate at 40ยฐF (4ยฐC). Per USDA FoodKeeper: cooked beef 4 days, cooked rice 4โ€“6 days, cooked broccoli 4โ€“5 days.
  8. To reheat: add beef to a cold skillet, medium heat, 2 minutes. Add broccoli, 45 seconds. Pour sauce over, toss 30 seconds until it coats everything. Off heat immediately. Total reheat time: 3 minutes 15 seconds. This produces results noticeably better than any microwave method. If microwaving is required: add 2 tbsp water, cover vented, 70% power, 90 seconds.

Why the Separate Storage Rule Matters

Broccoli stored in contact with soy and oyster sauce loses its green colour within 24 hours โ€” the acid and salt convert chlorophyll to pheophytin, a khaki compound. Beef stored in sauce loses moisture through osmosis (the high salt concentration outside the muscle draws water out), producing dry, salty day-4 beef. Separate storage maintains both components at day-1 quality through day 4.

The sauce jar serves the whole week. At reheating, add it fresh to a hot skillet โ€” the cornstarch re-gelatinises immediately and coats everything evenly in 30 seconds. This is the technique that separates good meal prep beef and broccoli from the grey, soggy version.

Variations

The same flank steak preparation supports five sauce profiles: Classic Chinese-American (this recipe), Korean bulgogi-style (gochujang + sesame + soy + a tbsp of pear juice), teriyaki (soy + honey + mirin), garlic-ginger light (soy + lots of garlic + ginger + broth, no oyster sauce), spicy Szechuan (soy + chili oil + Szechuan peppercorn + rice vinegar). Change the jar on Sunday and the meal feels entirely different across the week.

๐Ÿ›’Our Top Container Pick
40pc Set Glass Food Storage Containers & Bowls with Airtight Lids - Leakproof BPA-Free Meal Prep Airtight Stackable Lunc
40pc Set Glass Food Storage Containers & Bowls with Airtight Lids - Leakproof BPA-Free Meal Prep Airtight Stackable Lunc
โ˜…โ˜…โ˜…โ˜…โ˜… 4.5 (582 reviews)
View on Amazon
๐Ÿ›’Essential Meal Prep Tool
Famiware Star 12-Piece Stoneware Dinnerware Sets for 4, Reactive Glaze Plates and Bowls, Modern Rustic Dishes for Everyd
Famiware Star 12-Piece Stoneware Dinnerware Sets for 4, Reactive Glaze Plates and Bowls, Modern Rustic Dishes for Everyd
โ˜…โ˜…โ˜…โ˜…โ˜… 4.6 (2,058 reviews)
View on Amazon

Storage Reference (USDA FoodKeeper)

Cooked beef 4 days at 40ยฐF (4ยฐC), 3 months frozen. Cooked brown rice 4โ€“6 days. Cooked broccoli 4โ€“5 days. Sauce (cornstarch-based) 5 days refrigerated. To freeze: portion beef into individual bags, freeze within 48 hours, thaw overnight in refrigerator. Broccoli does not freeze well after blanching โ€” make fresh if extending to a freezer batch.

Beef Cut Cost Comparison

Flank steak at $7โ€“$9/lb yields approximately 5oz per serving after cooking loss (20% moisture loss). At $8/lb average for 1.5 lbs: $12 total for 5 servings = $2.40 from beef alone. Add rice ($0.13), broccoli ($0.44), sauce ($0.13): total $3.10 per container. The $2.10 figure uses the lower end of flank steak pricing โ€” achievable at Walmart or Aldi where it runs $7โ€“$7.50/lb.

Ground beef 90/10 at $5.99/lb for 1.5 lbs = $8.99 for 5 servings = $1.80 from beef. Total container cost approximately $2.50 with ground beef โ€” paradoxically slightly more expensive than flank because ground beef has more fat to render off, meaning more weight loss during cooking and fewer net servings per pound.

Freezing This Recipe

Beef freezes well โ€” portion into individual servings in zip-lock bags, press flat, freeze within 48 hours of cooking. Per USDA FoodKeeper: cooked beef 3 months frozen. Thaw overnight in the refrigerator. Do not freeze blanched broccoli from this recipe โ€” it becomes mushy after thawing. Make fresh broccoli for any frozen beef portions. The sauce jar also freezes well โ€” freeze in ice cube trays and transfer to a bag once solid. Each cube = approximately 1 serving of sauce.

๐Ÿ›’Recommended Product
The Protein Meal Prep Plan: 30 Weekly Plans + 180 Recipes to Eat Better, Stress Less, and Save Money (Packed with Fiber
The Protein Meal Prep Plan: 30 Weekly Plans + 180 Recipes to Eat Better, Stress Less, and Save Money (Packed with Fiber
View on Amazon