Ghanaian Fish Soup: A Fragrant, Peppery One-Pot Recipe

Updated November 3, 2026

Total time
1 hr 5 min
prep 25 min · cook 40 min
Serves
4
portions as written
Safe temperature (USDA)
145°F / 63°C
check the thickest piece

Jump to recipe

Ghanaian Fish Soup: A Fragrant, Peppery One-Pot Recipe

Ghanaian fish soup is a light, tomato-based soup seasoned with ginger, garlic, and hot pepper, then finished with tender fish in a fragrant broth. This version builds flavor by simmering and blending the vegetables before adding the fish, so the soup is full-bodied without a long cooking time; spice and seasoning vary between households and regions.

Ingredients

  • 2 lb (900 g) cleaned tilapia, snapper, or other firm white fish, cut into thick steaks or large fillet pieces
  • 1 tsp fine salt (6 g), divided, plus more to taste
  • 1 large yellow or red onion (about 5 oz/150 g), peeled and quartered
  • 4 medium ripe tomatoes (about 1 lb 5 oz/600 g), quartered
  • 1 medium red bell pepper (about 5 oz/150 g), stemmed, seeded, and roughly chopped
  • 1 Scotch bonnet pepper (about 10 g), stem removed; use half for a milder soup or add a second for more heat
  • 2 in (5 cm) fresh ginger (about 1 oz/30 g), peeled and roughly chopped
  • 4 garlic cloves (about 12 g), peeled
  • 6 ⅓ cups water (1.5 L), divided
  • 1 tbsp dried shrimp powder (about 8 g), optional; use 1 tsp fish sauce (5 ml) instead for a salty, less shrimp-forward flavor
  • 1 small smoked fish (about 1 oz/28 g), optional, picked over carefully for bones
  • 1 bouillon cube (about 10 g), optional; check its salt level before adding extra salt
  • ½ tsp ground black pepper (about 1 g)

Instructions

  1. Prepare the fish and vegetables. Pat the fish dry with paper towels and check it for scales and pin bones; keep it chilled while you prepare the soup base. If using smoked fish, remove skin and bones and flake it into small pieces. Prepare the onion, tomatoes, bell pepper, Scotch bonnet, ginger, and garlic. Avoid touching your face after handling the hot pepper, and wash your hands and cutting board afterward.
  2. Simmer the vegetables. Put the onion, tomatoes, bell pepper, Scotch bonnet, ginger, and garlic in a large pot. Add 4 cups (950 ml) of the water and bring it to a boil over medium-high heat. Lower the heat and simmer uncovered for 15 minutes, until the tomatoes have softened and the onion is tender. The vegetables should be soft enough to blend, but they do not need to break down completely in the pot.
  3. Blend the soup base. Use a slotted spoon to transfer the vegetables to a blender, adding about 1 cup (240 ml) of their cooking liquid. Blend until smooth, about 1–3 minutes, then return the mixture to the pot. If your blender is not rated for hot liquids, let the vegetables cool slightly first. Do not seal a standard blender tightly with steaming liquid: vent the lid, cover it with a folded kitchen towel, and blend in batches if needed.
  4. Season and simmer the broth. Add the remaining 2 ⅓ cups (550 ml) water, the dried shrimp powder if using, the bouillon cube if using, ½ tsp of the salt, and the black pepper. Stir well and bring the broth back to a gentle boil. Simmer for 10 minutes so the seasonings combine. Taste the broth before adding more salt, especially if you used bouillon, smoked fish, or fish sauce.
  5. Cook the fish gently. Lower the fish pieces into the broth in a single layer as much as possible. Add the flaked smoked fish now, if using. Reduce the heat to a steady, gentle simmer and cook for about 10 minutes, turning thick pieces once only if necessary. Avoid vigorous boiling or frequent stirring, which can break the fish apart. Check the thickest piece with a food thermometer; the USDA FSIS safe minimum internal temperature for fish is 145°F (63°C). If it has not reached that temperature, simmer for another minute or two and check again.
  6. Finish and serve. Taste the broth and adjust the salt or pepper. If it seems too concentrated, add water in ¼-cup (60-ml) increments; if it tastes thin, simmer the broth gently for another few minutes before serving. Ladle the soup carefully so each portion gets fish and broth. The fish is delicate, so lift it with a broad spoon rather than stirring it through the pot.

Tips

  • Choose fish that holds its shape. Tilapia, snapper, grouper, and cod all work when cut into thick pieces. Steaks with the skin and central bone intact are less likely to fall apart than thin fillets, and they add a little extra flavor to the broth. If using boneless fillets, cut them into pieces at least 1 inch (2.5 cm) thick and handle them gently.
  • Control the pepper heat. Scotch bonnet gives the soup a fruity, distinctive heat, but its intensity varies. For a gentler soup, use half a pepper and remove its seeds and inner membrane; for more heat, add a second pepper. A habanero is the closest widely available substitute, though it can taste sharper. A mild chile or a small amount of cayenne can add heat, but not the same aroma.
  • Use the optional seafood seasonings thoughtfully. Dried shrimp powder and smoked fish are traditional-style flavor additions in some versions, but neither is essential. If dried shrimp powder is hard to find, fish sauce adds savory saltiness without the same toasted shrimp flavor. Smoked fish contributes a deeper, smoky note; leave it out for a cleaner-tasting broth, and check carefully for bones if you use it.
  • Keep the fish intact. Once it enters the pot, maintain a gentle simmer rather than a rolling boil. Do not stir repeatedly; gently tilt the pot or spoon broth over the top if a piece needs more cooking. Add salt gradually because bouillon, dried shrimp, smoked fish, and fish sauce can all make the soup salty.

