Brazilian · Main · Tested 12 times

Moqueca — Brazilian Fish Stew

Brazil's sunshine in a pot: chunks of white fish gently stewed with coconut milk, tomatoes, peppers, onion and coriander, enriched with golden dendê (palm oil) in the Bahian style. Bright, creamy and fragrant with lime — cooked in one pan and ladled over rice with a side of pirão. No browning, no fuss.

By Beatriz Costa · Brazil editor · Published 2026-06-01 · Updated 2026-06-01
Jump to recipe →
Prep
30 min
Cook
30 min
Total
60 min
Yields
4 servings
Difficulty
Easy
#brazilian#fish#coconut#gluten-free#one-pot
Quick answer · A 30-second answer

Marinate firm white fish in lime, garlic and salt. Layer onion, tomato and peppers in a pot (a clay panela is traditional), lay the fish on top, pour over coconut milk and a spoonful of dendê palm oil, and scatter with coriander. Simmer gently — without stirring much — until the fish is just cooked. Finish with more coriander and lime, and serve with rice and pirão.

  • Don't brown anything — moqueca is built in gentle layers and simmered, keeping it fresh and bright.
  • Dendê (palm oil) gives the Bahian colour and aroma; use it sparingly, or olive oil for a lighter capixaba style.
  • Add the fish near the end and simmer gently so it stays in tender flakes, not broken up.

Equipment

  • Wide pot or clay panela
  • Lid

Ingredients

Fish & marinade

  • 700 g firm white fish fillets, in chunks, snapper, cod, halibut
  • Juice of 1 lime
  • 3 garlic cloves, minced
  • 1 tsp salt, pepper

Stew

  • 1 onion, sliced in rings
  • 2 tomatoes, sliced
  • 1 red and 1 yellow pepper, sliced
  • 400 ml coconut milk
  • 30 ml dendê (palm oil), or olive oil
  • Large bunch coriander, chopped
  • 1 spring onion, sliced

To serve

  • Steamed rice
  • Pirão (broth thickened with cassava flour)
  • Lime wedges, hot sauce

Method

  1. STEP
    01

    Toss the fish chunks with lime juice, garlic, salt and pepper. Leave to marinate while you prep the vegetables, about 20 minutes.

  2. STEP
    02

    Drizzle a little dendê in a wide pot and lay in half the onion, tomato and peppers. Arrange the fish on top, then cover with the remaining vegetables and a handful of coriander.

  3. STEP
    03

    Pour the coconut milk over and drizzle with the rest of the dendê. Don't stir — keep the layers intact.

  4. STEP
    04

    Cover and simmer over medium-low heat until the fish is just cooked through and the vegetables are tender, 15–20 minutes. Spoon the broth over the top once or twice rather than stirring.

  5. STEP
    05

    Scatter with the rest of the coriander and the spring onion, and squeeze over lime. Serve straight from the pot over rice, with pirão and hot sauce alongside.

Make ahead

Prep the marinade and slice the vegetables ahead. You can build the vegetable-coconut base in advance and add the fish to simmer just before serving so it stays in tender flakes.

Storage

Best eaten fresh, but keeps 2 days refrigerated; reheat gently so the fish doesn't break up or toughen. Not ideal for freezing (the fish and coconut texture suffer). The base (without fish) can be made ahead.

Variations

Moqueca capixaba

The lighter Espírito Santo style: no coconut milk or dendê — just annatto oil (urucum), tomato and coriander.

Seafood moqueca

Use prawns, or a mix of fish and shellfish; add the prawns near the very end.

Vegan (banana-da-terra)

Make it with hearts of palm or plantain instead of fish for a plant-based moqueca.

Serve with

Steamed white ricePirãoFarofaAn ice-cold beer or caipirinha

Nutrition per serving

420 kcal 26 g fat 14 g carbs 32 g protein 7 g sugar 3 g fiber 620 mg sodium
Allergens: Fish
Diet: Dairy-free, Gluten-free

Nutrition values are estimates based on the metric measurements. Adjust as needed.

Frequently asked

What is moqueca?

Moqueca is a Brazilian fish (or seafood) stew, famously from Bahia, made by gently simmering fish with coconut milk, dendê palm oil, tomatoes, peppers, onion and coriander. Nothing is browned — it's layered and simmered — giving a fresh, bright, creamy stew served over rice.

What is dendê and can I substitute it?

Dendê is Brazilian red palm oil, which gives Bahian moqueca its golden colour and distinctive aroma. Use it sparingly. If you can't find it, you can use olive oil (closer to the lighter capixaba style) — the dish will taste fresher and less earthy.

What's the difference between moqueca baiana and capixaba?

Moqueca baiana (Bahia) is richer, made with coconut milk and dendê palm oil. Moqueca capixaba (Espírito Santo) is lighter, with no coconut milk or dendê — just annatto oil (urucum), tomato and herbs. Both are simmered, not browned.

Which fish is best for moqueca?

A firm white fish that holds together in chunks — snapper, grouper, cod, halibut or monkfish all work well. Avoid delicate, flaky fish that fall apart. Add it near the end and simmer gently to keep the pieces intact.

What is pirão?

Pirão is a smooth, savoury porridge made by stirring cassava (manioc) flour into some of the hot moqueca broth until thick. It's the classic accompaniment, spooned alongside the stew and rice to soak up the flavourful sauce.

Cooked this? Rate it.

Real ratings from real cooks. We only show a score once enough of you have weighed in — no fabricated stars.