This fish taco salad dishes up beach vibes for weeknights at home
Joy is a nutrient, according to my friend and fellow dietitian Dawn Jackson Blatner, who champions it as one of the “pillars of positive nutrition.”

Joy is a nutrient, according to my friend and fellow dietitian Dawn Jackson Blatner, who champions it as one of the “pillars of positive nutrition.”
I couldn’t agree more. Vitamin Joy is essential to our well-being: The pure pleasure of eating is one reason even the most precisely formulated meal-replacement drink could never provide the full nourishment of an actual plate of food.
One way food brings joy is by evoking memories — taking us back to some of the happiest moments in our lives. For me, those are often the dishes that remind me of relaxed days at the beach — whether it’s the steamed clams and chowder that reflect my childhood summers on Long Island or meals such as this salad, which shuttle me back to precious family vacations on the Pacific Coast. It’s the kind of meal I can imagine myself enjoying under a beach umbrella, feet in the sand, listening to the sounds of the ocean.
It brings the flavors of fish tacos, with chili-lime seasoned fish atop a romaine and cabbage salad in an avocado dressing, with radishes, and pickled onions and jalapeño on the side. The pickled onions as well as the dressing can be made in advance, and the fish needs to marinate for only about 20 minutes, all of which makes this recipe especially weeknight friendly.
Sure, this salad is packed with the standard essential nutrients — protein, healthy fat, fiber, minerals, and B-vitamins — but it also brings plenty of Vitamin Joy to the table, dishing up relaxed beach vibes even if it’s just a regular Wednesday.
Fish Taco Salad
4 servings
Total time: 35 mins
This salad channels the flavors of fish tacos in a bowl, combining white fish, radishes, crisp greens, and pickled onion and jalapeños with a creamy avocado dressing. The pickled onion and dressing may be made ahead so the final prep is extra quick and easy.
Storage: Refrigerate the pickled onion for up to 2 weeks; the dressing for up to 4 days; the fish for up to 2 days.
Ingredients
1/3 cup red wine vinegar
2 teaspoons honey
1/2 medium red onion (4 ounces total), thinly sliced (1 cup)
1/4 cup water, plus more as needed
4 (5-ounce) skinless fillets mahi mahi, cod, or other firm white fish
3 tablespoons neutral oil, such as avocado, divided
3 tablespoons plus 1 teaspoon fresh lime juice, divided, plus more as needed
1 1/2 teaspoons ground ancho chile or chili powder
1/2 teaspoon garlic powder
1/4 teaspoon ground cumin
1/8 teaspoon cayenne pepper
1/4 teaspoon plus 1/8 teaspoon fine salt, divided, plus more as needed
Flesh of 1 large, ripe avocado
2 scallions, coarsely chopped
1/2 cup plus 2 tablespoons fresh cilantro leaves, divided
6 cups (8 ounces) chopped romaine lettuce hearts
3 cups (7 1/2 ounces) shredded green cabbage
5 red radishes, sliced (about 1 cup)
1/2 cup pickled jalapeños, drained
corn chips or warm corn tortillas, for serving
Steps
In a small bowl or jar, stir together the vinegar and honey until the honey dissolves. Add the onion and enough water to submerge it completely, and let sit at room temperature for 30 to 40 minutes, or cover and refrigerate for up to 2 weeks.
Place the fish onto a rimmed dish or plate. In a small bowl, whisk together 1 tablespoon of the oil, 1 tablespoon of the lime juice, the ground ancho chile, garlic powder, cumin, cayenne pepper, and 1/8 teaspoon of the salt until well combined. Drizzle the spice mixture over the fish and rub it all over each piece. Set aside while you prepare the remaining ingredients, about 20 minutes.
In a small blender, or using a narrow container with tall sides and an immersion blender, combine the avocado, scallions, the remaining 2 tablespoons plus 1 teaspoon of lime juice, 2 tablespoons of the cilantro, the remaining 1/4 teaspoon of salt, and 1/4 cup of water, and puree until smooth, stopping to scrape down the sides with a spatula as needed. You should have about 1 cup. (If you only have a large blender, you can double the recipe so you have an amount that will efficiently blend; refrigerate the leftovers until needed.)
In a large (12-inch) nonstick skillet over medium heat, heat the remaining 2 tablespoons of oil until shimmering. Add the fish, and cook until nicely browned on each side and flakes easily under the tines of a fork, about 8 minutes per inch of thickness, flipping halfway through. Transfer the fish to a plate. (Alternatively, you can roast the fish in a parchment-lined dish in a 400-degree oven for 8 minutes per inch of thickness. You do not need the 2 tablespoons of oil or to flip the fillets, if roasting.)
In a large bowl, toss together the lettuce and cabbage with the avocado dressing until coated. Taste, and season with more lime juice and salt, if desired.
To serve, divide the dressed lettuce mixture among individual shallow bowls. Top each with a fish fillet, some pickled onion, radishes, pickled jalapeños, and cilantro.
Substitutions: Red onion >> white onion. Green cabbage >> red, savoy, or napa cabbage. Honey >> agave or maple syrup.
Dislike cilantro? Skip it. Dislike heat? Decrease the amount of jalapeños, or omit them.
Nutrition per serving (2 1/2 cups salad and 1 fish fillet): 321 calories, 15g carbohydrates, 104mg cholesterol, 17g fat, 6g fiber, 29g protein, 2g saturated fat, 573mg sodium, 5g sugar
This analysis is an estimate based on available ingredients and this preparation. It should not substitute for a dietitian’s or nutritionist’s advice.