This Brazilian fish stew is a quick, weeknight-friendly version of moqueca de peixe, a dish I grew up with, known for its rich coconut broth, fresh herbs, and bright citrus notes.

My version keeps all the bold, comforting flavors but comes together in just 20 minutes using simple, accessible ingredients, perfect for busy nights when you still want something deeply nourishing and full of flavor.

fish stew or stewed fish in a skillet

Author’s Note

As I celebrate 10 years of Garden in the Kitchen, I keep coming back to the recipes that shaped me and this easy Brazilian fish stew is one of them.

I grew up in Brazil, where dishes like moqueca were part of everyday life. Simple, fresh, and full of flavor. Over the years, I’ve learned how to bring those traditional flavors into a more approachable, weeknight-friendly version without losing their essence.

This recipe reflects exactly how I cook today: nourishing, uncomplicated, and deeply rooted in my background.

Thank you for being here and cooking alongside me.

—Silvia

What is Brazilian Fish Stew?

Brazilian fish stew, often known as moqueca de peixe, is a traditional coastal dish made with fresh fish gently simmered in a flavorful broth of aromatics. It’s known for its rich flavors, deeply comforting and vibrant.

There are two main regional styles of moqueca in Brazil:

  • Moqueca Baiana (from Bahia):
    This is the more widely known version, made with coconut milk, tomatoes, onions, garlic, cilantro, and often a touch of dendê oil (palm oil), which gives the stew its signature color and depth of flavor.
  • Moqueca Capixaba (from Espírito Santo):
    A lighter, more brothy version made without coconut milk or palm oil, highlighting the natural flavor of the fish with tomatoes, herbs, and olive oil.

Traditionally, moqueca is cooked slowly in a clay pot, allowing the flavors to gently develop without overcooking the fish.

This recipe is inspired by Moqueca Baiana (which is where I am from), with its signature coconut broth and bright, fresh flavors, but simplified for everyday cooking. It uses accessible ingredients and comes together in about 20 minutes, making it a practical, weeknight-friendly version that still honors the essence of the dish.

I love making my moqueca with white fish, like cod, but halibut, haddock, catfish, or tilapia can also be used. I’ve even made a few versions with shrimp (moqueca de camarão) and salmon! If you’re looking to go all out, add scollops, fresh crab or even lobster into your stew.

fish stew recipe ingredients; two large wild cod filets, green, orange and red bell peppers, grape tomatoes, fresh cilantro and olive oil, on a wood board

Ingredient Notes and Substitutions

  • Fish – Choose a mild, flaky fish like halibut, sea bass, cod, haddock or tilapia.
  • Olive Oil – of choice.
  • White Onion + Garlic – The aromatic base of the stew. Yellow onion or shallots works too.
  • Bell Peppers (1 red, green & yellow, sliced) – use colorful bell peppers for a pop or color, sweetness and that classic moqueca look. Swap or add fresh vine tomatoes for a brighter finish.
  • Canned Diced Tomatoes – adds body and balances the richness. Option: Use fire-roasted tomatoes for a deeper flavor.
  • Tomato Paste – concentrates the flavor of the broth (don’t skip!).
  • Coconut Milk – this is a key ingredient as it creates a creamy, silky broth.
  • Sour Cream (optional) – adds a subtle tang and extra creaminess.
  • Red Pepper Flakes – adds gentle heat. Adjust to taste or omit if needed.
  • Fresh Cilantro – finishes the dish with a fresh, bright flavor. Substitute for parsley (but cilantro is more traditional)
  • Sea Salt & Black Pepper – season to taste, especially at the end.

Silvia’S TIPS

Optional (traditional): add a drizzle of dendê oil (palm oil) at the end for a more traditional Brazilian touch.

➜ Coconut milk: use full-fat for richer flavor. Light coconut milk = thinner broth

Hot Pepper (optional) 🌶️ – traditionally, Brazilian fish stew is made with pimenta malagueta, a small chili that adds a clean, vibrant heat. But you can use any mild-to-medium hot pepper you enjoy

cooking fish stew. Cod being added to the tomato sauce. Fresh ingredients around the cast iron. Wooden spatula

Make It a Brazilian Style Meal

