Fish Tacos With Cabbage (The Recipe I Stole From a Beach Shack in Baja)

We ate fish tacos off a plastic table on the side of a dirt road in Baja California, and I haven’t stopped thinking about them since.

There was no menu. Just a guy with a griddle, a cooler of fish, and a line of locals who clearly knew something we didn’t.

Silas ordered four. I ordered four. We ended up ordering four more.

That’s the kind of taco we’re making today. Crispy fish, a cold crunchy cabbage slaw, and a sauce that ties the whole thing together. No fancy equipment, no deep fryer smoking up your kitchen, just a hot pan and about 25 minutes.

I’ve made this one probably a dozen times since we got home, tweaking it each round until it finally tasted like that dusty little stand. This is the version that made Silas put his fork down mid-bite and just say “okay, wow.”

What You’ll Need

IngredientAmount
White fish fillets (cod, tilapia, or mahi mahi)1.5 lbs
Chili powder1 tsp
Ground cumin1 tsp
Garlic powder1/2 tsp
Smoked paprika1/2 tsp
Salt1/2 tsp
Black pepper1/4 tsp
Olive oil2 tbsp
Green cabbage, shredded3 cups
Fresh cilantro, chopped1/4 cup
Lime, juiced2
Mayonnaise1/2 cup
Sour cream1/4 cup
Hot sauce (I use Cholula)1 tbsp
Corn tortillas10-12
Avocado, sliced1
Cotija cheese, crumbled1/4 cup (optional)

That’s genuinely it. Nothing exotic, nothing you have to hunt down at a specialty store.

Tools You’ll Need

  • Large skillet or nonstick pan
  • Mixing bowls (one for slaw, one for sauce)
  • Fish spatula (a regular one works too, just be gentle)
  • Small saucepan or grill pan for warming tortillas
  • Citrus juicer (optional, but honestly makes life easier)

Pro Tips

Dry your fish before seasoning it. Pat it down with a paper towel first. Wet fish steams instead of getting that golden crust, and that crust is half the point.

Don’t walk away from the pan. White fish fillets cook fast, usually 3 to 4 minutes per side depending on thickness. Overcooked fish gets chalky and sad, and nobody wants sad fish in their taco.

Salt your cabbage early. Toss it with a pinch of salt and let it sit for 10 minutes before you add anything else. It softens the texture just enough and pulls out extra moisture so your tacos don’t get soggy.

Warm your tortillas over an open flame if you have a gas stove. It takes 15 seconds a side and genuinely changes the whole eating experience. Skip the microwave here.

Double the sauce. You will want it on literally everything else on your plate. Trust me on this one.

Instructions

  1. Season the fish. Pat your fillets dry, then mix the chili powder, cumin, garlic powder, smoked paprika, salt, and pepper in a small bowl. Rub it evenly over both sides of the fish.
  2. Make the slaw. In a large bowl, toss the shredded cabbage with a pinch of salt and let it rest for 10 minutes. Drain off any liquid, then mix in the cilantro and the juice of one lime.
  3. Whisk the sauce. Combine the mayonnaise, sour cream, hot sauce, and the juice of your second lime in a small bowl. Whisk until smooth. Taste and adjust the heat if you like things spicier.
  4. Cook the fish. Heat the olive oil in your skillet over medium-high heat. Once it’s shimmering, add the fish fillets. Cook for 3 to 4 minutes per side, until golden and flaky. Don’t move them around too much, just let that crust form.
  5. Rest and flake. Remove the fish from the pan and let it sit for 2 minutes, then break it into large chunks with a fork.
  6. Warm the tortillas. Heat each tortilla directly over a gas flame for 10 to 15 seconds per side, or in a dry skillet for about 30 seconds total.
  7. Assemble. Layer fish, cabbage slaw, avocado slices, and a generous drizzle of sauce onto each tortilla. Top with cotija if you’re using it.
  8. Serve immediately with extra lime wedges on the side.

Substitutions and Variations

OriginalSubstituteNotes
White fishShrimpCook 2 minutes per side, they finish faster
White fishBlackened salmonRicher flavor, still holds up well
Corn tortillasFlour tortillasSofter bite, less traditional
MayonnaiseGreek yogurtLighter, tangier sauce
CotijaFetaSimilar salty crumble
CabbageShredded red cabbageMore color, slightly sharper bite
Fresh fishFrozen fillets, thawedWorks great, just pat extra dry

Make Ahead Tips

The slaw actually gets better after sitting in the fridge for an hour, so you can make that part up to a day ahead in a sealed container.

The sauce also holds well in the fridge for up to 4 days, so double it and keep some around for other meals (it’s great on grilled chicken too).

I wouldn’t season or cook the fish ahead of time though. Fish is best fresh off the pan, and reheating it tends to dry it out.

Diet-Friendly Swaps

  • Gluten free: Corn tortillas are naturally gluten free, just double check your hot sauce label
  • Dairy free: Swap the sour cream for coconut yogurt and skip the cotija
  • Lower carb: Serve everything over a bed of shredded lettuce instead of tortillas

Nutrition (Per Taco, Estimated)

NutrientAmount
Calories195
Protein14g
Carbs15g
Fat9g
Fiber2g
Sodium260mg

These numbers are estimates and will shift depending on the fish you use and how heavy handed you are with the sauce (no judgment here).

Leftovers and Storage

Store leftover fish and slaw separately in airtight containers in the fridge for up to 2 days. Keeping them apart stops the cabbage from getting soggy.

Reheat the fish gently in a skillet over low heat, just a couple minutes to warm it through without drying it out.

I’d skip freezing this one. The texture of the fish and the fresh cabbage just don’t hold up well after thawing.

FAQ

Can I bake the fish instead of pan searing it? Yes. Bake at 400°F for about 12 to 15 minutes, until the fish flakes easily with a fork. You’ll lose a bit of that crispy edge but it’s a solid hands-off option.

What’s the best fish for tacos if I can’t find mahi mahi? Cod and tilapia are both great, budget friendly options. Halibut works too if you want something a little more special.

Can I make this recipe dairy free? Yes, just swap the sour cream for a dairy free yogurt and skip the cotija, or use a dairy free cheese alternative.

How spicy is this recipe? Pretty mild as written. The heat comes mostly from the hot sauce in the topping, so add more or less depending on your spice tolerance.

Can I grill the fish instead? Definitely. Just make sure to oil your grates well since fish loves to stick, and use a fish basket if you have one.

Wrapping Up

This recipe brings me right back to that dusty roadside stand every single time I make it, and I hope it does something similar for you.

Give it a try this week and let me know how it goes in the comments below. And if you have any questions along the way, just ask, I’m happy to help.

Leave a Comment