Quick Recipe Version (TL;DR)
Quick Ingredients
- 1 1/2 lb (680 g) firm white fish fillets (cod, halibut, haddock, or sea bass)
- 1/4 cup (60 ml) extra-virgin olive oil
- 1/2 cup (20 g) chopped fresh cilantro
- 1/2 cup (20 g) chopped fresh parsley
- 4 garlic cloves, minced
- 1 1/2 tsp ground cumin
- 1 1/2 tsp sweet paprika
- 1/2 tsp kosher salt, plus more to taste
- 1/4 tsp freshly ground black pepper
- 1/8 tsp cayenne (optional)
- 1 tbsp lemon zest (from 1 large lemon)
- 3 tbsp (45 ml) fresh lemon juice
- 2 cups (300 g) cherry tomatoes, halved
- 1 large red bell pepper, thinly sliced
- 1 small yellow onion, thinly sliced
- 2 tbsp (30 ml) water
- 1 tbsp chopped preserved lemon (optional) or 1 tsp extra lemon zest
Do This
- 1. Heat oven to 425°F (220°C). Lightly oil a 9 x 13-inch baking dish.
- 2. Mix chermoula: olive oil, cilantro, parsley, garlic, cumin, paprika, salt, pepper, cayenne (optional), lemon zest, and lemon juice.
- 3. Coat fish with about 2/3 of the chermoula; marinate 30 minutes (refrigerated).
- 4. Toss tomatoes, bell pepper, and onion with remaining chermoula + 2 tbsp water; spread in baking dish.
- 5. Nestle fish into the vegetables; spoon any marinade over top. Add preserved lemon if using.
- 6. Bake 14–18 minutes until fish flakes easily and reaches 145°F (63°C) in the thickest part.
- 7. Rest 3 minutes; serve with pan juices, extra herbs, and lemon wedges.
Why You’ll Love This Recipe
- Big flavor, minimal effort: A punchy chermoula marinade does most of the work.
- One-pan dinner: Fish bakes right on top of sweet tomatoes and peppers, soaking up the juices.
- Weeknight-friendly but special: Ready fast, yet it tastes restaurant-level aromatic and vibrant.
- Flexible: Works with many firm white fish and adapts easily for mild or spicy preferences.
Grocery List
- Produce: fresh cilantro, fresh parsley, garlic, 1 large lemon (plus extra wedges for serving), cherry tomatoes, 1 large red bell pepper, 1 small yellow onion, preserved lemon (optional)
- Dairy: none
- Pantry: extra-virgin olive oil, ground cumin, sweet paprika, kosher salt, black pepper, cayenne pepper (optional)
Full Ingredients
Fish
- 1 1/2 lb (680 g) firm white fish fillets (about 4 pieces), such as cod loin, halibut, haddock, or sea bass (1 to 1 1/2 inches thick preferred)
- 1/2 tsp kosher salt (for lightly seasoning the fish before marinating, optional but recommended)
Chermoula Marinade
- 1/4 cup (60 ml) extra-virgin olive oil
- 1/2 cup (20 g) fresh cilantro, finely chopped (tender stems included)
- 1/2 cup (20 g) fresh parsley, finely chopped (flat-leaf preferred)
- 4 garlic cloves, minced or finely grated
- 1 1/2 tsp ground cumin
- 1 1/2 tsp sweet paprika
- 1 tbsp lemon zest (from 1 large lemon)
- 3 tbsp (45 ml) fresh lemon juice
- 1/2 tsp kosher salt
- 1/4 tsp freshly ground black pepper
- 1/8 tsp cayenne pepper (optional, for gentle heat)
Vegetables for Baking
- 2 cups (300 g) cherry tomatoes, halved (or quartered if large)
- 1 large red bell pepper, seeded and thinly sliced
- 1 small yellow onion, thinly sliced
- 2 tbsp (30 ml) water (helps create steam and pan juices)
- 1 tbsp chopped preserved lemon (optional) or 1 tsp extra lemon zest
To Serve (Optional but Excellent)
- Fresh lemon wedges
- Extra chopped cilantro or parsley
- Couscous, rice, or crusty bread to soak up the sauce

