Grilled Whole Fish With Molho à Campanha (Brazilian Pico de Gallo) Recipe

Photographs: Vicky Wasik. Video: Natalie Holt.

How to Grill a Whole Fish

Why It Works

  • Salting the tomatoes in advance concentrates their flavor.
  • White wine vinegar acts as a quick-pickling brine, helping to preserve the vegetables' texture and color longer than citrus juice does in pico de gallo.
  • Drying and oiling the fish before grilling reduces the chances that it will stick.

Molho à campanha is a lot like Mexican pico de gallo, except it uses vinegar instead of citrus juice and adds more peppers to the mix of tomato, onion, and cilantro. It's most commonly served alongside charred steaks, but it's just as good spooned over grilled whole fish as in this recipe.

Recipe Facts

Active: 60 mins
Total: 60 mins
Serves: 2 to 4 servings

Rate & Comment


  • 1 large tomato, cored, seeded, and cut into 1/4-inch dice (about 3/4 cup)

  • Kosher salt

  • 1/2 large red onion (4 1/2 ounces; 130g), diced (about 1 cup)

  • 1/2 green bell pepper (4 1/2 ounces; 130g), stemmed, seeded, and diced (about 3/4 cup)

  • 1/2 red bell pepper (4 1/2 ounces; 130g), stemmed, seeded, and diced (about 3/4 cup)

  • 2 tablespoons chopped cilantro leaves and tender stems

  • 2 tablespoons chopped flat-leaf parsley leaves and tender stems

  • 2 tablespoons (30ml) white wine vinegar

  • 1 tablespoon extra-virgin olive oil (15ml), plus more for oiling fish

  • Freshly ground black pepper

  • 2 (1- to 1 1/2-pound; 450 to 680g) whole fish, such as branzini, mackerel, or trout, scaled and gutted


  1. Season tomatoes with 1 teaspoon salt and toss to combine. Transfer to a fine-mesh strainer or colander set in a bowl and allow to drain for 20 to 30 minutes. Discard liquid.

  2. In a medium bowl, stir together tomatoes, red onion, green pepper, red pepper, cilantro, parsley, vinegar, and olive oil. Season with salt and pepper. Let molho stand at least 30 minutes, or refrigerate for up to 24 hours. Return to room temperature before serving.

  3. About 30 minutes before grilling, remove fish from refrigerator and let come to room temperature. Light one chimney full of charcoal. When all the charcoal is lit and covered with gray ash, pour out and spread the coals evenly over half of coal grate. Alternatively, set half the burners of a gas grill to high heat. Set cooking grate in place, cover grill and allow to preheat for 5 minutes. Clean and oil the grilling grate.

  4. Thoroughly pat fish dry with paper towels. Season inside and out with salt and pepper. Rub fish all over with olive oil.

  5. Set fish over hot side of grill and cook until bottom sides are browned, about 5 minutes. Using a carving fork (the tines of which can slide down between the grill grate) or a thin metal spatula, carefully attempt to lift fish from below; if it resists, allow to cook for 1 more minute and try again. When fish lifts easily from grill, turn onto other side and cook until an instant-read thermometer inserted in the thickest part registers 135°F (57°C), about 5 minutes longer; if skin begins to char before fish is cooked through, transfer fish to cooler side of grill to finish cooking. Let rest 5 minutes.

  6. Serve fish, spooning molho on top. (If you want to serve the fish off the bone, follow our article and video on carving a whole cooked fish.)

Special equipment

Fine-mesh strainer, grill, thin metal spatula or carving fork

This Recipe Appears In

Nutrition Facts (per serving)
391 Calories
19g Fat
10g Carbs
44g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 2 to 4
Amount per serving
Calories 391
% Daily Value*
Total Fat 19g 24%
Saturated Fat 3g 15%
Cholesterol 118mg 39%
Sodium 741mg 32%
Total Carbohydrate 10g 4%
Dietary Fiber 2g 7%
Total Sugars 5g
Protein 44g
Vitamin C 92mg 461%
Calcium 113mg 9%
Iron 4mg 21%
Potassium 1032mg 22%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
(Nutrition information is calculated using an ingredient database and should be considered an estimate.)