This post contains affiliate links, which means I may earn a commission if you purchase through those links (at no extra cost to you).
This authentic Caldo de Pescado (Mexican Fish Soup) is popular on Fridays during Lent and beloved at parties all year round. It’s simple to make and full of flavor, and you can customize it with additional vegetables such as corn, zucchini, or broccoli.

Meggan’s notes
This recipe is from my husband, born and raised in Aguascalientes, Mexico. He used to run an independent food stand in his town, and this was his most popular recipe on Fridays during Lent (will, maybe this and the Shrimp Ceviche). The tourists were always hungry after visiting El Cristo Roto statue and sanctuary.
The recipe itself is simple and straightforward. If you can find Mexican oregano, it adds a truly unique flavor to the soup. It’s the secret ingredient you taste, but can’t identify, at restaurants and resorts south of the border. If you don’t have it, leave it out rather than substituting Italian oregano.
To plan for leftovers, do not add the fish to the soup. Cool the broth with vegetables and refrigerate separately. When you’re ready to eat, add the fish to the soup base and heat to 165 degrees on the stove or in the microwave.
Mexican Fish Soup Ingredients

At a Glance: Here is a quick snapshot of what ingredients are in this recipe.
Please see the recipe card below for specific quantities.
- Olive oil: My favorite brand is Cobram Estate 100% California Select extra virgin olive oil.
- Onions, carrots, and celery: Mirepoix, a delicious mix that is 50% onion and 25% each carrot and celery.
- Broth: I used vegetable broth here, so this soup is safe for Fridays during Lent. You could also substitute fish stock or shrimp stock.
- Tomatoes: For a chunkier texture, substitute diced tomatoes or 1 pound Roma tomatoes, finely chopped.
- Potatoes: Waxy varieties like red potatoes or Yukon golds hold their shape well in this soup, even after boiling.
- Jalapeños: Some jalapeños are very mild with a grassy taste, and some are hot as fire. You never know what you’re going to get until you take a bite! If you’re worried about the spice, remove any seeds and inner membranes for the chiles (and wear gloves if you want to).
- Cumin and coriander
- Mexican oregano: Italian oregano is not a substitute here, so if you can’t find Mexican oregano, just omit it.
- Salt and pepper: Always taste your recipes at the end to adjust for seasonings. I keep a pint jar of “tasting spoons” next to my stove just for this purpose.
- Tilapia: To thaw the tilapia, place it in a bowl under cool water for 20 minutes or thaw it overnight in the refrigerator.
- Cilantro: If you hate cilantro, just leave it out.
How to Make Caldo de Pescado
- In a large saucepan, heat olive oil over medium-high heat until shimmering. Add onion, carrots, celery, and garlic. Cook, stirring occasionally, until the vegetables have softened, about 5 minutes.

- Stir in vegetable broth, crushed tomatoes, potatoes, jalapeño, cumin, coriander, Mexican oregano, and ½ teaspoon salt. Bring to a boil; reduce heat and simmer uncovered for 10 minutes.

- Stir in tilapia pieces and heat until cooked through, about 4 to 5 minutes longer.

- Season to taste with salt and pepper (I like ½ teaspoon additional salt and ¼ teaspoon pepper). Garnish with cilantro and serve with lime wedges and bread.

