These steak fajita bowls are everything you want in a healthy, satisfying meal — bold flavor, vibrant colors, and a perfect balance of protein, healthy fats, and veggies. With tender marinated steak, sautéed onions and peppers, fluffy cauliflower rice, and creamy toppings like avocado and dairy-free sour cream, this recipe checks all the boxes: Whole30, keto, paleo, and totally delicious.
If you love the flavors of Chipotle fajitas but want a cleaner, homemade version, you’re going to fall in love with this recipe. It’s perfect for meal prep, weeknight dinners, or even impressing guests.
Why You’ll Love These Steak Fajita Bowls
Whenever steak hits the table at my house, it’s a big event. And these bowls? They were a total hit.
Between the juicy, perfectly marinated steak and the colorful sautéed veggies, you’ll barely notice you’re eating low-carb. Plus, the fresh toppings — creamy guac, tangy salsa, and zesty lime cauliflower rice — make every bite exciting.
What’s great is that these fajita bowls are completely customizable. You can mix up the toppings, use different veggies, or even swap in chicken or shrimp for variety. But if you want to go classic — stick to steak, it’s unbeatable.
What You Need to Make the Perfect Steak Fajita Bowls
The ingredients are simple and easy to find. I’ve grouped them by category so you can see exactly what you’ll need for each part of the recipe.
Steak and Marinade
- 1 ¼ lbs flank or skirt steak
- 3 tablespoons olive or avocado oil (plus 1 tbsp for cooking)
- ⅓ cup fresh lime juice (about 2 limes)
- 4 cloves garlic, minced
- 1 teaspoon chili powder
- ½ teaspoon ground cumin
- ¾ teaspoon sea salt
- ¼ teaspoon smoked paprika
- ¼ cup chopped fresh cilantro
This marinade infuses the steak with deep flavor while keeping it tender and juicy. The combination of lime, garlic, and spices gives it that authentic fajita kick.
Veggies
- 2 tablespoons olive or avocado oil
- 3 bell peppers (use mixed colors for vibrancy), sliced into strips
- 1 large onion, thinly sliced
- 12 oz cauliflower rice (fresh or frozen)
- Sea salt, to taste
- Fresh lime juice
The sautéed peppers and onions add sweetness and crunch that complement the savory steak. The cauliflower rice is a perfect low-carb base — light, fluffy, and ready to soak up all that flavor.
Toppings
- Sliced avocado or easy homemade guacamole
- Dairy-free sour cream (store-bought or homemade, see below)
- Fresh salsa
- Extra cilantro for garnish
These toppings bring freshness and creaminess, balancing the bold spices of the fajitas.
How to Make Steak Fajita Bowls
Step 1: Marinate the Steak
Flavor starts with a good marinade. In a large bowl, whisk together olive oil, lime juice, garlic, chili powder, cumin, salt, smoked paprika, and chopped cilantro. Add the steak and turn it to coat evenly.
Cover the bowl and refrigerate for at least 2 hours (overnight is even better for maximum flavor).
Step 2: Cook the Steak
When ready to cook, heat a large cast-iron skillet over high heat and add 1 tablespoon of oil. Remove the steak from the marinade and sprinkle both sides lightly with coarse sea salt.
Sear the steak for 4 minutes per side for medium-rare, or until it reaches your preferred doneness. Use a thermometer if you want to be precise:
- Medium-rare: 130°F–135°F
- Medium: 135°F–145°F
Once done, transfer the steak to a cutting board, cover it loosely with foil, and let it rest for about 5 minutes. Resting helps lock in the juices for tender slices.
Step 3: Cook the Veggies
In the same skillet, add another tablespoon of oil and toss in the sliced onions and bell peppers. Sprinkle with sea salt and sauté over medium-high heat for about 5–6 minutes, stirring occasionally, until they’re soft and slightly charred.
Step 4: Prepare the Cauliflower Rice
In a separate skillet, heat 1 tablespoon of oil over medium-high heat. Add the cauliflower rice (no need to thaw if frozen) and cook for 5 minutes, stirring often. Season with sea salt and finish with a squeeze of lime juice for extra freshness.
Step 5: Make Dairy-Free Sour Cream
If you’re doing a full Whole30 or avoiding dairy, you can make your own simple sour cream alternative.
Ingredients:
- ½ cup thick coconut cream (chilled)
- 2 teaspoons lemon or lime juice
- ⅛ teaspoon fine sea salt
Whisk until smooth and creamy, then adjust the lemon and salt to taste. It’s tangy, creamy, and the perfect cool contrast to the spicy steak.
Step 6: Assemble the Bowls
Now for the fun part! Slice the steak thinly across the grain.
Layer your bowl starting with a scoop of lime cauliflower rice, then top with steak, sautéed peppers and onions, a spoonful of salsa, sliced avocado or guacamole, and a dollop of dairy-free sour cream. Sprinkle with extra cilantro and serve immediately.
PrintJuicy Steak Fajita Bowls (Whole30, Keto & Paleo Friendly)
- Total Time: 30 minutes
Description
These Steak Fajita Bowls are bursting with flavor! Perfectly marinated steak, sautéed onions and peppers, and zesty lime cauliflower rice — all topped with creamy avocado, fresh salsa, and dairy-free sour cream. A clean, high-protein meal that’s Whole30, keto, and paleo-friendly!
Ingredients
Steak & Marinade
1 ¼ lbs flank or skirt steak
3 tablespoons olive or avocado oil (plus 1 tbsp for cooking)
⅓ cup lime juice (about 2 limes)
4 cloves garlic, minced
1 teaspoon chili powder
½ teaspoon ground cumin
¾ teaspoon fine sea salt
¼ teaspoon smoked paprika
¼ cup fresh cilantro, chopped
Coarse sea salt, for searing
Veggies
2 tablespoons olive or avocado oil
3 bell peppers (mixed colors), sliced
1 large onion, sliced
12 oz cauliflower rice (fresh or frozen)
Sea salt, to taste
Fresh lime juice
Toppings
Sliced avocado or homemade guacamole
Dairy-free sour cream (recipe below)
Fresh salsa
Chopped fresh cilantro
Instructions
1. Marinate the Steak
-
In a large bowl, whisk together olive oil, lime juice, garlic, chili powder, cumin, salt, paprika, and cilantro.
-
Add the steak, turning to coat well.
-
Cover and refrigerate for at least 2 hours, or overnight for best flavor.
2. Cook the Steak
-
Heat a cast iron skillet over high heat and add 1 tablespoon of oil.
-
Remove steak from marinade, shake off excess, and season both sides with coarse sea salt.
-
Sear for 4 minutes per side (medium-rare) or to your preferred doneness.
-
Medium-rare: 130°F–135°F
-
Medium: 135°F–145°F
-
-
Transfer to a cutting board, cover loosely with foil, and rest for 5 minutes.
3. Cook the Veggies
-
In the same skillet, add 1 tablespoon of oil.
-
Add onions and bell peppers; season with salt.
-
Cook for 5–6 minutes, stirring occasionally until soft and slightly charred.
4. Make the Cauliflower Rice
-
Heat 1 tablespoon of oil in a skillet over medium-high heat.
-
Add cauliflower rice (frozen is fine) and cook for 5 minutes, stirring often.
-
Season with salt and finish with lime juice.
5. Prepare Dairy-Free Sour Cream
-
Mix ½ cup cold coconut cream, 2 teaspoons lemon or lime juice, and ⅛ teaspoon salt.
-
Adjust flavor to taste and keep chilled until ready to serve.
6. Assemble the Bowls
-
Slice the steak thinly across the grain.
-
Start each bowl with cauliflower rice, then add steak, sautéed veggies, and toppings.
-
Garnish with cilantro and serve immediately.
Notes
- Make Ahead: Marinate the steak overnight for deeper flavor.
- Storage: Store leftovers in airtight containers for up to 3 days. Reheat in a skillet.
- Variations: Swap steak for chicken, shrimp, or tofu for a lighter twist.
- Whole30 Tip: Use compliant salsa and sour cream substitutes.
- Prep Time: 20 min
- Cook Time: 10 min

