Flaky white fish tucked into blistered tomatoes, briny olives, capers, and sweet roasted peppers is the kind of dinner that tastes like it took a lot more effort than it did. The fish stays tender because it finishes in the sauce instead of drying out on a sheet pan, and the vegetables do double duty: they roast down into a savory base while the juices from the tomatoes and wine turn into a light pan sauce around the fillets.
The trick here is to give the vegetable mixture a head start. Ten minutes in the oven softens the tomatoes and wakes up the garlic before the fish goes in, so the fillets aren’t sitting there waiting for the vegetables to catch up. A little white wine or broth keeps the pan juicy without making it watery, and the olives, capers, and roasted peppers bring enough salt and acidity that you don’t need to overcomplicate the seasoning.
Below you’ll find the timing that keeps the fish from overcooking, plus a few smart swaps if you’re working with a different white fish or need to skip the wine.
The fish came out perfectly flaky, and the tomatoes and olives made their own sauce in the pan. I was worried the capers would be too strong, but they just brightened everything up.
Save this Mediterranean baked fish for a fast one-pan dinner with flaky fish, briny olives, and a bright tomato sauce.
The Secret to Keeping the Fish Tender in a Tomato-Packed Pan
The vegetables need a head start because fish cooks faster than almost everything else in the pan. If you add the fillets too soon, the tomatoes are still firm and the fish ends up overcooked while you wait for the sauce to come together. That first roast softens the tomatoes, tames the garlic, and gives the olives and capers a chance to release their briny edge into the oil.
The other piece that matters is the baking dish. A 9×13 gives the vegetables room to roast instead of steam. If you crowd them into a smaller dish, the tomatoes collapse into water before they caramelize, and the fish sits in a shallow puddle instead of a flavorful sauce.
What Each Ingredient Is Actually Doing in This Dish

- White fish fillets — Cod, halibut, and sea bass all work because they stay flaky and mild enough to pick up the sauce. Use the thickest fillets you can find if you want the most forgiving cook time; very thin fillets can overcook before the vegetables finish.
- Cherry tomatoes — These soften into the base of the sauce and give you the sweetest juices in the pan. Larger tomatoes can work if you cut them into chunks, but they’ll usually release more liquid and give you a looser result.
- Kalamata olives and capers — This is the salty backbone of the dish. If you skip both, the pan tastes flat, so keep at least one briny element in place.
- Jarred roasted red peppers — They add sweetness and a soft, silky texture that balances the sharper ingredients. Fresh peppers won’t give you the same mellow result unless you roast them first.
- Dry white wine or broth — Wine gives the sauce a little lift and complexity, but broth works well if that’s what you have. Use a dry broth, not a strongly seasoned one, or the sauce can drift too salty once the olives and capers go in.
- Olive oil — It helps the vegetables roast and carries the oregano through the pan. This is one place where decent olive oil matters because it’s part of the finished sauce, not just a cooking fat.
Roasting the Vegetables First, Then Letting the Fish Finish the Job
Building the Savory Base
Combine the tomatoes, olives, capers, roasted red peppers, garlic, wine or broth, olive oil, oregano, and red pepper flakes right in the baking dish. Stir them so the garlic gets coated in oil and the tomatoes sit in a single layer as much as possible. Roast this mixture for 10 minutes until the tomatoes look blistered and the garlic smells sweet, not raw. If the pan looks dry at this stage, add a splash more wine or broth; if it looks soupy, that’s a sign the dish is too crowded.
Nestling in the Fish
Season the fish with salt and pepper, then tuck the fillets into the hot vegetables. Put the thicker pieces toward the edges of the dish if your oven has hot spots, because the center often cooks a touch faster. The fish should sit partially submerged in the vegetables, not buried, so the tops can steam gently while the bottoms pick up flavor from the sauce.
Knowing When It’s Done
Bake 12 to 15 minutes more, depending on the thickness of the fillets. The fish is done when it flakes easily with a fork and the center turns opaque but still looks moist. If you wait until it looks completely firm in the oven, it’ll be dry by the time it reaches the table. Pull the dish as soon as the thickest part separates in clean flakes, then finish with parsley and lemon wedges so the sauce tastes bright instead of heavy.
Three Smart Ways to Make This Work for Your Pantry
Make It Dairy-Free and Naturally Gluten-Free
This dish already lands in both camps as written. Serve it with rice, potatoes, or crusty bread if gluten isn’t a concern, but the fish and vegetable base don’t need any dairy or flour to taste complete.
Skip the Wine Without Losing Depth
Use broth in place of the wine if you want to keep it alcohol-free. The sauce will be a little rounder and less sharp, so a squeeze of lemon at the end matters even more.
Use Salmon When You Can’t Find White Fish
Salmon works well, but it changes the balance. The richer fish stands up to the briny sauce and needs a similar bake time if the fillets are thick, though the finished dish will taste heavier and less delicate than the original.
Storage and Reheating
- Refrigerator: Store leftovers in a sealed container for up to 2 days. The fish will firm up a bit, but the sauce holds up well.
- Freezer: I don’t recommend freezing this one. The fish turns crumbly and the tomatoes lose their texture after thawing.
- Reheating: Warm gently in a covered skillet over low heat with a splash of broth or water, or reheat in a 300F oven just until heated through. High heat dries the fish fast and makes the sauce split into oily patches.
Answers to the Questions Worth Asking

Mediterranean Baked Fish
Ingredients
Equipment
Method
- Preheat the oven to 400F and grease a 9x13 baking dish.
- Combine cherry tomatoes, Kalamata olives, capers, roasted red peppers, garlic, white wine or broth, olive oil, dried oregano, and red pepper flakes in the baking dish.
- Roast the vegetable mixture at 400F for 10 minutes, until the tomatoes soften and the garlic smells fragrant.
- Season the fish fillets with salt and pepper.
- Nestle the fish fillets into the roasted vegetable mixture.
- Bake at 400F for 12-15 minutes more, until the fish flakes easily with a fork and looks opaque throughout.
- Garnish with fresh parsley and serve with lemon wedges.