Mexican Fish Soup Tips and Variations
- Yield: This recipe makes 4 hearty servings of soup. Each serving is about 2 cups of broth with vegetables and ½ cup tilapia.
- Albondigas soup (meatball soup): Add turkey meatballs to the soup instead of shredded chicken, it’s absolutely delicious!
- Mexican Chicken Soup (Caldo de Pollo): Follow the recipe as written, but substitute chicken broth for the vegetable broth and add 3 cups cooked chicken (shredded or cubed). Heat until cooked through, about 4 to 5 minutes.
- Mexican vegetable soup: Follow the recipe as written, but leave out the chicken and add way more veggies! Zucchini, cubed potatoes, and corn are a good place to start. Want to make it like they do in Mexico? Add your corn still on the cob: cut each cob into 3 or 4 chunks and add them to the pot. Or, you can buy them in the freezer that size sometimes, too.
- Taco Soup: Made with ground beef, canned veggies, and taco seasoning, this Tex-Mex favorite is another delicious, hearty meal option.
How to Store Mexican Fish Soup
This soup is best enjoyed the day it is made. To save some for leftovers, portion out enough broth for how many servings you want to enjoy, add it to a separate saucepan, and add 1 tilapia filet (cut into 1-inch pieces) per person.
Store the leftover broth and vegetables covered in the refrigerator for up to 4 days, and add the fish to it when you want to eat it, heating it over the stove until the fish is cooked through.
Freezer: To freeze the soup, follow the plan of leftovers, but do not add the fish. Cool the broth with vegetables, pack into freezer-safe containers, and leave 1 inch headspace for expansion. Label, date, and freeze up to 2 months. Thaw overnight in the refrigerator. Add the fish to the soup base and heat to 165 degrees on the stove or in the microwave.

Frequently Asked Questions
This Mexican beef soup is made with a bone-in beef shank.
This classic soup is made with chunks of pork or chicken, hominy (dried corn), chiles, and spices. Sometimes, you add a green salsa made with tomatillos and poblano peppers on top.
More Mexican recipes
Mexican Recipes
Chicken Tinga
Mexican Recipes
Recipe for Carne Asada Meat
Mexican Recipes
Tacos Al Pastor Recipe
Mexican Recipes
Birria Style Beef
Join Us

Caldo de Pescado (Mexican Fish Soup)
Ingredients
- 2 tablespoons olive oil
- 1 medium onion peeled and chopped
- 2 carrots peeled and chopped
- 2 ribs celery chopped
- 2 cloves garlic minced
- 6 cups vegetable broth (see note 1)
- 1 (14-ounce) can crushed tomatoes
- 1 large potato peeled and diced (about 1 pound)
- 1 jalapeño pepper seeded and minced (see note 2)
- 1/2 teaspoon ground cumin
- 1/2 teaspoon ground coriander
- 1/2 teaspoon Mexican oregano (see note 3)
- Salt and freshly ground black pepper
- 4 tilapia fillets thawed and chopped into 1-inch pieces (about 1 to 1.5 pounds total, see note 4)
- fresh cilantro leaves and lime wedges, for serving (see note 5)
- Crusty bread such as bolillo rolls, for serving
Instructions
- In a large saucepan, heat olive oil over medium-high heat until shimmering. Add onion, carrots, celery, and garlic. Cook, stirring occasionally, until the vegetables have softened, about 5 minutes.
- Stir in vegetable broth, crushed tomatoes, potatoes, jalapeño, cumin, coriander, Mexican oregano, and ½ teaspoon salt. Bring to a boil; reduce heat and simmer uncovered for 10 minutes.
- Stir in tilapia pieces and heat until cooked through, about 4 to 5 minutes longer. Season to taste with salt and pepper (I like ½ teaspoon additional salt and ¼ teaspoon pepper). Garnish with cilantro and serve with lime wedges and bread.
Notes
- Broth: I used vegetable broth here so this soup is safe for Fridays during Lent. You could also substitute fish stock or shrimp stock.
- Jalapeños: Some jalapeños are very mild with a grassy taste, and some are hot as fire. You never know what you’re going to get until you take a bite! If you’re worried about the spice, remove any seeds and inner membranes for the chiles (and wear gloves if you want to).
- Mexican oregano: Italian oregano is not a substitute here, so if you can’t find Mexican oregano, just omit it.
- Tilapia: To thaw the tilapia, place it in a bowl under cool water for 20 minutes or thaw overnight in the refrigerator.
- Cilantro: If you hate cilantro, just leave it out.
- Yield: This recipe makes 4 hearty servings soup. Each serving is about 2 cups of broth with vegetables and ½ cup tilapia.
- Storage: Store the leftover broth and vegetables covered in the refrigerator for up to 4 days, and add the fish to it when you want to eat it, heating it over the stove until the fish is cooked through.



