Mediterranean Baked Fish with Tomatoes and Olives
This Mediterranean baked fish is one of those dishes that looks impressive but takes all of 30 minutes. Flaky white fillets bake over a tumble of cherry tomatoes, olives, and capers until the tomatoes soften into a warm, savory pan sauce.

You get bright lemon, briny bites from the olives, and a gentle herbal note from dried oregano. It is the kind of dinner worth lighting a candle for, even on a Tuesday.
What Makes This Baked Fish So Good
The fish stays tender because it sits above the tomatoes, not submerged in them. The steam rising through the fillets keeps them moist while the edges pick up a little golden color from the hot baking dish.
The tomato mixture does double duty: it seasons the fish from below as it cooks and becomes a chunky, rustic sauce to spoon over each portion. A handful of fresh parsley and a crumble of feta at the end pull everything together in a way that feels intentional, never fussy.
Ingredients

- 4 (6 oz) firm white fish fillets: cod, halibut, or sea bass all hold their shape well.
- 3 tbsp olive oil, divided: a fruity extra-virgin works best here.
- 3 garlic cloves, minced
- 1 tsp dried oregano
- ¾ tsp kosher salt
- ¼ tsp black pepper
- 1 pint cherry tomatoes, halved: any color, ripe but firm.
- ½ cup pitted Kalamata olives, halved: these bring the brininess.
- 2 tbsp capers, drained
- Juice of ½ lemon, plus thin lemon slices for topping
- Pinch red pepper flakes (optional)
- 2 tbsp chopped fresh parsley
- ¼ cup crumbled feta (optional)
Variations / Substitutions
- Fish swap: Use halibut, barramundi, or even thick salmon fillets; salmon will be richer and cook in about the same time.
- Olive switch: Green Castelvetrano olives are milder and buttery; halve them the same way.
- Extra vegetables: A handful of thinly sliced red onion or quartered artichoke hearts can go into the tomato mix.
- Dairy-free: Skip the feta and finish with a drizzle of good olive oil.
- Herb change: If you don’t have fresh parsley, a small handful of torn basil or a sprinkle of dried parsley at the end still works.
If you like this combination of flavors, you might also enjoy Sheet Pan Greek Chicken.
How to Make Mediterranean Baked Fish with Tomatoes and Olives
Step 1: Season the Fish

Preheat the oven to 400°F (200°C). In a small bowl, stir together 2 tablespoons of the olive oil, the minced garlic, dried oregano, ¾ teaspoon salt, and ¼ teaspoon black pepper. Pat the fish fillets dry with paper towels, then rub the oil and herb mixture all over them. Set the fish aside while you prepare the tomatoes.
The fillets should look glossy and feel lightly gritty from the salt and oregano. That brief rest gives the seasoning a head start on the surface of the fish.
Step 2: Toss the Tomato Mixture

In a medium bowl, combine the halved cherry tomatoes, olives, capers, lemon juice, the remaining 1 tablespoon of olive oil, and a pinch of red pepper flakes if you want a little warmth. Toss everything together until the tomatoes are slick and the capers and olives are evenly distributed.
The tomatoes will release a few seeds and some juice, which is exactly what you want. That liquid will mingle with the fish drippings in the oven and turn into a savory pan sauce.
Step 3: Assemble the Dish

Spread the tomato mixture in a baking dish that holds the fillets without crowding, about a 9×13 inch dish. Rest the seasoned fish fillets on top of the tomatoes, then tuck a few thin lemon slices around and over the fish.
You should see bits of tomato peeking out from under the fillets. Those exposed pieces will blister and char slightly while the fish steams above them.
Step 4: Bake the Fish

Slide the dish into the preheated oven and bake for 15 to 18 minutes. The fish is done when it looks opaque all the way through and flakes easily when you press it with a fork. If your fillets are on the thicker side, they may need an extra couple of minutes; check at the 15-minute mark.
The kitchen will smell like warm oregano and roasted tomatoes, and the edges of the fish will turn barely golden. You will see the pan juices bubbling around the sides, picking up richness from the olive oil.
Step 5: Finish and Serve

Pull the dish from the oven and scatter the chopped fresh parsley over the top. If you are using feta, crumble it on now while everything is hot so the cheese softens slightly. Spoon some of the pan juices and tomatoes over each fillet as you plate, and serve right away with extra lemon wedges.
The fish will be tender and flaky, the tomatoes jammy, and the olives salty and warm. Every forkful catches a bit of everything, which is why this dish feels special for how short the time really was.
Tips for Tender Fish
- Start with good fish: Fresh fillets should have a clean, ocean scent and flesh that springs back when you press it. If you are using frozen, thaw them overnight in the fridge and pat them very dry.
- Check early: White fish goes from just done to dry quickly. Start peeking at the shortest bake time, and pull the dish out the moment the center looks opaque and flakes with light pressure.
- Use a snug baking dish: If the dish is too large, the tomato juices will spread thin and evaporate instead of forming a sauce. You want the fillets and tomatoes to fit with just a little room around them.
- Make ahead in parts: You can rub the fish with the oil mixture and toss the tomatoes up to 4 hours ahead. Keep them separate in the fridge, then assemble and bake right before dinner.
Bake times by fillet thickness:
| Thickness | Approximate time at 400°F |
|---|---|
| 1 inch | 12 to 14 minutes |
| 1 ½ inches | 15 to 18 minutes |
| 2 inches | 18 to 22 minutes |
Storing Leftover Fish
Refrigerate any leftovers in an airtight container for up to 2 days. Gently reheat in a microwave at 50% power or flake the fish cold over a salad and spoon the tomatoes and juices on top like a dressing. The olive and caper flavors often deepen overnight.
What to Serve With Mediterranean Baked Fish
A hunk of crusty bread is almost mandatory for sopping up the pan juices. A simple arugula salad dressed with lemon and olive oil adds a peppery contrast that cuts the richness of the fish. If you want something heartier, a side of lemon rice or couscous soaks up the sauce and rounds out the plate. A chilled glass of dry white wine, like Assyrtiko or Pinot Grigio, feels right here.
Frequently Asked Questions
Can I use a different type of fish?
Yes. Any firm white fish such as tilapia, haddock, or grouper works well. Thick salmon fillets are a good choice too, though the flavor will be richer and the cook time nearly the same.
Can I omit the olives?
You can, but you will lose the briny punch that balances the sweet tomatoes. Add an extra tablespoon of capers or mash a couple of anchovy fillets into the olive oil for a similar salty depth.
Can I prepare this ahead of time?
Partially. Season the fish and mix the tomato-olive mixture up to 4 hours in advance and store them separately in the refrigerator. Do not let the raw fish sit in the acidic tomato mixture for hours or the acid will start to cure the surface of the fillets.
What if I don’t have fresh parsley?
You can skip it or use a small pinch of dried parsley, but fresh parsley adds a bright, clean finish that ties the dish together. A few torn fresh basil leaves scattered over at the end would also be lovely.

Mediterranean Baked Fish Recipe
Ingredients
Method
- Preheat oven to 400°F (200°C). Mix 2 tbsp olive oil, garlic, oregano, salt, and pepper. Pat fish dry and rub mixture all over. Set aside.
- In a bowl, toss tomatoes, olives, capers, lemon juice, remaining 1 tbsp olive oil, and red pepper flakes until combined.
- Spread tomato mixture in a baking dish about 9×13 inches. Rest fish on top and add lemon slices.
- Bake 15 to 18 minutes, until fish is opaque and flakes easily with a fork.
- Remove from oven, scatter parsley and feta over the top, and spoon pan juices over each fillet. Serve hot with lemon wedges.
