This vibrant sheet-pan dinner of roasted cod with caponata is my go-to recipe when I want to capture the flavors of a Mediterranean getaway—without leaving my kitchen. Inspired by Sicilian caponata, the dish is packed with late-summer vegetables like eggplant, cherry tomatoes, and bell pepper, all roasted until soft and caramelized. Topped with flaky baked cod and finished with capers, olives, and a punchy red wine vinegar dressing, this dinner is as bold in flavor as it is easy to prepare.
Why You’ll Love This Recipe
I love how hands-off this dish is. Everything comes together on a single sheet pan, making both cooking and cleanup a breeze. The high-heat roast brings out deep, rich flavors in the vegetables, while the cod cooks low and slow for a perfectly tender result. The sweet-and-sour agrodolce vibe from the sugar and red wine vinegar is absolutely irresistible. This is the kind of meal I want to eat outside with a hunk of bread, a glass of wine, and nothing else on the agenda.
Ingredients
(Here’s a tip: Check out the full list of ingredients and measurements in the recipe card below.)
-
Italian eggplant or Chinese eggplants, cut into 1-inch pieces
-
Red bell pepper, cut into 1-inch pieces
-
Cherry tomatoes
-
Yellow onion, diced
-
Extra-virgin olive oil
-
Kosher salt
-
Castelvetrano olives, roughly chopped
-
Fresh parsley, finely chopped
-
Red wine vinegar
-
Non-pareil capers
-
Granulated sugar
-
Freshly ground black pepper
-
Skin-on or skinless white fish fillets (cod, halibut, or haddock)
-
Pasta, pearl couscous, or crusty bread for serving
Directions
-
I start by preheating the oven to 400°F (200°C) and lining a rimmed baking sheet with parchment paper. I arrange the eggplant, bell pepper, cherry tomatoes, and onion on the sheet pan. After drizzling with 2 tablespoons of olive oil and seasoning with salt, I toss everything to coat and roast for 30 to 40 minutes, stirring occasionally, until the vegetables are tender and caramelized.
-
Once the vegetables are out of the oven, I lower the temperature to 300°F (150°C). I transfer the roasted vegetables to a bowl and stir in another 2 tablespoons of olive oil, chopped olives, parsley, red wine vinegar, capers, sugar, and a pinch of salt. I mash the mixture gently with a fork, breaking it down just enough to get that saucy, relish-like consistency, but I make sure to keep some texture.
-
For the fish, I pat the fillets dry and place them on the same sheet pan (still lined with parchment). I brush the tops with the remaining olive oil and season them with salt and pepper. The cod bakes for 12 to 15 minutes, until it flakes easily with a fork.
-
To serve, I divide the caponata among plates and top each with a cod fillet. I like to finish with a final drizzle of olive oil and serve with couscous or thick slices of crusty bread to soak up every drop.
Servings and Timing
-
Servings: 4
-
Prep Time: 5 minutes
-
Cook Time: 60 minutes
-
Total Time: 65 minutes
Variations
-
I sometimes swap the cod for haddock or halibut, depending on what’s freshest.
-
For a heartier version, I serve the caponata and fish over a bed of farro or barley.
-
If I want a little heat, I add a pinch of red pepper flakes to the vegetable mix before roasting.
-
No capers? I’ve used chopped pickles or even green olives in a pinch and loved the result.
-
For a vegetarian version, I skip the fish entirely and pile the caponata over a slice of grilled polenta or toast.
Storage/Reheating
I store leftovers in an airtight container in the fridge for up to 3 days. To reheat, I gently warm the cod and caponata in a 300°F oven for about 10 minutes, or until warmed through. The caponata tastes great at room temperature, so sometimes I just reheat the fish and spoon the vegetables cold on the side.

