Ethiopian Fish Stew: Easy Berbere and Tomato Recipe

Updated November 3, 2026

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

Jump to recipe

Ethiopian Fish Stew: Easy Berbere and Tomato Recipe

Ethiopian fish stew, often called asa wot, pairs tender fish with a gently simmered sauce of onion, tomato, ginger, and berbere, Ethiopia’s signature spice blend. The result is warming rather than simply hot, and it is easy to serve with injera or rice; ingredients and seasonings vary between cooks and regions.

Ingredients

  • 1½ lb (680 g) firm white fish fillets, such as cod, haddock, or pollock, cut into 1-inch (2.5 cm) pieces
  • 3 medium yellow onions (about 1 lb / 450 g), finely chopped
  • 3 tbsp (45 ml) neutral oil, such as canola or sunflower oil
  • 1 tbsp (14 g) niter kibbeh, Ethiopian spiced clarified butter, optional; use another 1 tbsp (15 ml) oil or unsalted butter if unavailable
  • 2 tbsp (12 g) berbere, plus more to taste; choose a mild or hot blend according to preference
  • 4 garlic cloves (about 12 g), finely minced
  • 1 tbsp (15 g) finely grated fresh ginger
  • 2 tbsp (30 g) tomato paste
  • 1 can diced tomatoes, 14½ oz (411 g), including their juices
  • 1 cup (240 ml) water or low-sodium fish or vegetable stock
  • 1 tsp (6 g) fine salt, divided, plus more as needed
  • ½ tsp (1 g) ground black pepper
  • ½ tsp (1 g) ground cumin, optional
  • 1 tbsp (15 ml) fresh lemon juice, plus lemon wedges for serving
  • 2 tbsp (8 g) chopped fresh cilantro or parsley, optional

Instructions

  1. Prepare the ingredients. Pat the fish dry and cut it into pieces of roughly equal size so they finish cooking together. Season lightly with about ¼ tsp of the salt and the black pepper, then keep it refrigerated while you make the sauce. Chop the onions, mince the garlic, grate the ginger, and measure out the spices. There is no need to marinate the fish; leaving it in lemon juice would change its texture before it goes into the stew.
  2. Soften the onions. Set a wide, heavy saucepan or Dutch oven over medium heat. Add the onions and cook, stirring often, for 12 minutes, until they are soft, translucent, and reduced in volume. If they begin to stick or brown sharply, lower the heat and stir in a tablespoon of water. The goal is to soften and sweeten them, not to develop a deeply browned crust.
  3. Build the spiced base. Stir in the neutral oil and niter kibbeh, if using. Add the garlic and ginger and cook for 2 minutes, stirring so the garlic does not scorch. Sprinkle in the berbere and cumin, if using, and stir for 1 minute. The spices should smell fragrant; if the pan seems dry, add a splash of water rather than letting the berbere burn, which can make the sauce taste bitter.
  4. Simmer the tomato sauce. Mix in the tomato paste until it coats the onion mixture. Add the canned tomatoes, their juices, the remaining salt, and the water or stock. Bring the sauce just to a gentle simmer, then cook uncovered for 8 minutes, stirring occasionally. It should thicken slightly but remain loose enough to surround the fish. Taste a small spoonful and add a little more berbere if you want extra warmth.
  5. Cook the fish gently. Lower the heat so the sauce barely simmers. Nestle the fish pieces into the sauce in a single layer, spooning a little sauce over the tops. Cover the pan and cook for about 8 minutes, checking carefully toward the end. Cooking time depends on the thickness and type of fish. Check the thickest piece with a food thermometer: USDA FSIS lists 145°F (63°C) as the safe minimum internal temperature for fish. At that temperature, the flesh should look opaque and separate easily into flakes. Avoid vigorous boiling or repeated stirring, both of which can break the pieces apart.
  6. Finish and serve. Remove the pan from the heat and gently stir in the lemon juice. Taste the sauce and adjust the salt, lemon, or berbere in small amounts. Scatter with cilantro or parsley if desired, and bring the stew to the table while hot, with lemon wedges alongside.

Tips

  • Choose fish that holds together. Cod, haddock, pollock, and halibut are good options. Very delicate fillets can still work, but cut them into larger pieces and handle them as little as possible. If using frozen fish, thaw it safely in the refrigerator and pat it dry before seasoning.
  • Adjust for your berbere. Blends differ in heat and saltiness. Start with 1½ tablespoons if your blend is especially hot, then add more after the sauce simmers. If you cannot find berbere, use 1 tablespoon paprika, ½ teaspoon cayenne, and ½ teaspoon each ground cumin and coriander. This gives a useful spiced tomato stew, but it will not have berbere’s distinctive Ethiopian flavor.
  • Keep the onion base gentle. Ethiopian-style stews often begin with a generous amount of slowly softened onion. Use medium heat and a splash of water if needed. Browning the onion quickly can make the finished sauce taste heavier and less balanced.
  • Use a broad pan and avoid stirring hard. A wide pan lets the fish sit in a mostly single layer, so it cooks evenly. Once the fish is in the sauce, lift or turn pieces carefully with a spoon instead of stirring in circles.

