My tofu fajitas are loaded with crispy tofu, charred peppers, mushrooms, and black beans in a smoky spice blend. They come together in 25 minutes and taste like something you’d order at a Tex-Mex restaurant.

Vegan tofu fajitas served in soft flour tortillas with avocado slices, black beans, sautéed vegetables, and vegan sour cream
Save this recipe!
Enter your email below & we’ll send it straight to your inbox. Plus you’ll get great new recipes from us every week!

These crispy vegan fajitas rival any meat version!

Shruthi's face

I started making these when I wanted fajitas that felt satisfying without the usual chicken or steak. Crumbling the tofu by hand (vs. cubing it) creates irregular pieces that crisp up better and mimic the texture of ground meat. Cooking the tofu separately and adding it back keeps it crispy instead of steaming it soft in the vegetable liquid.

The mushrooms add meatiness and soak up the smoky spices. Letting the peppers and onions sit without stirring develops that charred edge you get at restaurants – like Chipotle fajita veggies. Black beans round out the protein and make this filling enough that you won’t miss the meat.

The lime juice and cilantro go in right at the end so they stay bright and fresh instead of cooking out.

If you like these, I recommend adding something bright or creamy on the side—mango salsa or guacamole salsa both work especially well with the smoky spices here.

Key ingredients and why they matter

To make these vegan mushroom tofu fajitas, you’ll need extra-firm tofu, olive oil, bell peppers, red onion, cremini mushrooms, red chili, smoked paprika, ground cumin, dried oregano, lime juice, salt, fresh cilantro, and tortillas. Completely optional, but you can also add vegan sour cream when serving.

Full ingredient list and detailed instructions in the recipe card.

Ingredients for vegan tofu fajitas.
  • Extra-firm tofu: Press well and crumble by hand for irregular, crispy pieces. Firm tofu works but doesn’t crisp as well.
  • Bell peppers: Red and green peppers add color and sweetness. Cut into strips so they cook evenly and fit in tortillas.
  • Red onion: Sweeter than yellow onion and caramelizes beautifully. Sliced thin so it softens quickly.
  • Cremini mushrooms: Add meaty texture and umami. Slice thick so they don’t disappear during cooking.
  • Black beans: Protein and fiber that make the filling more substantial. Drain and rinse to remove excess sodium.
  • Red chilis: Fresh heat you can adjust to taste. Remove seeds for milder spice.
  • Smoked paprika: Adds smoky depth without a grill. Regular paprika works but won’t have the same flavor.
  • Cumin and oregano: Classic fajita spices that build warmth and earthiness.
  • Lime juice: Brightens everything at the end. Add half during cooking, save the rest for finishing.
  • Cilantro: Fresh herb flavor stirred in at the end and scattered on top.

TIPS & TRICKS

Shruthi’s top tips

  • Press tofu well. Dry tofu gets crispier. At least 15 minutes under something heavy, or use a tofu press if you have one. Freezing the tofu overnight the day before and then crumbling works even better.
  • Crumble tofu by hand. Irregular pieces crisp better than neat cubes and have a more meat-like texture.
  • Cook tofu separately. Adding it at the end keeps it crispy. If you cook it with the vegetables, it steams and turns soft.
  • Don’t move tofu while it’s crisping. Let it sit undisturbed for 2–3 minutes so a golden crust forms.
  • Don’t overcrowd the pan. Crowded vegetables steam instead of char. Cook in batches if needed.
  • Let vegetables sit without stirring. This develops the charred edges that make fajitas taste like restaurant food.
  • Add lime juice and cilantro at the end. Heat dulls their brightness. Stir in half at the end, save the rest for topping.
  • Warm tortillas properly. Cold tortillas crack and taste stale. A damp paper towel in the microwave steams them soft.

How to make tofu fajitas

  1. Press tofu for at least 15 minutes between paper towels with a heavy object on top, then crumble or shred it into small, irregular pieces using your hands.
  2. Heat olive oil in a large skillet over medium-high heat. Add the shredded tofu and cook until golden and crispy on multiple sides, then transfer to a plate.
  3. Add the remaining olive oil to the skillet, then sauté the bell peppers, onions, and mushrooms until tender and lightly charred.
  4. Stir in the black beans, sliced chili, salt, smoked paprika, cumin, and oregano. Cook for a minute until fragrant.
  5. Return the crispy tofu to the skillet and toss to combine. Remove from heat and finish with lime juice and chopped cilantro.
  6. Warm the tortillas in the microwave or oven. Serve the filling in tortillas with vegan sour cream, extra cilantro, and remaining lime juice.
Pressed and shredded extra-firm tofu in a bowl.
Shredded tofu cooking in a skillet until golden and crispy.
Bell peppers, onions, and mushrooms sautéing in a skillet for vegan fajitas.
Black beans and spices added to sautéed vegetables for vegan tofu fajitas.
Crispy tofu fajita filling mixed with vegetables, beans, and spices in a skillet
Vegan tofu fajitas made with crispy crumbled tofu, black beans, sautéed peppers, avocado, and dairy-free sour cream in flour tortillas

How to serve chipotle fajita veggies

Serve these fajitas with cilantro lime rice and refried beans on the side for an easy, filling meal. You can also turn them into a bowl by spooning the fajita filling over rice and adding your favorite toppings—my Mexican corn salad works especially well here.

Vegan tofu fajitas served with avocado, lime wedges, and dairy-free sour cream on a plate.

Storage and reheating suggestions

