A simple Brazilian Fish Stew called Moqueca made with your choice of firm white fish simmered in coconut milk with onion, tomatoes, chilies, and lime. Easy, fast, and full of flavor! Serve with rice. Video.

This simple Moqueca recipe (pronounced “mo-KEY-ca”) is easy to make, takes about 35 minutes, and is perfect for busy weeknights and elevated enough for entertaining.
I love making Moqueca when I have guests over because it’s one of those recipes that’s truly simple to make but feels very elevated. You can make part of it ahead of time and finish it up quickly right before serving.
This recipe is a family favorite it's so versatile. It appears at request, every year at our Christmas eve dinner party, as a base for mussels. We make it throughout the year, with cod, or salmon, or shrimp and sometimes a combination. It is well loved.
Why you’ll love this Moqueca recipe!
Quick and easy! What I love about this Brazilian Fish Stew is how fast it is to prepare, and it’s made with simple, familiar ingredients. Ready in 35 minutes, it’s quick enough for weeknights, yet special enough for Sunday supper.
Bold, Brazilian flavor. Made with your choice of white fish, aromatic veggies, jalapeño for heat, savory tomatoes, cooling coconut, and fresh lime, this stew is layered in satisfying flavors!
Makes delicious leftovers. The flavor of the stew gets even better the next day. Leftovers keep for a few days, or you can freeze it! If making this ahead, leave out the fish and nestle it in when reheating.
What is Moqueca?
Moqueca is a Brazilian fish stew with coconut milk, tomatoes, and peppers. The dish is traditionally served over rice with lime and cilantro.
This version hails from Salvador, a bustling city on the coast of Brazil, just north of Rio de Janeiro, that offers up delicious seafood prepared using African influences and techniques. This part of Brazil is known for pairing fish with spicy chilies, lime, and cooling coconut milk, a lovely combination.
Ingredients in Moqueca

- White fish: Use halibut, black cod, sea bass, cod, or escolar. Thicker cuts are best. Even shrimp or shellfish (clams or mussels) would work here.
- Lime: You’ll need both lime zest and lime juice to season the fish and the broth.
- Oil: My preference is Dende, a Brazilian red palm oil, for the best flavor. But coconut oil or olive oil works well too!
- Vegetables: Onion (red, white, or yellow), carrot, red bell pepper, garlic cloves, and jalapeño are sautéed for savory, aromatic flavor and subtle heat.
- Tomato paste and diced tomatoes: Freshly diced tomatoes are preferred for their juicy texture and fresh flavor.
- Spices: Paprika and ground cumin (or whole cumin seeds) add depth and warmth.
- Stock: Use fish or seafood stock, or chicken stock.
- Coconut milk: Use both the liquid and the solids.
- Fresh herbs: Finish with chopped cilantro, scallions, or Italian parsley.
The best fish for Moqueca
Use firm white fish that will hold their shape and not disintegrate in the liquid. Here are the best fish (and seafood) to use in this recipe and soups and stews in general!
- Halibut
- Pacitid Wild Cold or Haddock
- Sea Bass
- Black Cod
- Escolar
- Red snapper
- Scallops or Shrimp
Where to find the best fish
If you’re looking for a good source of wild-caught, sustainably-raised fish or seafood with no antibiotics, I highly recommend Seatopia!
How to make Moqueca
1. Season the fish. Rinse the fish and pat it dry thoroughly. Cut into 2-inch pieces and place in a bowl. Add salt, zest from half a lime, and 1 tablespoon lime juice. Massage the seasoning lightly into the fish to evenly coat all pieces.


2. Sauté vegetables. In a large sauté pan, clay pot, Dutch oven, or other large pot, heat the olive oil over medium-high heat. Add onion and salt, and sauté 2-3 minutes. Turn the heat down to medium, add carrot, bell pepper, garlic, and jalapeño, and cook 4-5 more minutes.


3. Simmer. Add tomato paste, spices, and stock, and mix. Bring to a simmer, then add tomatoes. Cover and simmer on medium-low for 5 minutes, or until carrots are tender. Add coconut milk, taste, and add more salt if needed.


4. Add fish. Nestle the fish in the flavorful coconut stew, pouring the remaining marinade over the fish and into the stew, and either continue cooking on the stovetop, spooning the flavorful liquid over the fish for about 4-6 minutes (or until desired doneness), or for thicker cuts, place in a 350F oven for 8-10 minutes.

Once done, the Moqueca will have thickened beautifully.
5. Season and serve. Taste and adjust, adding salt and lime as needed. Serve over rice, sprinkle with fresh cilantro, scallions, or Italian parsley, and garnish with a wedge of lime.