Step-by-Step Instructions
Step 1: Preheat the oven and prep the baking dish
Arrange a rack in the middle of the oven and preheat to 425°F (220°C). Lightly brush or drizzle a 9 x 13-inch baking dish (or similar size) with a little olive oil to prevent sticking and help the vegetables caramelize at the edges.
Step 2: Make the chermoula
In a medium bowl, stir together the 1/4 cup (60 ml) olive oil, cilantro, parsley, garlic, cumin, paprika, lemon zest, lemon juice, 1/2 tsp kosher salt, black pepper, and cayenne (if using). The mixture should look like a loose, spoonable herb paste. If it feels very thick, add 1–2 tsp water.
Step 3: Marinate the fish
Pat the fish dry with paper towels. If you like, season both sides lightly with 1/2 tsp kosher salt total (this is optional; skip if you prefer to rely solely on the salt in the chermoula).
Spread about 2/3 of the chermoula over the fish, coating the top and sides well. Cover and marinate in the refrigerator for 30 minutes. (If you’re short on time, even 10 minutes helps, but 30 minutes gives the herbs and spices time to bloom.)
Step 4: Dress the vegetables and build the base
In a large bowl, toss the cherry tomatoes, red bell pepper, and onion with the remaining 1/3 of the chermoula plus 2 tbsp (30 ml) water. Spread the vegetables evenly in the prepared baking dish, creating a colorful bed for the fish.
If using preserved lemon, sprinkle 1 tbsp over the vegetables now (or reserve it to scatter on top at the end for a brighter pop).
Step 5: Nestle the fish into the pan
Remove the fish from the refrigerator. Nestle the fillets into the vegetables so the bottom of the fish touches the saucy tomato-pepper mixture. Spoon any remaining marinade from the plate/bowl over the fish.
This setup lets the fish stay moist while the vegetables release juices and concentrate into a savory, lemony pan sauce.
Step 6: Bake until tender, flaky, and aromatic
Bake uncovered at 425°F (220°C) for 14–18 minutes, depending on thickness. The fish is done when it flakes easily with a fork and reaches 145°F (63°C) at the thickest part (check with an instant-read thermometer).
If you want a little extra color on top, you can broil for 1–2 minutes at the end, watching closely so the herbs don’t burn.
Step 7: Rest briefly and serve with the pan juices
Let the dish rest for 3 minutes so the juices settle. Spoon the tomatoes, peppers, onions, and plenty of the fragrant pan juices over each portion.
Finish with extra chopped herbs and lemon wedges. Serve hot with couscous, rice, or crusty bread to soak up the sauce.
Pro Tips
- Choose thick fillets for the best bake: Pieces that are 1 to 1 1/2 inches thick stay juicy and are less likely to overcook.
- Dry the fish first: Patting the fish dry helps the chermoula cling and prevents watery sauce.
- Use a thermometer for perfect doneness: Pull the fish when it hits 145°F (63°C) in the thickest part. If you don’t have one, look for opaque flesh that flakes easily.
- Make it saucier (great for couscous): Add an extra 2 tbsp (30 ml) water or fish/vegetable stock to the pan before baking.
- Preserved lemon shortcut: If you have it, preserved lemon adds a classic Moroccan lift. Rinse quickly, then finely chop the peel.
Variations
- Spicy chermoula: Increase cayenne to 1/2 tsp, or add 1 tsp harissa to the chermoula.
- Chermoula-baked salmon: Swap in 1 1/2 lb (680 g) salmon fillets and bake 12–16 minutes at 425°F (220°C), depending on thickness.
- Add olives or capers: Stir in 1/3 cup pitted green olives (or 2 tbsp capers) with the vegetables for extra briny contrast.
Storage & Make-Ahead
Refrigerate: Store leftovers in an airtight container for up to 2 days. Fish is best the day it’s made, but the flavors stay delicious.
Reheat gently: Warm in a covered baking dish at 300°F (150°C) for about 10–15 minutes until just heated through, or microwave at 50% power in short bursts to avoid drying out.
Make-ahead options: You can mix the chermoula up to 24 hours ahead and refrigerate it. You can also slice the vegetables up to 1 day ahead. Marinate the fish for 30–45 minutes for best texture; avoid marinating much longer than 2 hours since the lemon can start to “cook” the fish and make it firmer.
Nutrition (per serving)
Approximate, based on 4 servings: 320 calories, 35 g protein, 17 g fat, 8 g carbohydrates, 3 g fiber, 4 g sugar, 520 mg sodium.
