Culinary Explorer

A cooking platform built around craft, culture, and the stories behind what we eat.

Discover Culinary Explorer
Caldo de Pescado Yucateco

Caldo de Pescado Yucateco

Created by

Yucatán's bright, citrus-driven fish soup, built on a fast fish broth, charred tomato, recado rojo bloomed in lard, and the perfume of a whole unbroken habanero floating in the pot.

Soups & Stews
Mexican
Weeknight
Dinner Party
Quick Meal
30 min
Active Time
45 min cook1 hr 15 min total
Yield6 servings

This is from Yucatán. Not from Mexico. Yucatán. The peninsula has its own cuisine, its own language, its own sense of itself, and its own way of cooking fish that does not look like anything from Veracruz, Sinaloa, or the Pacific coast. Esto no es comida de un solo México.

The caldo is built on three Yucatecan signatures: recado rojo for color and depth, naranja agria for acid, and a whole habanero floating in the pot for perfume. The habanero stays unbroken the entire time. Break it and the soup is finished. The señoras in the Mercado Lucas de Gálvez in Mérida will fish it out with a wooden spoon and set it on the table for whoever wants more heat. The diner adds. The pot does not.

The fish is poached, not boiled. The broth trembles, never rolls. The chile xkatik, a long pale yellow chile native to the peninsula, gets charred on the comal and dropped in whole. The acid comes from lima agria or naranja agria, not from regular lime, because the Yucatán uses bitter citrus the way Jalisco uses lard: as a foundational ingredient, not a garnish.

My mother never made this dish. She was from Jalisco and her sea was a memory. But I learned it in 2008 from Doña Silvia, a cook from Progreso who let me sit in her kitchen for three days during a tormenta when nobody could go fishing. She showed me how to char the tomatoes black and how to talk to the habanero without breaking it. Saber cocinar es saber vivir.

Yucatecan cuisine evolved in geographic and cultural isolation from central Mexico, shaped by the Maya foundation, Spanish colonization, Caribbean trade, and a wave of Lebanese immigration in the late 19th century. The recado rojo at the heart of this soup, achiote ground with sour orange, garlic, oregano brought by the Spanish, and Old World spices including clove and cumin, is a direct material record of those layered histories. Lima agria and naranja agria, both bitter citrus brought by the Spanish from Southeast Asia by way of the Mediterranean, took root in the peninsula's limestone soil and became so integral that Yucatecan cooking is functionally incomprehensible without them; substituting regular lime, while sometimes necessary outside the peninsula, fundamentally changes the flavor architecture of any traditional Yucatecan dish.

The technique, the tradition, and the story behind every dish.

Discover Culinary Explorer

Ingredients

firm white fish fillets (mero, huachinango, or robalo)

Quantity

2 pounds

cut into 3-inch pieces

fish heads and bones from the same fish

Quantity

1 pound

rinsed

cold water

Quantity

8 cups

white onion

Quantity

1 medium

halved, plus 1/2 cup finely diced for serving

head of garlic

Quantity

1

halved crosswise, plus 4 cloves smashed

large ripe tomatoes

Quantity

2

fresh chile xkatik (or chile guero)

Quantity

4

left whole

fresh chile habanero

Quantity

1

left whole and unbroken

recado rojo (achiote paste)

Quantity

2 tablespoons

naranja agria juice

Quantity

1/2 cup

or 1/4 cup orange juice mixed with 1/4 cup lime juice

fresh epazote

Quantity

2 large sprigs

fresh hierbabuena

Quantity

1 sprig

bay leaves

Quantity

2

manteca de cerdo (pork lard)

Quantity

2 tablespoons

kosher salt

Quantity

1 tablespoon, plus more to taste

black peppercorns

Quantity

1 teaspoon

lima agria halves (optional)

Quantity

for serving

finely diced red radish (optional)

Quantity

for serving

chopped cilantro (optional)

Quantity

for serving

sliced chile habanero (optional)

Quantity

for serving

warm hand-pressed corn tortillas (optional)

Quantity

for serving

Equipment Needed

  • Heavy 6-quart stockpot
  • Cast iron comal or heavy skillet for charring
  • Fine-mesh strainer
  • Slotted spoon for handling the habanero
  • Wide shallow bowls for serving