Chef’s Tips
- Use firm, thick-cut fish. Choose sturdy fillets, like halibut, cod, or sea bass, and cut them into large chunks so they hold their shape and stay tender.
- Pat the fish very dry. Removing excess moisture helps the seasoning adhere better and prevents watering down the broth.
- Use full-fat coconut milk. For the best texture and flavor, don’t substitute light coconut milk. It won’t give the same silky, luxurious broth.
- Don’t overcook the fish. Gently nestle it into the simmering stew and cook just until opaque and flaky. Overcooking will make it tough and dry.
- Spoon the flavorful broth over the fish as it cooks. This keeps the fish moist and infuses it with all the flavors of the stew.
- Use dendê oil if you can find it. It adds authentic color and a distinctive depth that really defines traditional Moqueca.
Serving Suggestions
Serve Moqueca over cilantro lime rice, basmati rice, black rice, or everyday quinoa. We enjoyed this with a simple green salad, dressed with lemon, olive oil, and salt.
Crusty bread makes a nice vehicle for leftover pan juices. Trust me, you won’t want to waste this! So much flavor!
Storage
Leftovers will keep in an airtight container in the refrigerator for up to 3 days. You can also freeze the stew for up to 3 months. If planning to make ahead, prepare the stew without the fish. When reheating, nestle the fish in to cook just before serving.

Please let me know what you think of this Moqueca Recipe in the comments below!
More Seafood Recipes You Might Like
- Tuna Tostadas
- Simple Authentic Cioppino Recipe
- Broiled Miso Salmon
- Mediterranean Baked Cod
- Peruvian Minestrone Soup
- Jambalaya
- 100+ Low-Carb Recipes
- 100+ Cozy Soup Recipes
Happy week, friends! xoxo Sylvia
Watch How to make Moqueca
⭐️ After you try this Moqueca recipe, let us know how it turns out in the comments below. Your review will help other readers, too! Sign up here to join our community and receive our latest recipes and weekly newsletter! xoxo Sylvia
Moqueca Recipe (Brazilian Fish Stew)
- Prep Time: 15
- Cook Time: 20
- Total Time: 35 minutes
- Yield: 4 1x
- Category: 30 minute Dinner, easy dinner, entertaining, fish, healthy dinner, Main
- Method: stovetop
- Cuisine: American, South American
- Diet: Gluten-Free, Keto, Low-Carb
Description
Brazilian Fish Stew (Moqueca) with coconut milk, lime and jalapeño – a flavorful seafood stew that the whole family will love.
Ingredients
- 1 – 1 1/2 pounds firm white fish- Halibut, Black Cod, Sea Bass ( thicker cuts are best)
- 1/2 teaspoon salt
- one lime- zest and juice
- 2–3 tablespoons coconut or olive oil (or use Dende – Brazillian Red Palm oil for the best flavor!)
- 1 onion- finely diced ( red, white or yellow)
- 1/2 teaspoon salt
- 1 cup carrot, diced
- 1 red bell pepper, diced
- 4 garlic cloves- rough chopped
- 1/2 jalapeno, finely diced
- 1 tablespoon tomato paste
- 2 teaspoons paprika
- 1 teaspoon ground cumin (or whole seed)
- 1 cup fish or chicken stock
- 1 1/2 cups tomatoes, diced ( preferably fresh)
- 1 14 ounce can coconut milk ( liquid and solids)
- more salt to taste
- 1/2 cup chopped cilantro, scallions or Italian parsley
- squeeze of lime
Instructions
- Prep the fish. Rinse and pat dry the fish and cut into 2 inch peices. Place in a bowl. Add salt, zest from half the lime and 1 tablespoon lime juice. Massage lightly to coat all pieces well. Set aside.
- Saute. In a large saute pan, heat the olive oil over medium high heat. Add onion and salt, and sauté 2-3 minutes. Turn heat down to medium, add carrot, bell pepper, garlic and jalapeno and cook 4-5 more minutes.
- Simmer. Add tomato paste, spices and stock. Mix and bring to a simmer and add tomatoes. Cover and simmer gently on medium low for 5 minutes or until carrots are tender. Add the coconut milk and taste and add more salt if necessary.
- Nestle. Nestle the fish in the stew and simmer gently until it’s cooked through, about 4-6 minutes. Spoon the flavorful coconut broth over the fish and cook until desired doneness or longer for thicker pieces. ( You can also finish this in a 350F oven).
- Season. Taste and adjust salt and squeeze with lime.
- Serve. Serve over rice, sprinkle with cilantro or scallions and a squeeze of lime. Drizzle with a little olive oil if you like.
Notes
Serve with rice or crusty bread to mop up all the juices.
If making this ahead, I recommend making the stew ahead (without fish), refrigerating it for up to 3 days, reheating it, and then nestling it in the fish to cook right before serving.
Leftovers will keep up to 3 days in an airtight container in the refrigerator or can be frozen for up to 3 months.
Nutrition
- Serving Size: 4 ounces fish plus ¼ of the stew
- Calories: 290
- Sugar: 4.2 g
- Sodium: 429.9 mg
- Fat: 17.4 g
- Saturated Fat: 9.3 g
- Carbohydrates: 11.4 g
- Fiber: 2.3 g
- Protein: 23.5 g
- Cholesterol: 50.1 mg