Serving Suggestions

Serve the stew hot with injera, the soft, tangy Ethiopian flatbread traditionally used to scoop up stews and their sauces. If injera is not available, serve it with steamed rice, which catches the tomato and berbere sauce well. A plain flatbread or crusty bread is another practical option, though it gives the meal a different texture from injera.

For a fuller table, add a simple side of sautéed greens, such as collards or spinach, or a crisp salad dressed with lemon. Keep accompaniments mild so the fish and spiced sauce remain the focus. A small dish of extra berbere or lemon wedges lets people adjust their own portions without making the whole pot hotter or more acidic.

Variations

Use niter kibbeh for a more traditional flavor. This clarified butter is infused with spices and is used in many Ethiopian dishes. It can be difficult to find outside Ethiopian or specialty grocery stores. The recipe uses it as an optional addition; plain oil keeps the stew dairy-free, while unsalted butter adds richness but not the same aromatic flavor.

Make it milder or hotter. Berbere blends vary, so adjust the amount to suit the blend you have. For a milder pot, begin with 1 tablespoon and offer additional berbere at the table. For a hotter stew, add a small pinch of cayenne with the berbere rather than increasing it dramatically; a gradual adjustment is easier to control.

Try another firm fish. Haddock, pollock, halibut, or thick pieces of tilapia can replace cod. Lean fish can dry out if simmered too long, so use the thermometer and take the pan off the heat as soon as the thickest pieces reach 145°F (63°C). Avoid mixing fish with very different thicknesses unless you can add the thinner pieces later.

Make the sauce ahead, not the fish. The onion, tomato, and berbere base can be cooked without the fish, cooled, and refrigerated. Reheat the sauce until simmering, then add the fish and cook it just before serving. This keeps the fish from becoming tough during a second long simmer.

Storage and Reheating

Refrigerate leftover stew within 2 hours of cooking, in a shallow airtight container. It keeps for 3 to 4 days in the refrigerator. Fish is delicate, so the pieces may soften and flake more after storage, but the sauce remains flavorful. For best texture, store any extra sauce separately from uncooked fish rather than assembling more portions than you plan to eat.

Reheat only the amount you need in a covered saucepan over low heat, stirring the sauce gently around the fish. Add a tablespoon or two of water if the sauce has thickened. Heat leftovers to 165°F (74°C), checking the center with a food thermometer, and avoid repeatedly cooling and reheating the whole pot. You can also reheat a portion in a microwave-safe dish, covered loosely, in short intervals; stir the sauce carefully between intervals and check that it reaches 165°F (74°C). Freeze leftovers in a suitable airtight container for up to 2 months for best quality, then thaw in the refrigerator and reheat to 165°F (74°C); the fish may be softer after freezing.

Frequently Asked Questions

What does asa wot mean?

Asa means fish in Amharic, and wot (also written wat) refers to a stew. The name is used for Ethiopian fish stews, but recipes are not identical everywhere. The fish, spice level, cooking fat, and thickness of the sauce can all vary.

Is Ethiopian fish stew very spicy?

It can be, but the heat depends on the berbere blend and how much you use. Some blends are aromatic and moderately warm, while others contain more hot pepper. Start with less than the recipe’s full amount if you are unsure, simmer the sauce, and adjust before adding the fish.

Can I use frozen fish?

Yes. Thaw it in the refrigerator, not on the counter, and pat it dry so excess moisture does not thin the sauce. Cut it into evenly sized pieces and check the thickest piece for 145°F (63°C). If the fish is still partly frozen in the center, it will cook unevenly and may need more time.

Can I make this stew without tomatoes?

Tomatoes provide acidity and body in this version, so leaving them out changes the sauce substantially. If you need to avoid canned tomatoes, use about 1½ cups (270 g) peeled, chopped fresh tomatoes in their place and simmer until they soften. A stew made without tomatoes would need a different balance of liquid and seasoning rather than a simple one-for-one omission.

Why did my fish fall apart?

Fish often breaks up when it is overcooked, stirred too forcefully, or cut into small pieces. Keep the sauce at a gentle simmer, use pieces about 1 inch (2.5 cm) across, and spoon sauce over them instead of stirring once they are added. Check for doneness early because thin pieces can reach a safe temperature before thicker ones.

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).