FAQs
What is caponata?
Caponata is a Sicilian eggplant dish that’s sweet, sour, and savory. It typically includes eggplant, tomatoes, celery, olives, capers, and vinegar. I think of it as the Italian version of ratatouille—with a tangy twist.
Can I make this dish ahead of time?
Yes, I often make the caponata a day in advance. It actually tastes better after sitting for a few hours or overnight. I just add the fish fresh before serving.
Do I need to peel the eggplant?
Nope. I leave the skin on the eggplant. It softens during roasting and adds nice texture to the finished dish.
Can I use frozen fish?
Absolutely. I thaw the fish completely and pat it dry before cooking. This helps it roast evenly and prevents excess moisture from watering down the dish.
What wine pairs well with this dish?
I like to serve it with a crisp white wine, like a Sicilian Grillo or a dry Pinot Grigio. The acidity complements the caponata beautifully.
Conclusion
This sheet-pan cod with caponata is the kind of effortless yet elegant meal I love to make when summer produce is at its peak. The combination of sweet, savory, and tangy flavors with tender, flaky fish is pure Mediterranean comfort. Whether I’m serving it with couscous, grains, or just a slice of bread, it never fails to impress—and it’s just as easy to make as it is to love.
Print
Need a Mediterranean Vacation? This Sheet-Pan Dinner Is the Next Best Thing
This Mediterranean-inspired sheet-pan dinner features flaky roasted cod served over a vibrant, sweet-and-sour caponata made with eggplant, cherry tomatoes, bell pepper, and capers. It’s bold, comforting, and perfect for a no-fuss yet elegant meal.
- Total Time: 65 minutes
- Yield: 4 servings
Ingredients
- 1 Italian eggplant or 2 Chinese eggplants, cut into 1-inch pieces
- 1 red bell pepper, cut into 1-inch pieces
- 1 cup cherry tomatoes
- 1 yellow onion, diced
- 4 tablespoons extra-virgin olive oil (divided)
- Kosher salt, to taste
- 1/4 cup Castelvetrano olives, roughly chopped
- 2 tablespoons fresh parsley, finely chopped
- 1 tablespoon red wine vinegar
- 1 tablespoon non-pareil capers
- 1 teaspoon granulated sugar
- Freshly ground black pepper, to taste
- 4 skinless cod fillets (or halibut/haddock)
- Pasta, pearl couscous, or crusty bread for serving
Instructions
- Preheat oven to 400°F (200°C) and line a baking sheet with parchment paper.
- Spread eggplant, bell pepper, cherry tomatoes, and onion on the sheet. Drizzle with 2 tbsp olive oil and season with salt. Roast for 30–40 minutes, stirring occasionally, until tender and caramelized.
- Reduce oven to 300°F (150°C). Transfer roasted vegetables to a bowl. Stir in 2 tbsp olive oil, chopped olives, parsley, red wine vinegar, capers, sugar, and a pinch of salt. Gently mash to a relish-like texture.
- Pat cod fillets dry and place on the same sheet pan. Brush with olive oil, season with salt and pepper. Bake for 12–15 minutes until the fish flakes easily.
- To serve, divide caponata among plates, top with fish, and drizzle with olive oil. Serve with couscous, grains, or crusty bread.
Notes
- Swap cod with halibut or haddock.
- Serve over farro or barley for a heartier meal.
- Add red pepper flakes for heat.
- No capers? Use chopped pickles or extra olives.
- Make it vegetarian by skipping the fish and serving caponata over grilled polenta or toast.
- Prep Time: 5 minutes
- Cook Time: 60 minutes
- Category: Main Dish
- Method: Sheet Pan
- Cuisine: Mediterranean
- Diet: Gluten Free
Nutrition
- Serving Size: 1 plate (with fish and caponata)
- Calories: 350
- Sugar: 6g
- Sodium: 550mg
- Fat: 18g
- Saturated Fat: 3g
- Unsaturated Fat: 13g
- Trans Fat: 0g
- Carbohydrates: 20g
- Fiber: 5g
- Protein: 30g
- Cholesterol: 60mg