This fish stew did not disappoint. Will definitely make again. I went easy on the jalapeño because not everyone likes the “heat”. I will add a little more next time. Instructions were excellent!
Delish! And super easy to make.
I doubled the cumin, chilli, paprika and added a spoonful of spicy garlic chutney (from Nana’s Chutneys). Ended up with a tasty stew with a bit of heat at the back!
The lime really made it 🙂
Perfect!
Hello did you use whole cumin seeds?
I did- and you can use either ground cumin or whole seed. Either works!
I did it with shrimp, next time I’ll try fish
Easy to follow absolutely delicious! Your Moqueca Capixaba is best.
Yay!!! thanks so much!
Making this right now… what do you mean by Spoon the flavorful coconut broth over the fish
Take spoonfuls of the coconut broth and drizzle it over the cooking fish -the part of the fish that is sticking out of the broth. 😉
Delicious! My husband is a baby when it comes to spice, but I think I might sneak a little more in next time. But overall, a total success and on our “make it again” list!
Thanks so much and so happy you liked it!
Very tasty. I made it twice I put fresh clams and mussels in it very good…
Great to hear Jim!
Made this for the first time. Loved it. I also added shrimp. Ate it with crusty bread.
Perfect, thanks!
It was so good that my girlfriend insisted that I cook it again the following day !
Haha! Love it Peter!
Loved this….Light and delicious. The additional lime at the end just hit the right note.
Very good! I omitted the red pepper (didn’t have one), and I used a can of petite dice tomatoes with some fresh ones, but otherwise mostly made it as written. We ate it as stew, not over rice, and found the flavors to be very satisfying. The cilantro sprinkled on at the end really added something!
Great to hear Rebecca!
This was incredible. Will definitely make again. Needs WAY more than 1/2 a jalapeno though so I put in about 2.
Perfect!
We love this!! It’s our favourite meal. Scrumptious!!!
Awesome, glad you liked it Gail!
Easy to make and super tasty!
I used 1.6lbs fresh wild cod, added another cup of coconut milk, doubled the cumin and didn’t use the bell pepper as I didn’t have it on hand. Served over coconut lime rice. Shared the recipe with other family members, definitely recommend!
This recipe was fantastic — so easy and allows one to deviate a bit without losing the delicious end product! I used Escolar that I bought frozen, thawed in fridge for a couple of hours, and cut beautifully into cubes as it was still partially frozen while starting the recipe. I used two 15 oz. cans of diced tomatoes (roasted garlic), and added a little bit of white wine to deglaze the vegetables, plus a habernera pepper in lieu of jalaleno (for extra spiciness!). Served w/crusty sour dough — a hit with my family, third time I made it! Thanks so much for a great recipe
I made this dish for dinner and followed it’ exactly as is, which is rare for me! I love to add my owb twist to recipes. But this one is perfect as is! I topped mine with fresh green onion, cilantro and plenty of fresh lime juice which really brightened the flavor. Fur fish, I used frozen wild Alaskan cod and let it thaw out beforehand. Delicious! Saving this to make again and again.
Absolutely delicious. Will definitely make again. Used sablefish, hot smoked paprika, a whole jalapeño and canned tomatoes (since that was what I had). Just wonderful!
Delicious, i added clams and baby octopus in addition to cod. Also added mushrooms
Fantastic ! Very easy to make. Thank you
This reminds me of some Thai dishes and dishes from when I lived in Honduras. It sounds delicious. I’m going to make this for sure.
My second fish stew recipe from you and this is another awesome recipe! I added prawns which was great. Thanks!
One of my new favorite dishes! Absolutely delicious, thank you so much. If I ever manage to find Dende oil one day, I’m excited to see how different it tastes.
Yay Rachael! Glad this worked for you! 🙌
Much different it adds a flavor that you cant imagine. Dende oil is palm oil you can find it at international stores. African market.
Rachel,
I get all my specialty stuff from Amazon.
Absolutely Delicious!!!!! Easy to make. I used coconut Oil instead
Thanks so much!
Absolutely Delisious!!!!! Easy to make
Awesome
I’m planning to veganise it using tofu and nori. Do you think it may work lol?
I do!!!
A bit of eggplant ?and try plantains in 1 inch cuts