Quick Recipe Version (TL;DR)
Quick Ingredients
- 1 1/2 lb (680 g) firm white fish fillets (cod, hake, or halibut), cut into 4 pieces
- 1 tsp kosher salt, plus more to taste
- 1/2 tsp freshly ground black pepper
- 1/2 cup (65 g) all-purpose flour (for dredging)
- 1/2 cup (120 ml) extra-virgin olive oil, divided
- 1 large yellow onion, thinly sliced
- 1 red bell pepper, thinly sliced
- 1 green bell pepper, thinly sliced
- 4 cloves garlic, thinly sliced
- 2 bay leaves
- 1 tsp smoked paprika (pimentón)
- 1/2 tsp whole black peppercorns
- 1/2 tsp kosher salt (for the marinade)
- 1 cup (240 ml) sherry vinegar (or white wine vinegar)
- 1/2 cup (120 ml) dry white wine (or water)
- 1 tsp granulated sugar (optional)
Do This
- 1. Salt and pepper fish; lightly dredge in flour.
- 2. Pan-fry fish in olive oil at 350°F (175°C) until just cooked, 2–4 minutes per side; transfer to a shallow dish.
- 3. In the same pan, sauté onion and peppers until softened, 6–8 minutes; add garlic for 30 seconds.
- 4. Stir in bay, smoked paprika, peppercorns, vinegar, wine (or water), salt, and sugar; simmer 5 minutes.
- 5. Pour warm escabeche over fish; cool 30 minutes at room temp.
- 6. Cover and refrigerate at least 4 hours (overnight best), turning fish once if you can.
- 7. Serve cold or at room temperature with bread; spoon onions/peppers and marinade over the top.
Why You’ll Love This Recipe
- Big flavor, low effort: a quick fry plus a simple warm vinegar marinade does all the heavy lifting.
- Perfect make-ahead: it tastes even better after resting, so it’s great for entertaining.
- Flexible serving: delicious cold, at room temp, as tapas, or as a light dinner.
- Classic Spanish vibe: bay leaf and smoked paprika give it that unmistakable escabeche character.
Grocery List
- Produce: 1 large yellow onion, 1 red bell pepper, 1 green bell pepper, 4 cloves garlic, lemon (optional), parsley (optional)
- Dairy: None
- Pantry: firm white fish fillets (or seafood counter), all-purpose flour, extra-virgin olive oil, sherry vinegar (or white wine vinegar), dry white wine (or water), bay leaves, smoked paprika, black peppercorns, kosher salt, granulated sugar (optional)
Full Ingredients
For the Fish
- 1 1/2 lb (680 g) firm white fish fillets (cod, hake, halibut, or grouper), cut into 4 portions
- 1 tsp kosher salt
- 1/2 tsp freshly ground black pepper
- 1/2 cup (65 g) all-purpose flour, for a light dredge
For Frying
- 1/4 cup (60 ml) extra-virgin olive oil (you’ll add more later as needed)
For the Warm Escabeche Marinade
- 1/4 cup (60 ml) extra-virgin olive oil (plus up to 2 tbsp / 30 ml more if the pan is dry)
- 1 large yellow onion, halved and thinly sliced
- 1 red bell pepper, thinly sliced
- 1 green bell pepper, thinly sliced
- 4 cloves garlic, thinly sliced
- 2 bay leaves
- 1 tsp smoked paprika (pimentón dulce; use hot smoked paprika if you like heat)
- 1/2 tsp whole black peppercorns
- 1/2 tsp kosher salt
- 1 cup (240 ml) sherry vinegar (or white wine vinegar)
- 1/2 cup (120 ml) dry white wine (or water)
- 1 tsp granulated sugar (optional, helps round out the acidity)
To Serve (Optional)
- Chopped flat-leaf parsley
- Lemon wedges
- Crusty bread or boiled potatoes
- Olives or a simple green salad