Instructions

  1. 1

    Build the fish broth

    Rinse the fish heads and bones under cold water until the water runs clear. Place them in a heavy stockpot with the cold water, the halved onion, the halved head of garlic, the bay leaves, the peppercorns, and one teaspoon of the salt. Bring to a bare simmer over medium heat. Skim the gray foam that rises in the first ten minutes. Cold water draws the flavor out cleanly. A rolling boil clouds the broth and turns it bitter. Simmer gently for 25 minutes, no longer. Fish broth past half an hour tastes like glue.

    Ask your pescadero for the head and frame of whatever fish you bought. A caldo built on water alone is not a caldo, it is hot water with fish in it.
  2. 2

    Char the tomatoes and chiles

    While the broth simmers, heat a dry comal or heavy skillet over medium-high. Lay the whole tomatoes on the comal and char them on all sides, turning with tongs, until the skins blister black in patches and the flesh softens, about 8 minutes. Move them to a plate. Add the whole xkatik chiles to the comal and char until the skins blister and the chiles soften, about 4 minutes. The smell will turn slightly sweet and grassy. That is the sugar in the chile waking up. This step is not optional. The char is what gives the caldo its depth.

  3. 3

    Bloom the recado rojo

    Strain the fish broth through a fine-mesh sieve into a clean pot and discard the solids. In a small skillet, melt the manteca over medium heat. Add the smashed garlic cloves and cook for 30 seconds, until fragrant. Crumble in the recado rojo, breaking up the paste with the back of a spoon. Pour in the naranja agria juice and whisk until you have a smooth, deep red liquid. The recado is not just spice paste. It is achiote, garlic, oregano, cumin, clove, pepper, and bitter orange ground together, the seasoning that defines half of Yucatecan cooking. La manteca es el sabor.

    Buy recado rojo from a Yucatecan brand if you can find it. La Anita and El Yucateco are reliable. The bricks you find in plastic at the supermarket are a compromise, not an upgrade.
  4. 4

    Build the caldo

    Peel the blistered skins off the charred tomatoes with your fingers. The flesh underneath will be smoky and soft. Roughly chop the tomatoes and add them to the strained broth along with all their juices. Stir in the bloomed recado mixture. Add the charred xkatik chiles whole. Drop in the whole habanero, unbroken. Add the epazote and hierbabuena. Taste for salt and adjust. The broth should be assertive, citrus-bright, and the color of a Mérida sunset.

  5. 5

    Honor the habanero

    Bring the broth to a gentle simmer and let it cook for 15 minutes. The habanero must stay whole the entire time. Yucatecan cooks use the habanero for its perfume, not its heat. If the skin breaks, the soup becomes inedible. Pregúntale a las señoras del mercado in Mérida and they will tell you the same thing. If the chile starts to soften too much, fish it out with a slotted spoon and set it aside for the table.

  6. 6

    Poach the fish

    Season the fish pieces lightly with salt. Slide them into the simmering broth in a single layer. Lower the heat so the broth barely trembles. Poach for 6 to 8 minutes, depending on thickness, until the fish turns opaque and flakes when pressed gently with the back of a spoon. Do not stir. Do not boil. Hard simmering breaks the fish into rags. The fish should arrive at the table in whole pieces, not in shreds.

  7. 7

    Serve at the table

    Carefully ladle the caldo into wide bowls, giving each guest a piece of fish, a softened xkatik chile, and plenty of broth. Set the diced onion, radish, cilantro, sliced habanero, and lima agria halves in small dishes around the table. Each person finishes their own bowl with a squeeze of lima agria and whatever salpicón they want. The hot tortillas go in a basket wrapped in a cotton servilleta. Cada estado, su propia cocina, and this one belongs to Yucatán.

Chef Tips

  • The habanero stays whole. I will repeat it because cooks outside Yucatán break the rule constantly: do not pierce, slice, or crush the habanero. Yucatecan cooks use it for aroma. If you want heat, slice a separate habanero and put it on the table for guests to add themselves.
  • Naranja agria is the right acid. If you cannot find it, mix equal parts fresh orange juice and fresh lime juice. It is a compromise, not an upgrade. The true sour orange has a perfume that lime alone cannot replicate.
  • Fish broth has a short life. Make it the day you cook the caldo. Do not push it past 30 minutes of simmering and do not try to make it ahead and freeze it. Caldo de pescado is a same-day dish. No me vengas con atajos.

Advance Preparation

  • The recado rojo can be bloomed in lard with the naranja agria up to one day ahead and refrigerated. Whisk it back together before adding to the broth.
  • Charred tomatoes and xkatik chiles can be prepared a few hours ahead and held at room temperature.
  • The fish broth must be made the same day. Fish stock does not improve overnight. It turns.

Frequently Asked Questions

Nutrition Information

1 serving (about 400g)

Calories
250 calories
Total Fat
8 g
Saturated Fat
3 g
Trans Fat
0 g
Unsaturated Fat
4 g
Cholesterol
80 mg
Sodium
850 mg
Total Carbohydrates
10 g
Dietary Fiber
2 g
Sugars
3 g
Protein
32 g

Note: Chef personas and recipes are created with AI assistance. Cook with care: follow safe food-handling practices, check doneness with a thermometer when needed, and adapt for allergies and your kitchen.

Where cooking meets culture.

Culinary guides, cultural storytelling, and the editorial depth that makes cooking meaningful.

Discover Culinary Explorer

More from Yucatecan Soups & Stews

Browse the full collection