In a small bowl, combine 1 1/2 teaspoons chipotle chili pepper powder, 1 teaspoon cumin, 1 teaspoon garlic powder, 1/2 teaspoon onion powder, 1/2 teaspoon smoked paprika, 1/4 teaspoon salt, and 1/8 teaspoon ground black pepper. Reserve 1 1/2 teaspoons of this seasoning for the vegetables.: The air will fill with warm, smoky notes as the spices mingle, and you will notice the toasted aroma of the cumin and smoked paprika, which signals a deep flavor foundation. Grinding or whisking these together ensures even distribution so each bite tastes balanced. A common mistake is adding the spices directly to the meat while clumpy, which can lead to uneven patches of heat, so make sure the mix is uniform and free of lumps.
In a large ziplock bag, combine 2 tablespoons of the 3 tablespoons olive oil, 3 tablespoons fresh lime juice, 1 teaspoon low sodium soy sauce, and the fajita seasoning that has not been reserved for the vegetables. Add 1 1/2 pounds flank or skirt steak and press all of the air from the bag before sealing it to allow the flavors to meld with the steak. Allow it to sit while you prepare the vegetables.: That reserved portion will give the peppers and onions a direct line of flavor, preventing them from tasting bland next to the steak. By spreading the seasoning between meat and vegetables, you create continuity across the bowl. Avoid the trap of overseasoning the vegetables at this stage, which can mask their natural sweetness; a delicate hand keeps the balance.
Heat the remaining olive oil in a 12-inch skillet over medium-high heat. Add 1 cup sliced red onion and allow to cook for 3-4 minutes or until softened and fragrant. Add 3 cups sliced bell peppers of any color and sprinkle with the reserved 1 1/2 teaspoons of fajita seasoning. If you like the peppers with a little crunch, cook them for about 2-3 minutes. And if you like them softer, cook them for about 5-6 minutes. Remove the peppers and onions from the skillet and reserve on a plate or in a bowl.: You will smell the citrus brightening the marinade immediately, which helps tenderize and flavor the meat. Liquids disperse the spices so they cling to the steak, promoting even browning in the skillet. One mistake is using too little oil, which can prevent good contact between seasoning and meat, so be sure the steak is well coated.
Melt 1-2 tablespoons unsalted butter on the same skillet and add the steak. Cook for 3-4 minutes for medium-rare, or longer depending on how you like your steak. Flip the steak and cook for another 3-4 minutes. Once finished, transfer the steak to a cutting board and cover with foil. Let it rest for 5 minutes before slicing it into strips.: Massaging the bag helps the marinade penetrate the surface, and the lime juice will start to slightly tenderize the exterior. You should notice the meat taking on a glossy sheen, which is a visual cue that it is ready to absorb heat evenly. Leaving the steak in the marinade for at least several minutes is helpful, but avoid excessively long marinating times with high acid, which can alter texture into an undesirable mushiness.
Fill bowls with 2 cups cooked white or brown rice and top with the steak, onions, and peppers.: Give yourself a moment here to slice and organize, because prepping first prevents rushing the cooking stage. Preparing the vegetables while the steak rests keeps the workflow efficient and ensures everything hits the skillet at the right time. A common misstep is multitasking too much, which can leave the pan cold when you start cooking and diminish the sear.
Top with your desired topping and enjoy immediately.: The oil will shimmer when hot and deliver an immediate sizzle when food hits the pan, signaling the right temperature for good caramelization. A properly heated pan creates a Maillard crust on the vegetables and later on the steak, which adds complexity. Do not crowd the pan, as that will steam ingredients instead of browning them.
Add 1 cup sliced red onion and allow to cook for 3 to 4 minutes or until softened and fragrant: You will smell sweetness building as the onion softens, and the edges will start to show golden color. Softened onion provides a tender, aromatic base for the peppers, and cooking them first helps marry flavors. Avoid burning by adjusting the heat; scorched onion tastes bitter and can overwhelm the dish.
Add 3 cups sliced bell peppers of any color and sprinkle with the reserved 1 1/2 teaspoons of fajita seasoning: The peppers will hiss and release a bright vegetal aroma, and the seasoning will bloom, coating each strip. For a crunchier texture, cook for about 2 to 3 minutes, and for softer peppers cook about 5 to 6 minutes, giving you control over bite. Overcooking can lead to mushy peppers, so keep an eye on color and texture.
Remove the peppers and onions from the skillet and reserve on a plate or in a bowl: Letting the vegetables rest off heat prevents them from continuing to cook in the hot pan and keeps their texture intact. The resting step also clears the pan for a targeted steak sear. A common mistake is leaving them in the hot skillet where residual heat will over soften them.
Melt 1 to 2 tablespoons unsalted butter on the same skillet and add the steak: The butter will brown slightly and add a nutty aroma as the steak hits the pan, contributing a glossy finish to the sear. Hearing the intense sizzle is your cue that the pan is hot enough to form an appealing crust. Avoid flipping too often, which prevents a proper sear and reduces the flavorful crust development.
Cook for 3 to 4 minutes for medium rare, or longer depending on how you like your steak: You will notice a deepening of the crust color and a concentrated meaty smell as the steak cooks; that crust traps juices, keeping the interior tender. Use touch or a thermometer to check doneness, because visual cues can be deceiving. Overcooking is the most frequent error here, which turns a juicy flank or skirt into a tough bite, so err on the side of slightly underdone if you plan to rest and slice thinly.
Flip the steak and cook for another 3 to 4 minutes: The second side will develop its own crust and finish the cooking process. When both sides have good color, you will start to smell caramelized meat and fat, a sign that Maillard reactions are at work. Resist poking the meat frequently, which releases juices and dries the steak.
Once finished, transfer the steak to a cutting board and cover with foil: Resting for about 5 minutes lets the juices redistribute, so the meat stays moist when sliced. You will see the steak relax and the carryover heat gently finish the interior. Cutting too soon causes juices to spill onto the board, leaving the slices dryer than intended.
Let it rest for 5 minutes before slicing it into strips: Rested meat slices more cleanly and reveals tender, evenly colored interiors. Use a sharp knife to cut across the grain into thin strips for the most tender bite. Slicing with the grain is a common novice mistake that yields chewier pieces.
Fill bowls with 2 cups cooked white or brown rice and top with the steak, onions, and peppers: The warm rice soaks up steak juices and provides a neutral canvas that amplifies the seasoned components. Layering this way keeps textures distinct while allowing flavors to mingle when you eat. Avoid cold rice straight from the fridge unless you intend to reheat it well, as cool rice will mute the overall warmth of the bowl.
Top with your desired topping and enjoy immediately: Fresh toppings like avocado slices or chopped cilantro bring cooling and bright notes, balancing the smoky punch of the steak. Serving immediately preserves the contrast between warm components and cool garnishes. Letting the bowls sit too long can make the rice soggy and the vegetables lose their vibrancy.