Fish in Veracruz Sauce is a delicious 30-minute, one-pan dish featuring white fish fillets simmered in a zesty tomato sauce flavored with capers, olives, and onions. It’s so simple and delicious that you’ll rush to add it to your weekly dinner rotation!

I first tried Veracruz-style fish, pescado a la Veracruzana, at a restaurant in Cancun, and I was hooked (pardon the pun). And because dining out equals research and development for me, I came home ready to recreate a paleo, Whole30 and keto version of this classic Mexican seafood dish with easy-to-find pantry staples. It took me a while to perfect this dish, but my version of Fish in Veracruz Sauce can be on the table in less than 30 minutes!
Table of Contents
What is Veracruz sauce?
Veracruz sauce is a tomato-based sauce from the region in the Gulf Coast of Mexico that features tomatoes, capers, olives, oregano and bay leaves. If you’re thinking that this sauce is reminiscent of a Mediterranean dish, you aren’t wrong—these are definitely classic Mediterranean ingredients! The Port of Veracruz is one of the oldest in Mexico and many regional Veracruz dishes—like this sauce—incorporate Mediterranean components that were originally brought over by Spaniards.
This sauce is super flavorful but it isn’t supposed to be spicy, so it’s perfect for folks who can’t handle the heat. And because I love shortcuts to deliciousness, my version utilizes canned fire roasted diced tomatoes to add a smoky depth to the sauce without adding extra prep time!

Feel free to change up the protein!
Although this dish is traditionally cooked with whole fish or fish fillets (e.g., red snapper, tilapia, cod, sea bass, etc.), you can definitely substitute a different protein. Some tasty swaps include shrimp, scallops, and boneless and skinless chicken breast or thighs. Simply season the protein with salt and pepper before simmering in the sauce until cooked through!

Ingredients

- Boneless, skinless white fish fillets: Although this dish is typically made with whole red snapper, I like to use boneless and skinless white fish fillets to make a fast and simple weeknight dish. Chilean sea bass, cod, tilapia, and halibut are great choices—just make sure they’re all the same thickness to ensure even cooking.
- Fire-roasted diced canned tomatoes: I love the ease that comes with dumping in a whole can of fire-roasted diced canned tomatoes—no cutting, roasting or draining necessary!
- Extra virgin olive oil
- Yellow onion: The thinner you cut the onions, the faster they’ll soften in the skillet!
- Anaheim pepper: I add diced Anaheim pepper for flavor rather than heat—this dish isn’t traditionally spicy so an Anaheim pepper, which is just a touch spicier than a bell pepper, is perfect.
- Garlic cloves
- Green olives: I love using pitted Castelvetrano olives because they’re nice and buttery.
- Capers: Add a delightful tang and acidity that complements the fish.
- Dried oregano
- Dried bay leaf
- Diamond Crystal kosher salt
- Freshly ground black pepper
- Fresh cilantro
- Lime
How to make fish in Veracruz sauce
Heat a large skillet over medium heat. Once the pan is hot, add the oil.

Toss in the onion and sprinkle on some salt. Cook until softened, about 8 to 10 minutes.

Stir in the peppers and garlic. Cook until fragrant, about 30 seconds.

Add the canned tomatoes, green olives, capers, dried oregano and bay leaf.

Bring the sauce to a boil and decrease the heat to maintain a simmer.

Taste the sauce and season with salt and pepper if needed.

Pat the fish filets dry with a paper towel and sprinkle both sides with salt and pepper.

Nestle the fish filets into the sauce and place some of the sauce on top of each filet.

Cover the skillet and cook on low heat for about 10 minutes or until fish is opaque and cooked through, about 140°F on an instant-read thermometer.

Sprinkle on some fresh cilantro…

…and serve the fish with lime wedges so you can squeeze on some fresh lime juice before taking a bite.

To keep this paleo, Whole30, and keto, you can serve this dish with cauliflower rice in lieu of white rice. It also tastes great served with my Instant Pot Crispy Potatoes!
Other Paleo Seafood Dishes
- Hash Brown Fish (page 150 in Nom Nom Paleo: Let’s Go!)
- Ginger Scallion Fish Fillets (page 156 in Nom Nom Paleo: Let’s Go!)
- Umami Fried Shrimp (page 164 in Nom Nom Paleo: Let’s Go!)
- Lobster Tails with Thai Red Curry Sauce (page 170 in Nom Nom Paleo: Let’s Go!)
- Air Fryer Fish Sticks
- Fried Calamari
- Shrimp and Avocado Salad
- Paleo Walnut Shrimp
Looking for more recipe ideas? Head on over to my Recipe Index. You’ll also find exclusive recipes in my cookbooks, Nom Nom Paleo: Food for Humans (Andrews McMeel Publishing 2013), Ready or Not! (Andrews McMeel Publishing 2017), and Nom Nom Paleo: Let’s Go! (Andrews McMeel Publishing 2022).
PRINTER-FRIENDLY RECIPE CARD
Fish in Veracruz Sauce (Paleo, Keto, Whole30, Gluten Free)

Ingredients
- 2 tablespoons extra virgin olive oil
- 1 medium yellow onion halved and thinly sliced
- Diamond Crystal kosher salt
- 1 Anaheim pepper seeded and finely diced
- 3 garlic cloves minced
- 14.5 ounce canned fire roasted diced tomatoes
- ½ cup green olives pitted and cut in half
- 1 tablespoon drained capers
- ½ teaspoon dried oregano
- 1 dried bay leaf
- freshly ground black pepper
- 4 white fish filets (skinless and boneless) about 6 ounces each and 1-inch thick (sea bass, red snapper, halibut, cod, or tilapia)
- ¼ cup minced fresh cilantro
- 1 lime cut into wedges
Instructions
- Heat a large skillet over medium heat and add the oil when the pan is hot.
- Toss in the onion and sprinkle on some salt and cook until softened, about 8 to 10 minutes.
- Stir in the chopped pepper and garlic. Cook until fragrant, about 30 seconds.
- Add the tomatoes, green olives, capers, dried oregano, and bay leaf.
- Bring the sauce to a boil and decrease the heat to maintain a simmer. Taste the sauce and season with salt and pepper if needed.
- Pat the fish filets dry with a paper towel and sprinkle both sides with salt and pepper.
- Nestle the fish filets into the sauce and place some of the sauce on top of each one. Cover the skillet and cook on low heat for about 10 minutes or until fish is opaque and cooked through, about 140°F on an instant-read thermometer.
- Sprinkle on some fresh cilantro and serve the fish with lime wedges so you can squeeze on some fresh lime juice on before taking a bite.
Video
Notes
Nutrition
Nutrition information is automatically calculated, so should only be used as an approximation.
Made this for Christmas last year and 16 ladies last night and it was a big hit both times.
I’ve made this recipe 3 times now; it’s always delicious! Thawed tilapia adds a wonderful sweetness–it’s my go-to for this recipe. I always add a couple splashes of vegetable stock to ensure there’s actual sauce. I’ve tried this with serrano and poblano peppers, as anaheim peppers aren’t available near me. The poblanos added a pleasant smokiness but no heat; I prefer the serranoes.
Another question!!! I have a family member who refuses to eat tomatoes or olives..usually what I do is take the can of tomatoes and buzz it in the blender and use that…he will eat it that way. Do you think the results would be the same if I buzzed the tomatoes and the olives in the blender or would it end up to souply?? Thank you!