The shining centerpiece of Afro-Brazilian Bahia cooking — firm white fish and shrimp simmered in coconut milk, palm oil, tomato and pepper, finished with cilantro and lime over white rice.
Moqueca baiana is the Atlantic-and-African heart of Brazilian cuisine, a vivid, golden stew of fish and shrimp simmered in coconut milk and dendê (red palm oil) with onion, tomato, sweet pepper, garlic, cilantro and a long squeeze of lime. The dish comes from Bahia in northeastern Brazil, where the Afro-Brazilian Candomblé tradition shaped a kitchen that uses palm oil and coconut milk the way Mediterranean cooks use olive oil and wine — as foundational flavor. The fish (firm white varieties like grouper, snapper, mahi-mahi, sea bass or monkfish) marinates briefly in lime, salt and garlic, then layers into a wide clay or enameled pot called a panela de barro with slices of onion, tomato and red pepper and a final pour of coconut milk and dendê oil. Lid on, gentle heat for fifteen minutes, and the kitchen fills with one of the most intoxicating aromas in world cooking — sweet coconut, smoky palm oil, brightness of citrus and pepper. Served over fluffy white rice with a side of farofa (toasted cassava flour) for crunch and pirão (a porridge made from the stew's broth thickened with cassava flour), moqueca baiana is the kind of dish that defines an entire cuisine in a single bowl.
Serves 4
In a bowl, toss the fish chunks and shrimp with lime juice, minced garlic, salt, pepper and cumin. Cover and refrigerate 15–20 minutes — long enough to season, short enough that the lime doesn't 'cook' the fish.
Pour the olive oil into a wide heavy pot or clay panela (enameled cast iron works well) and warm over medium-low heat. Layer half the onion rings across the bottom, then half the tomato, then half the pepper. Repeat the seasoning vegetables.
Don't pre-sauté — the slow steam from the layered vegetables is what makes moqueca special. No browning.
Arrange the marinated fish in a single layer over the vegetables. Scatter the shrimp on top. Pour any remaining marinade over.
Cover the seafood with another layer of onion, tomato, pepper and the optional jalapeño slices. Tuck most of the chopped cilantro between the layers, reserving some for finishing.
Pour the coconut milk evenly over the top, followed by the dendê oil. The dendê will pool brilliantly orange — don't stir; it's meant to dot the surface and color the stew as it cooks.
Place the lid on the pot. Bring to a gentle simmer over medium-low heat — never let it boil hard, which would toughen the fish. Simmer 15 minutes, until the fish is opaque and flakes easily and the shrimp are curled and pink.
Pull the pot off the heat. Lift the lid and scatter the remaining cilantro over the top. Let rest 3 minutes before serving — the broth thickens slightly as it settles.
Serve directly from the pot at the table, with a separate bowl of steamed white rice and a small bowl of farofa for sprinkling. Pass lime wedges. Each diner spoons rice onto their plate, ladles moqueca over with plenty of broth, and sprinkles farofa on top for crunch.
Dendê (red palm oil) is non-negotiable for authentic moqueca baiana. It gives the dish its color, smoky aroma and signature flavor. Brazilian or West African groceries stock it; substitute is poor — use a blend of olive oil and a pinch of paprika as a fallback.
Don't stir during cooking — the layered approach is what makes moqueca baiana different from a regular fish stew. Just shake the pot gently if needed.
Firm fish is essential — flaky white fish like cod will fall apart. Grouper and mahi-mahi are perfect.
Make farofa by toasting 100 g cassava flour with 1 tbsp dendê and a pinch of salt in a dry skillet for 3 minutes until golden.
Moqueca capixaba — from the neighboring state of Espírito Santo, lighter, made without coconut milk and dendê — uses just tomato, urucum (annatto) oil and herbs.
Moqueca de camarão — shrimp-only version, faster cooking (10 minutes total simmer).
Vegetarian moqueca de banana-da-terra — substitutes ripe plantains and king oyster mushrooms for the fish.
Moqueca de palmito — palm hearts instead of seafood, popular among Brazilian vegetarians.
Best fresh — reheat gently 1 day later if needed but the seafood firms up. Refrigerate up to 2 days. Do not freeze — coconut milk separates and fish texture suffers. The cooking liquid (broth) freezes fine on its own.
Moqueca dates back at least 300 years to the Tupinambá indigenous people of the Brazilian coast, who steamed fish in banana leaves over fire. African slaves brought to Bahia in the 16th–18th centuries introduced palm oil, coconut milk and the cooking style that became moqueca baiana. The dish is sacred in Candomblé religious tradition and is offered to the orixá Iemanjá.
There's no perfect substitute. Use a blend of 2 tbsp olive oil + 1 tsp paprika + a tiny pinch of annatto seeds infused in the oil. The result is close in color but the flavor is missing.
Yes — thaw completely and pat dry before marinating. Frozen mahi-mahi or grouper are widely available and work well.
A traditional accompaniment — take a ladle of the moqueca broth, whisk in 60 g cassava flour off heat until it forms a thick porridge. Serve in small bowls alongside.
Yes — replace 100 ml of the coconut milk with coconut cream for a richer, restaurant-style version. Don't overdo it or the dish becomes heavy.
Per serving (420g / 14.8 oz) · 4 servings total
Ask our AI cooking assistant anything about this recipe — substitutions, techniques, scaling.
Chat with AI Chef →Join the conversation
Sign in to leave a comment and save your favourite recipes