In the Yucatán Peninsula, far from the battered-and-fried-fish taco stands of Baja, another style of fish taco is popular: grilled fish tacos. Traditionally, a whole fish is split in half lengthwise, bathed in a chile-citrus marinade, and grilled.

We wanted grilled fish tacos featuring a similarly bold flavor profile, but a simpler approach—no dealing with whole, skin-on fish. Although most recipes use whole snapper or grouper, we found that swordfish was easier to find, stood up well to flipping on the grill, and picked up plenty of flavorful char before the interior cooked through. We created a flavorful paste from ancho and chipotle chile powders, oregano, and ground coriander, which we bloomed in oil to bring out their flavors. Tomato paste provided a savory-sweet punch.

To replicate the flavor of traditional sour oranges, we used a combination of lime and orange juices. A fresh pineapple salsa was the perfect accompaniment to our spicy, earthy fish. Halibut, mahi-mahi, red snapper, and striped bass are all suitable substitutes for the swordfish. The recipe for the pineapple salsa makes more than is needed for the tacos; leftovers can be refrigerated for up to two days. Serve with shredded lettuce and diced avocado.

Serves 6


    • 3 tablespoons vegetable oil, divided
    • 1 tablespoon ancho chile powder
    • 2 teaspoons chipotle chile powder
    • 2 garlic cloves, minced
    • 1 teaspoon dried oregano
    • 1 teaspoon ground coriander
    • 1 teaspoon table salt
    • 2 tablespoons tomato paste
    • ½ cup orange juice
    • 6 tablespoons lime juice (3 limes), divided, plus lime wedges for serving
    • 2 pounds skinless swordfish steaks, 1 inch thick, cut lengthwise into 1-inch thick strips
    • 1 pineapple, peeled, quartered lengthwise, cored, and each quarter halved lengthwise
    • 1 jalapeño chile
    • 18 (6-inch) corn tortillas
    • 1 red bell pepper, stemmed, seeded, and cut into ¼-inch pieces
    • 2 tablespoons minced fresh cilantro, plus extra for serving


  1. Heat 2 tablespoons oil, ancho chile powder, and chipotle chile powder in 8-inch skillet over medium heat, stirring constantly, until fragrant and some bubbles form, 2 to 3 minutes. Add garlic, oregano, coriander, and salt and continue to cook until fragrant, about 30 seconds. Add tomato paste and, using spatula, mash tomato paste with spice mixture until combined, about 20 seconds. Stir in orange juice and 2 tablespoons lime juice. Cook, stirring constantly, until thoroughly mixed and reduced slightly, about 2 minutes. Transfer chile mixture to large bowl and let cool for 15 minutes.
  2. Add swordfish to chile mixture and stir gently to coat. Cover and refrigerate for at least 30 minutes or up to 2 hours. Brush pineapple and jalapeño with remaining 1 tablespoon oil.
  3. For a charcoal grill Open bottom vent completely. Light large chimney starter mounded with charcoal briquettes (7 quarts). When top coals are partially covered with ash, pour evenly over grill. Set cooking grate in place, cover, and open lid vent completely. Heat grill until hot, about 5 minutes.

    For a gas grill Turn all burners to high, cover, and heat grill until hot, about 15 minutes. Turn all burners to medium-high.
  1. Clean cooking grate, then repeatedly brush grate with well-oiled paper towels until black and glossy, 5 to 10 times. Place fish, pineapple, and jalapeño on grill. Cover and cook until fish, pineapple, and jalapeño have begun to brown, 3 to 5 minutes. Using thin spatula, turn fish, pineapple, and jalapeño. Cover and cook until pineapple and jalapeño are well browned and swordfish registers 140 degrees, 3 to 5 minutes; transfer to platter and cover with aluminum foil.
  2. Working in batches, grill tortillas, turning as needed, until warm and soft, about 30 seconds; wrap tightly in foil to keep soft.
  3. Chop pineapple and jalapeño fine and combine with bell pepper, cilantro, and remaining ¼ cup lime juice in bowl. Season with salt to taste. Using 2 forks, pull fish apart into large flakes and serve with pineapple salsa, tortillas, and lime wedges.