Pira Caldo is a traditional Paraguayan fish soup made with fresh river fish, vegetables, herbs, and broth, simmered gently until tender. It is commonly served as a hearty lunch and is known for its light yet deeply savory flavor.

Jump to
This Pira Caldo recipe is made with white fish, tomatoes, onion, bell pepper, and fresh herbs simmered in a simple seasoned broth.
It uses accessible ingredients while preserving the clean, comforting taste that defines authentic Paraguayan fish soup, making it reliable for home cooks.
Ingredients You'll Need
- Neutral oil: For sautéing vegetables
- White fish fillets (firm, boneless): Main protein; holds shape while simmering
- Yellow onion: Builds flavor base
- Roma tomatoes: Add acidity and body to the broth
- Red bell pepper: Adds mild sweetness and depth
- Garlic cloves: Enhances savory flavor
- Potatoes (optional): Adds heartiness and thickens slightly
- Fresh parsley or cilantro: Bright finishing herb
- Bay leaf: Subtle aromatic depth
- Fish or chicken broth: Cooking liquid and flavor base
- Water: Adjusts broth consistency
- Kosher salt: Enhances flavor
- Black pepper: Mild heat
How to Make Pira Caldo
Note: The full instructions are provided in the recipe card below.
- In a medium stockpot, heat the extra virgin olive oil over medium-low heat. Add the vegetables and cook until tender, 10 to 15 minutes.
- Add the wine, fish stock, and bay leaves. Bring to a boil, then immediately reduce the heat to low and simmer gently for 10 minutes.
- Add the potatoes. Cover and cook until tender but not falling apart, about 25 minutes. Season, then bring the fish soup to a slow simmer over medium-low heat.
- Add the fish and cook, stirring gently only once or twice, until cooked through, about 5 to 7 minutes.
- Stir in the parsley and cilantro. Cook for 1 minute, then turn off the heat. Stir in the cream.
- Divide among bowls and serve with a slice of crusty bread or cooked mandioca. Garnish with cilantro or parsley.
Hint: Keep the simmer gentle once the fish is added. Boiling too hard causes the fish to break apart and makes the broth cloudy.
Storage, Make Ahead, & Freezing
Storage: Refrigerate in an airtight container for up to 2 days. Fish soup is best eaten fresh because seafood loses texture quickly.
Make Ahead: Prepare the broth with vegetables and potatoes in advance. Add the fish only when reheating and simmer just until cooked through to prevent overcooking.
Freezing: Not recommended once the fish is added. The texture becomes soft and slightly grainy after thawing. If needed, freeze only the broth base and add fresh fish after reheating.
Camila's Tips & Variations
- Fish falling apart: Cut into larger chunks and avoid stirring after adding.
- Bland broth: Add extra salt gradually and finish with fresh herbs for brightness.
- Cloudy soup: Keep the heat low once the fish is added.
- Too thin: Simmer uncovered a few extra minutes to reduce slightly.
- Want more depth: Add a small piece of fresh corn or a spoonful of tomato paste to enrich flavor.
Frequently Asked Questions
What is the best fish for Pira Caldo?
Use firm white fish like tilapia, catfish, or snapper. Delicate fish breaks apart during simmering.
Can I use frozen fish?
Yes. Thaw completely and pat dry before adding to prevent excess water in the broth.
Why did my fish turn mushy?
Overcooking causes soft texture. Simmer gently and remove from heat once opaque.
Pair with
You may also like
Recipe
Pira Caldo

Ingredients
- 500 g firm white fish such as catfish , halibut, cod, flounder, red snapper, tilapia, sea bass, monkfish, or other firm fish, cut into 2-inch pieces (bone-in or boneless)
- 5 plum tomatoes , cut in half and diced
- 1 Poblano pepper or bell pepper , cut in half seeded and chopped.
- 1 large yellow onion , cut in half and cut into ½ inch dice
- 1 large carrot , peeled and diced or chopped
- 2 bay leaves
- 5 Garlic cloves , finely minced
- ¼-1/3 cup heavy cream , light cream, or whole milk, to taste
- 100 ml white wine , such as chardonnay
- 1-½ liter warm water combined with 1 to 1-½ cube of Knorr fish stock cubes or you can use just plain water
- 1 cup any type of semi-soft cheese , cut into small cubes or shredded (mozzarella cheese, muenster cheese, Oaxaca cheese)
- Kosher Salt , to taste
- ½ teaspoon paprika
- ½ teaspoon ground black pepper
- ½ teaspoon red pepper flakes
- 2 Teaspoons oregano (to taste)
- 3 Yukon gold potatoes , peeled and cut into 1-inch chunks
- 30 ml extra olive oil , as needed
- 2 tablespoons cilantro , chopped
- 2 tablespoons parsley , chopped
Instructions
- In a medium stockpot, heat the extra virgin olive oil over medium-low heat. Add the vegetables and cook until tender, 10 to 15 minutes.
- Add the wine, fish stock, and bay leaves. Bring to a boil, then immediately reduce the heat to low and simmer gently for 10 minutes.
- Add the potatoes. Cover and cook until tender but not falling apart, about 25 minutes. Season, then bring the fish soup to a slow simmer over medium-low heat.
- Add the fish and cook, stirring gently only once or twice, until cooked through, about 5 to 7 minutes.
- Stir in the parsley and cilantro. Cook for 1 minute, then turn off the heat. Stir in the cream.
- Divide among bowls and serve with a slice of crusty bread or cooked mandioca. Garnish with cilantro or parsley.
Notes
Nutrition
Nutrition Disclaimer: The nutritional information provided is an estimate, calculated using standard data sources. Actual values may vary based on ingredient brands, preparation methods, and portion sizes. This information is for general reference only and should not be considered a substitute for professional dietary advice.












