Brazilian Fish Stew - fish in a fragrant, light coconut broth. Easy to make with everyday ingredients!
Print Recipe
4.93 from 42 votes

Brazilian Fish Stew (Moqueca Baiana)

A traditional Brazilian dish of fish and bell peppers (capsicum) in a delicately flavoured coconut base broth. The broth is quite refreshing and not too rich, unlike many strong flavoured, rich coconut based curries. I made this just using fish but it is also made as a seafood stew with prawns and calamari. Traditionally this is cooked with palm oil which is not easy to source so I made this with olive oil.
Prep Time10 mins
Cook Time25 mins
Total Time35 mins
Course: Fish, Stew
Cuisine: Brazilian
Servings: 2 -3
Calories: 666kcal
Author: Nagi | RecipeTin Eats



  • 1 lb / 500g firm white fish fillet , no skin, cut into 1"/2.5cm cubes (Note 1)
  • 1 tbsp lime juice
  • 1/4 tsp salt
  • Black pepper
  • 1 tbsp olive oil


  • 1 1/2 tbsp olive oil
  • 2 garlic cloves , minced
  • 1 small onion , finely diced (brown, yellow or white)
  • 1 large red bell pepper / capsicum , halved and sliced
  • 1 1/2 tsp sugar (any)
  • 1 tbsp cumin powder
  • 1 tbsp paprika
  • 1 tsp cayenne pepper (optional)
  • 1/2 tsp salt
  • 14 oz / 400ml coconut milk (I used low fat)
  • 14 oz / 400ml canned crushed tomatoes
  • 1 cup fish broth (or chicken broth or water)


  • 1 tbsp lime juice
  • 3 tbsp roughly chopped fresh cilantro / coriander



  • Combine the fish, lime juice, salt and pepper in a bowl. Cover with cling wrap and refrigerate for 20 minutes.
  • Heat the 1 tbsp olive oil in a large skillet over high heat. Add the fish and cook until just cooked through and light golden brown. Remove from the skillet and set aside.


  • Reduce the stove to medium high and heat 1 1/2 tbsp olive oil in the same skillet. Add the garlic and onion and cook for 1 1/2 minutes or until the onion is starting to become translucent.
  • Add the bell peppers and cook for 2 minutes.
  • Add the remaining Broth ingredients. Bring to simmer, then turn down to medium. Cook for 15 to 20 minutes or until it thickens. Adjust salt and pepper to taste.
  • Return the fish to the broth to reheat - about 2 minutes.
  • Stir through lime juice.
  • Garnish with cilantro/coriander and serve with rice.


1. This is best made with firm white fish fillets because they hold their shape better. Firm white fish fillets include: Ling, Blue-eye Trevalla, Coral Trout, Emperors and Mahi Mahi, Halibut, Sword fish, Cod, Bass and Catfish.
However, I have made this with gem fish (like tilapia) and it works great, you just need to be slightly more careful when searing the cubes of fish so they don't fall apart. Use an egg flip to turn them carefully!
2. As with every traditional dish in this world, there are many variations of Brazilian Fish Stew! My recipe is a mish mash of various recipes that stays true to the traditional recipe but slightly tweaked to work for my palette. The main difference is that I like sauce so mine is saucier than most! The recipes I referenced include:
a) Feast Magazine - Fish soup (moqueca baiana)
b) Brazilian Foodie - Moqueca Baiana
c) Saveur - Brazilian Fish Stew
d) Simply Recipes - Moqueca - Brazilian Fish Stew
3. Update: A suggestion from a reader (from Brazil!) is to use coconut oil instead of olive oil. She said that this is a closer substitute to palm oil. She also suggested stirring in 1 or 2 tbsp of coconut oil at the end for extra flavour!
4. Nutrition per serving assuming 3 servings.
Brazilian Fish Stew Nutrition


Serving: 609g | Calories: 666kcal | Carbohydrates: 28.8g | Protein: 40.7g | Fat: 46.9g | Saturated Fat: 31.2g | Cholesterol: 81mg | Sodium: 1193mg | Potassium: 653mg | Fiber: 10.1g | Sugar: 17.7g | Vitamin A: 4150IU | Vitamin C: 94.9mg | Calcium: 160mg | Iron: 8.3mg