Step-by-Step Instructions
Step 1: Portion, dry, and season the fish
Pat the fish very dry with paper towels (this helps it fry quickly and evenly). Cut into 4 portions if needed. Season both sides with 1 tsp kosher salt and 1/2 tsp black pepper. Set aside while you prep a dredging plate and a landing dish.
Choose a shallow dish (glass or ceramic works well) just large enough to hold the fish in one layer, or slightly overlapped. You’ll pour the warm escabeche over the fish later.
Step 2: Lightly dredge in flour
Place 1/2 cup (65 g) flour on a plate. Dredge each piece of fish lightly, shaking off any excess. You want a thin film of flour, not a thick coating.
Step 3: Pan-fry the fish until just cooked
Heat 1/4 cup (60 ml) olive oil in a large skillet over medium-high heat until it reaches 350°F (175°C). If you don’t have a thermometer, the oil should shimmer, and a pinch of flour should sizzle immediately.
Fry the fish in a single layer (work in batches if needed so you don’t crowd the pan). Cook 2–4 minutes per side, depending on thickness, until lightly golden and just cooked through (aim for an internal temperature of 145°F (63°C) at the thickest point).
Transfer the fish to your shallow dish in a single layer.
Step 4: Sauté the onions and peppers until softened
Carefully pour off all but about 2 tbsp of oil/frying drippings from the pan (leave behind any flavorful browned bits, but discard any burnt flour specks).
Add 1/4 cup (60 ml) olive oil to the skillet. Set to medium heat. Add the sliced onion and both peppers. Cook, stirring often, until softened and glossy, 6–8 minutes. If the pan looks dry at any point, add up to 2 tbsp (30 ml) more olive oil.
Step 5: Bloom the spices, then build the escabeche
Add the sliced garlic and cook 30 seconds, just until fragrant (don’t let it brown). Add the bay leaves, smoked paprika, peppercorns, and 1/2 tsp kosher salt. Stir for 15 seconds to toast the spices gently.
Pour in the 1 cup (240 ml) vinegar and 1/2 cup (120 ml) white wine (or water). Add the 1 tsp sugar if using. Bring to a steady simmer, scraping the bottom of the pan to dissolve any browned bits. Simmer uncovered for 5 minutes to meld flavors and slightly soften the acidity.
Step 6: Pour the warm marinade over the fish
Immediately pour the hot escabeche (vegetables and all) over the fish in the shallow dish. The fish should be mostly submerged; spoon the onions and peppers over any exposed areas. Let cool at room temperature for 30 minutes.
Step 7: Marinate, then serve cold or at room temperature
Cover and refrigerate for at least 4 hours, preferably 12–24 hours. If you think of it, gently turn the fish once during marinating so the flavors distribute evenly.
Serve cold or let it sit out 20–30 minutes for a more aromatic room-temperature bite. Spoon plenty of onions, peppers, and tangy paprika-stained oil/vinegar over each portion. Finish with parsley and lemon if you like, and serve with crusty bread or boiled potatoes.
Pro Tips
- Pick the right fish: Firm fillets (cod, hake, halibut, grouper) hold together best. Very delicate fish can break after marinating.
- Don’t over-fry: The fish keeps “relaxing” in the warm marinade. Fry just to doneness (or barely under) so it stays moist later.
- Control acidity: Sherry vinegar is traditional and balanced. If your vinegar tastes extra sharp, use the optional 1 tsp sugar and/or swap 1/4 cup (60 ml) of vinegar for more wine/water.
- Keep the paprika vibrant: Add smoked paprika right before the liquids and stir quickly; prolonged high heat can make paprika taste bitter.
- Use a nonreactive container: Glass or ceramic is best for marinating with vinegar.
Variations
- Spicy escabeche: Add 1/2 tsp hot smoked paprika or 1/4 tsp red pepper flakes with the spices.
- Citrus-herb twist: Add 2 (2-inch) strips orange peel and 2 sprigs thyme to the simmering marinade; remove before serving if you prefer.
- Other proteins: This method works well with shrimp (briefly sautéed) or chicken thighs (pan-seared and finished through before marinating).
Storage & Make-Ahead
Store pescado en escabeche in a covered, nonreactive container in the refrigerator for up to 3 days. For best texture, keep the fish in a single layer or gently overlapped so it doesn’t break apart. This dish is designed to be made ahead: it’s excellent after 12–24 hours of marinating. Serve cold or let it stand at room temperature for 20–30 minutes before serving. Do not leave out for more than 2 hours total at room temperature.
Nutrition (per serving)
Approximate, based on 4 servings: 430 calories, 30 g protein, 28 g fat, 12 g carbohydrates, 2 g fiber, 5 g sugar, 780 mg sodium.