This stew is deeply flavorful on its own, but in Brazil, it’s almost always part of a simple, well-balanced plate. Think: something to soak up the broth, something fresh, and a little texture on the side. Here are my favorite ways to serve it:

  • Rice – this is a must. The fluffy rice soaks up that coconut broth beautifully and balances all the flavors.
  • Brazilian Black Beans – If you want to turn this into a full meal, add a side of black beans. It’s a staple combination in Brazilian cooking and incredibly satisfying.
    👉 Perfect for leftovers the next day, too.
  • Farofa (toasted cassava flour) – this is a traditional Brazilian side that adds a slightly crunchy, toasty texture. Sprinkle a little on top or serve on the side, it soaks up the broth in the best way.
  • Brazilian Vinaigrette (Salada Vinagrete) – a fresh tomato, onion, and herb salad with a light vinaigrette. It adds brightness and acidity that cuts through the richness of the stew.
    👉 This combo is very traditional and one I grew up with.
  • Caipirinha (Brazil’s classic cocktail) – if you’re making this for a gathering or a relaxed weekend meal, a fresh caipirinha is the perfect pairing. Made with lime, sugar, and cachaça, it’s bright, refreshing, and balances the richness of the dish beautifully.
  • 👉 Or swap with sparkling water + lime for a non-alcoholic option.
fish stew (moqueca) with cod in a broth of tomato sauce, garnished with fresh cilantro, served in a cast iron skillet

Looking for more comforting seafood recipes

Want to save this recipe?
Just enter your email and get it sent to your inbox! Plus you’ll get great new recipes from us every week!
fish stew or stewed fish in a skillet
4.93 from 38 votes

Brazilian Fish Stew Recipe (Moqueca de Peixe)

by Silvia Dunnirvine
Easy Brazilian fish stew inspired by moqueca de peixe, made with coconut milk, fresh fish, and bold flavors, ready in just 20 minutes for a quick, nourishing meal.
Prep: 5 minutes
Cook: 18 minutes
Total: 23 minutes
Servings: 4 servings

Ingredients 

  • 2 tbsp olive oil
  • 1 small white onion
  • 2 cloves garlic, minced
  • 1 1/2 lb wild cod
  • 15 oz can diced tomato
  • 1/2 cup coconut milk
  • 1/4 cup sour cream (optional)
  • 2 tbsp tomato paste
  • 1 whole red, green and yellow bell pepper, sliced in rounds
  • 1 pinch sea salt and ground black pepper
  • 1/2 tsp red pepper flakes
  • 1 tbsp fresh cilantro

Instructions 

  • Heat oil in a large skillet or cast iron. Add onion and garlic, cook until fragrant (3 minutes). Add diced tomatoes, stir. Proceed to add in coconut milk, sour cream (if using) and tomato paste. Give sauce a stir and allow it to cook for about 3 minutes.
  • Add sliced pepper and cod chunks. Season wtih salt, pepper and red pepper flakes. Cover and allow fish to simmer for 10-12 minutes. About 3/4 of the way carefully turn the cod, if the fish hasn't been fully immerse in the broth.
  • When done, garnish with fresh cilantro and serve.

Notes

Storage & Reheating

  • Refrigerator:
    Store leftovers in an airtight container for up to 2–3 days.
 
  • Reheating:
    Reheat gently on the stovetop over low heat until warmed through.
    Tip: Avoid boiling, as it can overcook the fish and make it tough. Add a splash of water or broth if needed to loosen the sauce.
 
  • Freezing (optional):
    You can freeze it for up to 1 month, but keep in mind the texture of the fish may change slightly once thawed.

 

Silvia’s Tip 

This stew is best enjoyed fresh, but the flavors deepen beautifully the next day, just reheat gently to keep the fish tender.

Nutrition

Calories: 320kcal | Carbohydrates: 10g | Protein: 33g | Fat: 17g | Saturated Fat: 8g | Polyunsaturated Fat: 1g | Monounsaturated Fat: 6g | Cholesterol: 82mg | Sodium: 330mg | Potassium: 1101mg | Fiber: 2g | Sugar: 5g | Vitamin A: 493IU | Vitamin C: 16mg | Calcium: 90mg | Iron: 3mg

Nutrition information is automatically calculated, so should only be used as an approximation.

Keyword: Brazilian Fish Stew Moqueca, Cod Fish, Cod stew, Fish Stew, Moqueca de Peixe
Course: Dinner
Cuisine: Brazilian
Like this? Leave a comment below!

Hi! I’m Silvia.

My goal is to make cooking simple and enjoyable.

Garden in the Kitchen is full of easy and balanced recipes for busy families. Classics get a healthier twist with additions of veggies or alternative ingredients.