Serving Suggestions

Serve the soup hot in deep bowls, with a generous amount of broth and a piece or two of fish in each serving. In Ghana, light soups are commonly served alongside a substantial staple such as fufu, banku, or boiled yam. Fufu and banku are traditionally eaten by pinching off a small portion, dipping it into the soup, and eating it with a piece of fish; check carefully for bones as you go.

For an easier-to-find accompaniment, offer boiled rice, boiled potatoes, or crusty bread for soaking up the broth. A bowl of rice makes the meal more filling while keeping the soup itself at the center. If serving guests, put extra Scotch bonnet or chile sauce on the side rather than making the whole pot very hot. A simple side of sliced cucumber or avocado can provide a cool contrast, but the soup does not need elaborate garnishes.

Variations

Make a more tomato-forward soup: Add 2 tbsp tomato paste (about 32 g) with the water and seasonings, then simmer the broth for the same 10 minutes. The result will be thicker, more intensely tomato-flavored, and a little less clear than the basic version. This is a useful adjustment when the fresh tomatoes are pale or not very ripe.

Use a whole small fish: A cleaned fish can be simmered whole if it fits comfortably in the pot. Ask the fishmonger to scale and gut it, and make a few shallow cuts on each side so the broth can season it. It may need a few extra minutes depending on its size; check the thickest flesh with a thermometer and cook to 145°F (63°C). Whole fish makes serving more traditional in some settings, but diners will need to watch for bones.

Make it without shellfish ingredients: Leave out the dried shrimp powder and smoked fish, then season with salt and black pepper. The broth will be lighter and less layered, but the fresh ginger, garlic, vegetables, and fish still make a flavorful soup. For a different savory accent, a little fish sauce is an option if fish sauce suits the diners and any dietary needs.

Adjust the texture: Blend the vegetables completely for a smooth broth, or pulse briefly for a slightly textured one. For a thinner, more delicate soup, add up to 1 cup (240 ml) extra water and adjust the seasoning. Regional and family versions differ in pepper level, thickness, and the use of smoked or dried seafood, so these changes are normal ways to tailor the pot.

Storage and Reheating

Let the soup stop steaming heavily, then refrigerate it within 2 hours of cooking in a covered, shallow container. Keep it refrigerated at 40°F (4°C) or colder and use it within 3–4 days. If possible, store fish in the broth so it does not dry out, but avoid repeatedly warming the whole pot; take out only the portions you plan to eat. Fish can become softer after storage, so handle leftovers gently.

Reheat soup on the stove over medium-low heat, stirring the broth carefully around the fish, until the leftovers reach 165°F (74°C). Check the temperature in the center of the portion, not just at the edge of the pot. A microwave also works: cover the bowl loosely, heat in short intervals, and turn or rearrange the pieces if needed for even warming. Freeze cooled soup in airtight containers for up to 2–3 months for best quality. Thaw it in the refrigerator overnight and reheat it to 165°F (74°C); the fish may be more fragile after freezing and thawing.

Frequently Asked Questions

Is Ghanaian fish soup the same as Ghanaian light soup?
Fish light soup is one familiar style of Ghanaian soup, with fish cooked in a seasoned, usually tomato-based broth. Recipes differ: some use fresh fish, some include smoked fish or dried shrimp, and the amount of pepper and the thickness of the soup vary. This recipe follows the blended-vegetable approach, but it is not the only way to make it.

Can I use frozen fish?
Yes. Thaw it in the refrigerator first, then pat it dry and check for bones before adding it to the pot. If the fish is still icy or very cold in the center, it will cool the broth and cook unevenly. Do not thaw fish on the counter. After cooking, use a thermometer to confirm the thickest piece reaches 145°F (63°C).

How can I make the soup less spicy?
Start with half a Scotch bonnet, remove the seeds and inner membrane, and avoid piercing the pepper as it simmers. You can also leave the pepper whole and remove it before blending, which gives a milder, less predictable level of heat. If the finished soup is hotter than you like, stir in a little hot water and adjust the salt; extra water softens the seasoning as well as the heat.

Can I make the soup base ahead?
Yes. Prepare and blend the vegetable broth, then cool and refrigerate it promptly in a covered container for up to 3–4 days. Reheat the broth to a simmer before adding fresh fish, and cook the fish to 145°F (63°C). Keeping the fish separate until serving time helps it stay tender and prevents it from breaking up during storage and reheating.

What should I do if the fish breaks apart?
Small flakes are still delicious in the soup, so serve them with a ladle rather than trying to lift them out. Next time, choose thicker steaks or firm fillets, lower the fish into a gentle simmer, and avoid stirring after it is added. If a piece is cooked through before the broth is ready, lift it out carefully and return it to the bowl just before serving.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).