Refrigerate the fajita filling in an airtight container for up to 3 days and store the tortillas separately. Reheat the filling in a skillet over medium-high heat to bring back the caramelized edges—microwaving will soften the tofu.

More delicious tofu recipes

Love bold, savory tofu? These recipes are lean, crispy, saucy, and weeknight-friendly.

VVegan RecipesGFGluten Free RecipesNFNut Free RecipesHPHigh ProteinVEVegetarian Recipes

Salt and Pepper Tofu

GFGluten Free RecipesNFNut Free RecipesHPHigh ProteinVEVegetarian Recipes

Buffalo Tofu

VVegan RecipesGFGluten Free RecipesNFNut Free RecipesHPHigh ProteinVEVegetarian Recipes

Sesame Tofu

5 from 1 vote

Vegan Tofu Fajitas

Vegan fajitas with crispy crumbled tofu, caramelized peppers, mushrooms, and black beans. Ready in 25 minutes. Smoky, satisfying, and perfect for weeknight Tex-Mex.
Prep Time: 15 minutes
Cook Time: 10 minutes
Total Time: 25 minutes
Servings: 4

Ingredients 

For the fajita filling:

  • 14 oz extra-firm tofu, drained and pressed
  • 3 tablespoons olive oil, divided
  • teaspoons kosher salt, divided
  • 2 medium red bell peppers, cut into strips
  • 2 medium green bell peppers, cut into strips
  • 1 large red onion, sliced
  • 10 oz cremini mushrooms, sliced
  • 1 15 oz can black beans, drained and rinsed
  • 2 small red chilis, sliced, seeds removed (adjust for heat)
  • 1 teaspoon smoked paprika
  • 1 teaspoon ground cumin
  • 1 teaspoon dried oregano

For serving:

  • 2 medium limes, juiced, divided
  • 1 bunch fresh cilantro, about ¼ cup finely chopped, plus extra for garnish
  • 8 large flour tortillas
  • 2 tablespoons sour cream, vegan, for serving
  • 4 lime wedges, for serving
Save this recipe!
Enter your email below & we’ll send it straight to your inbox. Plus you’ll get great new recipes from us every week!

Instructions 

  • Press tofu for at least 15 minutes between paper towels with a heavy object on top. Once pressed, crumble or shred tofu into small, irregular pieces using your hands.
  • Heat 1 tablespoon olive oil in a large skillet or wok over medium-high heat until shimmering. Add crumbled tofu and ½ teaspoon salt. Cook without stirring for 2-3 minutes to develop a golden crust, then stir and cook another 3-4 minutes until crispy on multiple sides. Transfer to a plate and set aside.
  • Add remaining 2 tablespoons olive oil to the skillet. Add bell peppers, onion, and mushrooms. Sauté, stirring occasionally, until vegetables are tender and starting to caramelize on edges, 8-10 minutes. Work in batches if pan is crowded.
  • Add black beans, chili, remaining 1 teaspoon salt, smoked paprika, cumin, and oregano. Cook, stirring constantly, until beans are heated through and spices are fragrant, about 2 minutes.
  • Return crispy tofu to the skillet. Toss to combine and warm through, about 1 minute.
  • Remove from heat. Stir in half the lime juice and chopped cilantro.
  • Warm tortillas in the microwave (20-30 seconds wrapped in a damp paper towel) or wrap in foil and heat in a 300°F oven for 5 minutes.
  • Serve fajita filling in warm tortillas. Top with sour cream, extra cilantro, and remaining lime juice squeezed over top.

Notes

  • Press thoroughly and then crumble the tofu by hand for crisp meat-like texture. You can also freeze the tofu the night before, move it to the fridge the day-of to thaw, and then press and cook for dinner.  
  • Avoid overcrowding the pan and cook vegetables in batches if needed. Also, let vegetables sit briefly without stirring to develop char. 
  • Squeeze remaining lime juice over the filling when serving for added brightness.
  • Serve with sliced avocado or guacamole, pickled jalapeños, Mexican rice, or extra vegan sour cream or cashew crema.
  • Store leftover fajita filling in an airtight container in the refrigerator for up to 3 days; store tortillas separately.
  • Reheat filling in a skillet over medium-high heat to restore crisp edges; microwaving will soften the vegetables and tofu.
  • Variations:
    • Make it spicier: Leave seeds in the chilis or add pickled jalapeños on top.
    • Skip the tofu: Double the mushrooms and beans for a different texture.
    • Use different vegetables: Zucchini, corn, or poblano peppers all work well.
    • Make it gluten-free: Use corn tortillas instead of flour.
    • Add cheese: Sprinkle with vegan cheese or regular cheese if not strictly vegan.
 

Nutrition

Calories: 567kcal | Carbohydrates: 77g | Protein: 26g | Fat: 20g | Saturated Fat: 4g | Polyunsaturated Fat: 4g | Monounsaturated Fat: 9g | Cholesterol: 4mg | Sodium: 1394mg | Potassium: 1362mg | Fiber: 17g | Sugar: 12g | Vitamin A: 2763IU | Vitamin C: 174mg | Calcium: 218mg | Iron: 8mg

Nutrition information is automatically calculated, so should only be used as an approximation.

Like this? Leave a comment below!

I'm the recipe developer, photographer and brain behind Urban Farmie. I’m a lifelong vegetarian. I’ve lived, worked, and traveled to 60+ countries and bring you authentic, vegetarian recipes from all those travels!

5 from 1 vote (1 rating without comment)

Leave a comment

Your email address will not be published. Required fields are marked *

Recipe Rating




This site uses Akismet to reduce spam. Learn how your comment data is processed.