I hope my recipes will inspire you to cook more home meals and above all have fun in the kitchen!

You May Also Like

Leave a comment

Your email address will not be published. Required fields are marked *

Recipe Rating




115 Comments

    1. Hi JoJo! I have never tried without coconut milk personally but I do know that two good (similar) substitutes for coconut milk is almond and cashew milk because they both have that similar nutty and creamy consistency. Hope this helps!

      1. This stew is good but it needs a little more I will add potatoes or put it over some white rice next time. Also remember to season your fish liberally.

    2. I used a 28 oz can of tomatoes, 1 cup of sour cream and a can of coconut milk. It came out a paler color than the nice orange in the picture – maybe it needed more tomato.
      I added fish sauce because I usually make Thai food with coconut milk

      1. Fish sauce sounds delicous! Not sure why yours didn’t have the orange color, only thing I can think of is the tomato sauce itself, different brand yield different results. Did it taste good?

      2. The canned coconut milk is richer than the carton. The broth comes out more like a vodka sauce than a broth. I’d suggest using a 1:1 with water (or maybe a white wine) if using the canned coconut milk. My preference is for a broth so, while this recipe was very tasty and easy, I’ll be experimenting with it in the future. Thanks for posting

    3. I made this tonight for dinner. I followed the recipe as is. My boyfriend and I loved it! We will be adding it to our rotation. Thank you for sharing this delicious recipe!

      1. Joselyn, you are very welcome love. Thanks for visiting, hope you come back for more recipes!! xoxo

    1. Honestly I love BOTH, the canned coconut milk is definitely richer if you don’t mind the stronger taste but I actually used the carton coconut milk for this recipe. Both will work just fine! Personally, I think the canned option is better but that’s probably because I grew up eating it this way.

      1. I used the canned and, while very good, the broth consistency was more like a creamy vodka sauce. My preference would be for a broth over a sauce. So, if using canned I would suggest mixing 1:1 with water or maybe white wine. The carton of coconut milk would make a less rich “broth” without diluting. All in all, excellent recipe. Thanks for submitting

      2. Hi Rick! yes you can adjust the ingredients to have more broth. I honestly have done it both ways and love it just as much as a thicker sauce.

    1. Hi Natasha! There is no cream cheese required in this recipe. Either you were looking at something else or you mean sour cream? in this case you can try cooking it without the sour cream.

      1. I have never tested with greek yogurt but as far as consistency it should work, just not sure about the taste. If you end up trying please let me know the outcome. Thanks!

      1. Thanks so much for your feedback Trisha. I often substitute for coconut milk too and it’s amazing! 🙂

    1. Yes, it will! But you might have to let it cook a bit longer. Check the inside of the fish once in a while to make sure it is cooked through.

      1. I actually use 3 whole peppers, one for each color. But honestly it will not make a difference in the recipe if you use a total of 1 pepper, whether that is one color or a mix a colored peppers. If you love peppers (they do taste pretty great in the sauce), I’d recommend that you use more peppers, it also makes the dish look beautiful to serve. Hope this answers your question 🙂

  1. Hi! What size sour cream did you take 1/2 from? I am located in Ga and could not find the Hood brand anywhere.

    1. Hi Chelsea, I used a 1/2 cup of Hood sour cream and I usually buy the big tub 16oz. I did look it up for your and it doesn’t look like Hood is available in Georgia, unfortunately.

      1. Hi this looks really good but I’m confused. People keep referencing sour cream yet I don’t see any sour cream in the ingredients list?

      2. I’ve done both but in the updated recipe I removed the sour cream because I didn’t feel like it added much to the recipe. The tomatoes and coconut milk which are in the traditional recipe are enough along with the peppers and cilantro

  2. Hi. This was delicious. I made this tonight and used evaporated milk instead of coconut milk because my daughter has allergies to coconut and it came out wonderful! This recipe is definitely a hit even with my hubby and my 11 year old. I even forgot to add the sour cream and we still all approved. I didn’t read far enough that is was good over rice so we had this with those Red Lobster rolls you can make at home. ( my daughter helped with those as I was getting the stew ready)! Thanks again a very nice family dinner

    1. Thank you so much Crystal for your feedback, it made my day! I am so happy to hear that this was a hit with your family. It is a good feeling, isn’t it? I have four kids and I know how hard it is to please everyone so when I do, it feels awesome!