This Instant Pot Fish Stew is inspired by the Brazilian dish moqueca, combining coconut milk, tomatoes, and spices to form a richly flavorful stew. Coconut milk adds a unique richness and creamy feel, and the pressure cooker does a spectacular job of blending all of the flavors together. This stew is delightful not only with fish but also other types of seafood.

Prep Time15minutes minutes
Cook Time40minutes minutes
Total Time:55minutes minutes
Servings: 5servings


Stew Base:

  • 1 onion, finely chopped
  • 1 red bell pepper, sliced
  • 5 cloves garlic, minced
  • 14-ounce can crushed tomatoes
  • 1 cup seafood broth or fish broth
  • 3/4 cup canned full-fat coconut milk
  • 2 tablespoons coconut oil
  • 1 tablespoon ground cumin
  • 1 tablespoon smoked paprika
  • 1 teaspoon table salt
  • 1/2 teaspoon ground black pepper
  • 1/4 teaspoon ground cayenne

For Finishing:

  • 1.5 pounds fresh or thawed white fish
  • 2 tablespoons coconut oil
  • 1 tablespoon fresh lime juice
  • 1 tablespoon chopped fresh cilantro or parsley


1-Pressure Cook: Add all stew base ingredients to pressure cooker, and stir until well-mixed. Secure and seal lid, and cook for 10 minutes at high pressure. During cooking, proceed to next step to prepare fish.

2-Prepare Fish: Remove any skin and bones from fish, and pat dry with paper towels if moist. Cut into roughly 1 inch pieces, and set aside.

3-Release Pressure: After pressure cooking has completed, naturally release pressure for 10 minutes. Then manually release remaining pressure by turning knob to venting position.

4-Thicken Stew: Uncover, and turn on saute mode on pressure cooker for medium heat to bring to boil. Boil for about 10 minutes to thicken into stew-like consistency, stirring frequently.

5-Finish & Serve: Stir in fish until cooked through, about 5 minutes. Turn off saute mode. Stir in coconut oil and lime juice until combined. Serve in bowls, and top with chopped cilantro or parsley. Stew will be very hot; cool for 10 minutes before enjoying. Store leftovers.


(1) Crushed Tomatoes. In the U.S., crushed tomatoes are most commonly sold in 28-ounce cans. Note that this recipe only uses 14 ounces; if you can’t find a 14-ounce can, use half of a 28-ounce can.

(2) Broth. If you can’t find seafood broth or fish broth at your grocery store, substitute with chicken broth or vegetable broth, plus 1 to 2 tablespoons of fish sauce.

(3) Coconut Milk. Use an unsweetened full-fat version, not light or reduced fat. I’ve used Goya and Chaokoh brands. Before measuring out the amount to use, stir or shake well because there will be separation in the can. Properly stirred coconut milk should appear thick and creamy, not watery. In the U.S., coconut milk is usually sold in 13.5 fluid ounce cans, which is 1.7 cups. This recipe uses 3/4 cup so you’ll have leftover coconut milk that can be stored in an airtight container for future use.

(4) Cayenne. This amount of cayenne yields mild spiciness, which is my preference because it allows the other flavors in the stew to shine without being overpowered by the cayenne. If you love a very spicy stew, then double the cayenne.

(5) Fish. This recipe calls for firm white fish (like cod or halibut), but you can use other fish or seafood depending on what you have on hand. You can use more delicate fish (like tilapia) if you don’t mind some pieces falling apart during cooking. Since the seafood is added at the end of the recipe, just stir it into the stew for a few minutes or until it’s cooked through. In the comments below, readers have shared their successful experiences using shrimp, sea bass, scallops, mussels, and calamari. If you have frozen fish, thaw overnight in the refrigerator before using in this recipe. I don’t recommend cooking directly from frozen because it’ll exude a lot of liquid into the stew.

(6) Pressure Cooker. I use a 6-quart Instant Pot. If you are using a smaller capacity pressure cooker, make sure that its maximum capacity is at least 7.5 cups, which is the approximate volume of this recipe. Larger pressure cookers are fine.

(7) Sealing Lid. Before cooking, remember to seal the pressure cooker by turning the pressure knob from “venting” to “sealing,” otherwise the pot will not pressurize.

(8) Cooking Fish. Fish is done when it flakes easily with a fork and is no longer translucent.

(9) Leftovers. Store leftovers in a covered container in the refrigerator for up to 3 days. Reheat in the microwave or bring to a simmer on the stovetop (avoid overheating, which will overcook the fish). This stew often tastes better the next day, after the flavors have more thoroughly combined.

(10) Modifying Recipe Yield. To scale the recipe, increase or decrease the ingredients proportionally, but keep the pressure cooking time the same.

(11) Diets. This recipe is suitable for a variety of diets, including keto, low carb, dairy free, paleo, and gluten free.

(12) Recipe Inspiration. This recipe is inspired by the Brazilian dish moqueca, which is a seafood stew that traditionally uses palm oil, coconut milk, tomatoes, onions, garlic, lime, and cilantro. I developed this recipe by referencing a stovetop version, adjusting the ingredients to suit my palette and optimizing the cooking process for the pressure cooker. The Instant Pot does a great job of blending the flavors together, and I like its simplicity — almost a dump-and-go recipe.


Makes 5 ServingsAmount Per Serving (1.5 cups)
Calories 330(49% from fat)
Total Fat 18g27%
Saturated Fat 15g76%
Cholesterol 59mg20%
Sodium 690mg29%
Total Carb 10g3%
Dietary Fiber 3g11%
Sugars 5.5g
Protein 28g
Vitamin A 37% · Vitamin C 72% · Calcium 5% · Iron 17%