Homemade fish soup is one of the most comforting dishes in Mediterranean cuisine. With a good stock made from scratch using heads and bones, fresh shellfish, and the right cooking techniques, the result is a rich, aromatic, and nutritious broth that rivals any restaurant version. In this guide, you'll find the step-by-step recipe, the most important regional variations, reference tables, and all the secrets to make it perfect the first time.
Content
- What is homemade fish soup?
- Ingredients for 4 people
- How to make fumet: the foundation of everything
- Step-by-step recipe
- Regional variations of fish soup
- Comparison: Spanish fish soups
- Version with noodles and version without noodles
- Tricks and mistakes to avoid
- Nutritional Information
- Pairing: Which wine pairs best?
- Storage and reheating
- Frequently Asked Questions
What is homemade fish soup?
Homemade fish soup is a liquid seafood dish where the star ingredient is fumet , a concentrated stock made from pieces that are usually discarded: hake, monkfish, or grouper heads, central bones, and shrimp or prawn shells. Sofrito vegetables, tomato, saffron, and the final ingredients—pieces of cleaned fish fillets, shrimp, mussels, or clams—are added to this base and cooked briefly to preserve their texture and flavor.
Unlike a typical fish stew, in fish soup the broth is the star of the show: it should be clear or slightly golden, rich in aroma, and clean on the palate. Therefore, the time and technique used to prepare the fish stock determine the final result much more than the quality of the ingredients, although these are also important.
This type of dish appears in practically all coastal cuisines of the Mediterranean and the Cantabrian Sea—from Marseilles bouillabaisse to Basque ttoro—and in Spain it takes on very different forms depending on the region, although all share a respect for seafood and patience in building the base stock. If you're interested in exploring other recipes that use up leftover fish, our guide to cod crumbs and other resourceful recipes follows a similar philosophy of traditional cooking.
Ingredients for 4 people
The list is divided into two distinct sections: the ingredients for the stock and those for finishing the dish. This conceptual separation is important because the stock can—and often should—be prepared in advance.
For the fumet (base broth):
- 1 kg of heads and bones of white fish (hake, monkfish, sea bass or a mixture)
- Shells and heads from 200g of prawns or shrimp
- 1 medium onion, cut in half
- 1 leek (the white part and some of the green)
- 2 celery stalks
- 1 carrot
- 1 bay leaf, fresh parsley sprigs, a few black peppercorns
- 1 glass of dry white wine (150 ml)
- 2 liters of cold water
- Extra virgin olive oil
For the final soup:
- 600g of cleaned hake or monkfish loins, in large pieces
- 200g peeled prawns (reserve the shells for the stock)
- 300g of cleaned clams or mussels
- 2 cloves of garlic
- 1 medium onion, finely chopped
- 2 grated ripe tomatoes (or 200g of natural crushed tomatoes)
- A generous pinch of saffron (about 20 threads)
- 1 teaspoon of sweet paprika
- Salt, white pepper and chopped fresh parsley to finish
How to make fumet: the foundation of everything
The fish stock is the heart of fish soup and deserves careful attention. The first rule is the most counterintuitive: don't cook the stock for more than 20-25 minutes . Unlike meat stock, which needs hours to extract collagen and gel, fish releases its aromas quickly, and if the cooking time is prolonged, the stock will develop an unavoidable bitter and metallic taste.
The correct process is as follows: Heat a layer of olive oil in a large pot and lightly fry the prawn shells over high heat for two minutes, crushing them with a wooden spoon to release the coral. Add the chopped vegetables and let them soften and soften slightly. Stir in the well-washed fish heads and bones—removing any remaining viscera or blood, which will make the stock bitter—pour in the white wine, and let the alcohol evaporate for one minute. Cover with cold water, bring to a boil, reduce the heat, and simmer gently for exactly 20 minutes. Skim off any foam frequently during the first five minutes. After that time, strain through a fine-mesh sieve and gently press the solids to extract all the liquid. Set aside.
If you want an even more intense broth, lightly dry-roast the bones in the oven at 200°C for 10 minutes before adding them to the pot: the Maillard process provides extra depth of flavor and a more pronounced amber color.
Related Cod Products
Recommended Products
Natural Cod Foie Gras - 120g | Cod Liver...
€3.90
CHATKA Wild King Crab 60% Legs 40% Shells...
€95.00
Artisan-Cut Smoked Cod Carpaccio | P...
€15.90
Dried Cod Cheeks (1 tub) - 500g
€19.95
Refrigerated delivery within 24-48 hours to the entire Peninsula
Step-by-step recipe
With the stock already prepared and strained, the rest of the recipe is quick. Follow these steps in order:
- Sofrito base. In a large saucepan, heat three tablespoons of olive oil and sauté the chopped onion over medium heat for eight minutes until translucent and soft. Add the sliced garlic and cook for two more minutes.
- Tomato and paprika. Add the grated tomato and slightly increase the heat so the tomato water evaporates and the sofrito concentrates. This takes about five minutes. Add the paprika off the heat to prevent it from burning, stir well, and return to the heat.
- Add the fish stock. Pour the hot stock over the sautéed vegetables, add the saffron (previously toasted for a few seconds on a dry spoon and dissolved in a little stock). Bring to a gentle boil and simmer for 10 minutes to allow the flavors to meld. Adjust the seasoning with salt.
- Clams or mussels. Add the shellfish to the boiling soup, cover the pot and wait for them to open (3-4 minutes). Remove any that don't open.
- Add the fish last. Stir in the pieces of hake or monkfish and the peeled shrimp. Medium-sized pieces of white fish need between 3 and 5 minutes over low heat. Never longer: overcooking will dry it out and make it fall apart.
- To finish. Sprinkle with fresh chopped parsley, check the seasoning and serve immediately in preheated individual casseroles.
Regional variations of fish soup
Spain has one of the longest coastlines in Europe, and each coastal region has developed its own version of fish soup. Understanding these variations allows you to adapt the basic recipe according to the available ingredients or the desired flavor profile.
Galician soup (caldeirada): This soup uses rockfish and conger eel, with thickly sliced potatoes that naturally thicken the broth. La Vera paprika is the star ingredient, resulting in a richer, more substantial soup, perfect for Atlantic winters. If you're already familiar with our cod and potato recipe, caldeirada follows a similar fish-starch combination.
Basque Ttoro: Originating in the French Basque Country (Ciboure, Saint-Jean-de-Luz) and adopted throughout the Basque coast, ttoro is a fish and seafood soup with a tomato and red pepper base, flavored with cayenne pepper and featuring pieces of baby squid, prawns, mussels, monkfish, and turbot. It is spicier and redder than the Mediterranean version. For lovers of Basque cuisine, our guide to cod in pil-pil sauce showcases another fundamental technique of this tradition.
Catalan suquet: Suquet de peix is the quintessential Catalan fish soup, made with potatoes and thickened with a final picada —garlic, toasted almonds, biscuit, saffron, and parsley crushed in a mortar—which thickens, enriches, and flavors the broth during the last two minutes of cooking. This picada is the secret ingredient that distinguishes suquet from other versions.
Andalusian soup: Lighter, with a base of monkfish and prawns, tomato, and thin noodles, common on the coasts of Málaga, Almería, and Cádiz. Sometimes a beaten egg yolk is added at the end to enrich the broth without thickening it.
Comparison: Spanish fish soups
| Preparation | Region | Thickener | Spicy | Main obstacles | Key feature |
|---|---|---|---|---|---|
| Classic fish soup | Mediterranean | None or noodles | No | Hake, prawns, clams | Light fumet, saffron, versatile |
| Basque bull | the Basque Country | Red pepper | Yes (cayenne) | Monkfish, baby squid, prawns, mussels | Tomato and pepper base, more red |
| Catalan suquet | Catalonia | Potato + chopped | No | Monkfish, prawns, langoustines, clams | Chopped almonds in a mortar |
| Galician stew | Galicia | Potato | No | Conger eel, monkfish, potato | Paprika from La Vera, denser |
Version with noodles and version without noodles
Fish soup is perfect for adding thin noodles (number 0 or number 1) to make it a more substantial and hearty dish. If you choose this version, add the noodles to the already seasoned broth with the sautéed vegetables before adding the fish and seafood. Number 0 noodles need between 4 and 5 minutes; number 1 noodles, between 6 and 7 minutes. Once the noodles are cooked, add the fish and seafood as in the classic version.
The advantage of the noodle-free version is that the broth remains completely clear and can be served first as a consommé, followed by the other ingredients as a second course. This two-course presentation is commonly used at weddings and celebrations in the Levante region of Spain. For those seeking a medium consistency, a Catalan-style almond picada —about 20g of toasted almonds, a clove of garlic, and parsley crushed in a mortar and pestle and dissolved in the broth—adds body without thickening it as much as potatoes or noodles would.
Tricks and mistakes to avoid
These are the points that make the difference between a mediocre fish soup and an excellent one:
- Fumet for a maximum of 25 minutes. This is the most common mistake. More time doesn't mean more flavor: it means bitterness. Set a timer.
- Wash the bones and heads thoroughly. Any remaining blood and viscera will make the broth bitter. Rinse under cold water and remove the gills if present.
- Add the fish last and for a short time. Three to five minutes is enough for 3-4 cm pieces. If it's overcooked, it will fall apart and the broth will become cloudy.
- Saffron well extracted. Toast the threads for a few seconds on a dry spoon or in the microwave for 10 seconds, then dissolve them in a little hot stock before adding to the mixture. This releases the maximum color and aroma.
- Do not boil vigorously. Fish soup should be kept at a very gentle simmer once the final ingredients are added. A vigorous boil will cloud the broth and break down the fish.
- Use good extra virgin olive oil. The sofrito is the second most important flavor base after the fumet. A good oil makes all the difference.
- Taste and adjust before serving. Fish stocks need little salt if the fumet has reduced well, but it is essential to taste it at the end.
Nutritional Information
The following values correspond to a serving of approximately 400 ml of seafood soup (hake, prawns, and clams), prepared with extra virgin olive oil and without noodles. These figures are guidelines only and may vary depending on the type and quantity of fish and shellfish used.
| Nutrient | Per serving (400 ml) | % Reference Intake |
|---|---|---|
| Energy | 210 kcal | 10% |
| Proteins | 28 g | 56% |
| Total fats | 7 g | 10% |
| Saturated fats | 1.2 g | 6% |
| Carbohydrates | 8 g | 3% |
| Sodium | 580 mg | 24% |
| Omega-3 (EPA+DHA) | ~0.8 g | — |
| Iodine | ~90 µg | 60% |
Fish soup is one of the most nutritionally balanced dishes: high-quality protein, low calorie content, long-chain omega-3 fatty acids, and minerals such as iodine, zinc, and selenium from the seafood. It is suitable for people with gluten intolerance (in the noodle-free version) and for low-calorie diets.
Pairing: Which wine pairs best?
Fish soup calls for Atlantic white wines with vibrant acidity and iodine or saline notes that reflect the dish's marine character. The two classic choices in Spanish cuisine are Albariño (DO Rías Baixas) and Godello (DO Valdeorras or DO Monterrei).
Albariño, with its crisp acidity, notes of peach and grapefruit, and an Atlantic mineral undertone, is perhaps the most natural pairing for any Mediterranean-based fish soup. Godello, more structured and full-bodied than Albariño, has a texture that stands up well to richer versions like Basque ttoro or Catalan suquet with picada. If the soup features a prominent saffron flavor, a Godello aged on its lees can be the most interesting option, as the lees contact imparts notes of toasted bread that harmonize beautifully with the saffron.
For a more affordable and local alternative, a young Verdejo from Rueda, a Xarel·lo from Penedès, or a white wine from Empordà work well. Avoid wines with pronounced oak (new oak) because the oak competes with and overpowers the delicate aromas of the fumet.
Storage and reheating
Fish soup is one of those dishes that tastes best freshly made, but with proper care, it keeps perfectly well the next day. The basic broth—without the fish and shellfish—keeps perfectly in the refrigerator for up to three days or in the freezer for up to three months. If you've already added the ingredients, keep it in the refrigerator for a maximum of 24 hours.
To reheat, always do so over very low heat and without letting it boil, especially if the fish is already in the soup: vigorous boiling dries out the fish and makes it fall apart too much. If you've frozen only the stock, you can defrost it and add fresh fish and shellfish when serving: the result is virtually indistinguishable from a freshly made soup.
A very practical option is to make the fish stock in large quantities, divide it into 500 ml or 1 liter portions in flat freezer bags, and always have soup stock available in the freezer. It's an incredibly versatile cooking stock: it can be used for soups, for soupy rice dishes—like the ones we describe in our cod with soupy rice recipe—or for fish sauces.
Frequently Asked Questions
How long should fish stock be cooked?
Fish stock should not be cooked for more than 20-25 minutes once it comes to a boil. Unlike meat broths, fish releases its aromas very quickly, and if the cooking time is prolonged, the stock develops a bitter, metallic taste that ruins the entire dish. If you want more intensity, the correct solution is not to cook it longer, but to use more bones and heads per liter of water, or to roast the bones in the oven before adding them to the pot. Always use a timer when making fish stock: it's the simplest and most effective trick in the whole recipe.
Which fish is best for fish soup?
For the base stock, the best fish are those from the smaller fish stocks—heads of hake, monkfish, sea bass, sea bream, or grouper—because they have a high gelatin content and give the stock body. For the final additions, hake and monkfish are the most commonly used in Spain because they hold up well to brief cooking without falling apart and have a firm texture and a delicate flavor that doesn't overpower the stock. Desalted cod is another excellent option that provides a more gelatinous texture and a more pronounced flavor; if you want to use it, take a look at our guide on how to properly desalinate cod and our premium desalted cod .
Can you make fish soup without seafood?
Yes, absolutely. Fish soup without shellfish is simpler, more economical, and suitable for people with shellfish or crustacean allergies. In this case, the stock is made exclusively with the bones and heads of white fish, and the only addition is the fish fillets. To compensate for the lack of sweetness and depth that shrimp shells provide, you can add an extra carrot to the stock, a splash of sherry (fino or manzanilla) to the sofrito, and a few extra strands of saffron. The result is different but equally delicious if the stock has been prepared carefully.
Can I use store-bought fish stock instead of making the fumet?
You can do it in a pinch, but the result will be noticeably inferior. Store-bought fish stocks—whether in cartons, bouillon cubes, or concentrated form—usually have a flat flavor profile, excess sodium, and lack the briny, gelatinous notes provided by fresh shrimp bones and shells. If you opt for this method, improve store-bought stock by sautéing a few shrimp shells in it for two minutes, adding a splash of white wine, and straining it before using. This technique partially "rescues" a commercially produced stock and brings it closer to the flavor of homemade. For more special soups, however, it's worth the effort to make it from scratch.
How many calories are in homemade fish soup?
A generous serving of homemade fish soup (about 400 ml with pieces of hake, prawns, and clams) provides approximately 200-220 kcal, making it one of the lightest main dishes in Spanish cuisine. Almost all of these calories come from the protein in the fish and shellfish, with minimal fat if a moderate amount of olive oil is used in the sofrito. The noodle version adds between 80 and 100 kcal per serving, depending on the amount of pasta. It is a dish especially recommended for low-calorie diets due to its high satiety index and excellent nutritional profile.
What is the difference between fish soup and fish broth?
The main difference is that fish stock—or fumet—is simply the liquid resulting from simmering bones, heads, and aromatic vegetables: it's a base for cooking, not a finished dish. Fish soup, on the other hand, is a complete dish that uses this fumet as its cooking liquid but also incorporates a sofrito, spices like saffron and paprika, and the final additions of fish and shellfish. In other words: the fumet is the ingredient, the soup is the dish. This distinction is important because fumet can be frozen in large quantities and used for rice dishes, fideuàs, fish sauces, or to enhance other seafood stews.
Can you make fish soup with cod?
Absolutely, and it's a traditional variation in the kitchens of inland Spain where salted cod was the only readily available fish. Desalted cod has a more gelatinous texture than hake and a more pronounced and complex flavor that enriches the broth. To use it correctly, add it in medium-sized pieces during the last 4-5 minutes of cooking, just like any other fish. Keep in mind that desalted cod retains some salt, so adjust the seasoning at the end, not before. In our collection of recipes with desalted cod, you'll find more ideas for using this versatile ingredient.
What is Catalan picada and how is it used in fish soup?
Picada is a Catalan technique that involves grinding a mixture of dried and aromatic ingredients—toasted almonds, hazelnuts, garlic, parsley, crackers (fried bread or carquinyoli), saffron, and sometimes dark chocolate—in a mortar until a paste is formed. This paste is then added to the stew in the final minutes of cooking. In suquet de peix (fish stew), the picada serves three simultaneous purposes: it slightly thickens the broth, emulsifies the stew's juices, and imparts a layer of toasted, herbal, and aniseed flavor that no other thickener can replicate. To incorporate it into any fish soup, dissolve it in a little hot broth before adding it to the rest of the dish, and cook for no more than two minutes after adding it so that it doesn't lose the volatile aromas of the fresh garlic and parsley.
How do you make the broth clear and not cloudy?
There are four factors that determine the clarity of the stock: thoroughly wash the bones and heads under cold water before using them to remove any traces of blood; skim generously during the first five minutes of cooking, when the protein coagulates and rises to the surface; always maintain a gentle boil, not a rolling boil, because turbulent agitation emulsifies the fats and makes the liquid cloudy; and strain through a fine sieve or, even better, through a clean cheesecloth or tea towel at the end. For restaurant-quality results, let the strained stock rest for 10 minutes and gently decant the top, leaving any remaining fat and sediment at the bottom.
Can you freeze prepared fish soup?
Ideally, freeze only the fish stock, without the fish or shellfish already in it. Cooked fish and shellfish don't freeze well: upon thawing, the fish loses its texture and becomes mealy, and shellfish tends to become rubbery. Fish stock, on the other hand, freezes perfectly for up to three months in airtight containers or freezer bags. To serve, thaw the fish stock in the refrigerator overnight or at room temperature, bring it to a boil, sauté the vegetables, stir in the stock, and add fresh fish and shellfish: the result is virtually identical to a soup made entirely from scratch.
What seafood works best in fish soup?
Clams and mussels are the most commonly used shellfish because they are inexpensive, readily available, and release a flavorful, briny liquid when they open in the stock. Peeled prawns and shrimp add sweetness and texture; their shells are also essential for the fumet. For special occasions, langoustines and crab pieces in the stock provide extraordinary depth. Squid or baby squid rings are used in Basque and Catalan versions to add texture. All fresh or premium-quality shellfish from our collection are suitable for this recipe and make a noticeable difference in the final result.
How do I know when the fish soup is ready to serve?
The fish soup is ready when the fish has just lost its translucency in the center—if you're using hake, the inside will change from pearly to opaque white—and the clam or mussel shells are completely open. A simple test: insert the tip of a knife into the thickest piece of fish; it should go in easily and come out clean, without any pink juices. At that point, remove it from the heat immediately. The residual heat from the pot and the broth will continue to cook the fish for another minute, so it's better to err on the side of caution and remove it slightly before it's perfectly cooked than to wait too long and find dry, flaky fish on your plate.
Related guides
- Cod in green sauce with clams
- Cod à Brás: Portuguese recipe
- Cod and chickpea stew
- Cod fritters in the Andalusian style
- Cod with potatoes: 5 easy recipes
- 15 recipes with desalted cod
To prepare this soup with the finest ingredients, we recommend our premium desalted cod ready to cook, our perfectly salted cod , and our selection of fresh and frozen seafood for the soup's garnishes. At Bacalalo, we've been selecting the best cod and fish from Barcelona's Mercat del Ninot since 1990.




