Introduction
This Coconut Spicy Grouper recipe came out of one of those evenings where you pull into the dock later than expected, the cooler’s got a couple of beautiful fillets sitting on ice, and you just want something warm and real on the table without a lot of fuss. Much like our Best Buttery Chilean Sea Bass Recipe, that’s exactly where this dish lives. Coconut Spicy Grouper is the kind of meal that feels like the coast — a little heat, a little sweetness from the coconut milk, and that thick white grouper flesh that soaks up every bit of flavor you throw at it.
I’ve made versions of this for years. Sometimes with red pepper flakes, sometimes with a fresh chili I grabbed at the market on the way home from the boat. It changes a little every time, honestly. But the bones of it stay the same — good grouper, full-fat coconut milk, and enough heat to make you feel it.
If you’ve never cooked grouper in coconut milk before, you’re in for something. The fish doesn’t fall apart. It holds together in the sauce and picks up all that richness without getting lost in it. That’s one of the things I love most about grouper — it’s sturdy enough to handle bold flavors and still taste like itself.
Why You’ll Love This Recipe
- Fast enough for a weeknight: From the time you pull the fish out to the time it’s on the table, you’re looking at about 35 minutes. No marinating overnight, no complicated prep.
- The flavor is genuinely bold: The coconut milk doesn’t soften the dish into something bland. With the chili, garlic, and ginger in there, it stays alive and spicy all the way through.
- Simple home cooking, nothing fancy: You don’t need special equipment or hard-to-find ingredients. One skillet, a can of coconut milk, and a fresh piece of grouper is really all this takes.
Ingredients List
For the fish:
- 1 ½ lbs grouper fillets (about 4 portions, skin off)
- ½ tsp salt
- ½ tsp black pepper
- ½ tsp smoked paprika
- 1 tbsp olive oil or neutral cooking oil
For the coconut spicy sauce:
- 1 tbsp olive oil
- 1 small yellow onion, diced (about ¾ cup)
- 4 garlic cloves, minced
- 1 tbsp fresh ginger, grated
- 1 to 2 fresh red chilies, thinly sliced (or 1 tsp red pepper flakes)
- 1 tbsp tomato paste
- 1 can (13.5 oz) full-fat coconut milk
- 1 tbsp fish sauce
- 1 tsp brown sugar
- Juice of 1 lime
- 2 tbsp fresh cilantro, roughly chopped (for finishing)
- Salt to taste
Step-by-Step Instructions
- Season the grouper: Pat your fillets dry with paper towels. This matters more than people think — wet fish steams instead of searing. Season both sides with salt, pepper, and smoked paprika. Let them sit for about 5 minutes while your pan heats up.
- Sear the fish: Heat 1 tbsp oil in a wide skillet over medium-high heat. When the oil shimmers and just starts to smoke a little, lay the fillets in. Don’t move them. Let them cook 3 to 4 minutes on the first side until you see a golden crust forming on the edges. Flip gently and cook another 2 minutes. They don’t need to be fully cooked through here — they’ll finish in the sauce. Set them aside on a plate.
- Build the base: In the same pan, lower the heat to medium and add the second tablespoon of oil. Add the diced onion and cook for about 4 minutes, stirring occasionally, until it softens and goes a little translucent. You’ll see the edges start to brown slightly — that’s what you want.
- Add garlic, ginger, and chili: Stir in the minced garlic, grated ginger, and sliced chili. Cook for about 1 minute. The smell at this point is something else. Don’t rush this step — you want that raw bite cooked out of the garlic.
- Add tomato paste: Push the aromatics to the side and drop the tomato paste into the center of the pan. Let it sit against the hot surface for about 30 seconds before stirring it into everything. This small step deepens the flavor of the whole sauce.
- Pour in the coconut milk: Add the full can of coconut milk, fish sauce, and brown sugar. Stir everything together and bring it to a gentle simmer. Taste it here. Adjust salt if needed. If you want more heat, add more chili now.
- Finish the fish in the sauce: Nestle the seared grouper fillets back into the sauce. Spoon some of the sauce over the top of each piece. Cover loosely and let everything simmer together on low-medium heat for about 6 to 8 minutes, until the fish is cooked through and flakes easily when you press it gently with a fork.
- Finish and serve: Squeeze lime juice over the top, scatter the fresh cilantro, and bring the pan straight to the table if you can. Serve over rice or with crusty bread to catch the sauce.
Small Tricks From Cooking Fish at Home
I’ve talked a lot about getting that perfect golden sear on the grouper, and honestly, the pan you use makes all the difference. For years, my secret weapon has been a heavy-duty cast iron skillet. The way my Lodge skillet holds a steady, high heat is unbeatable for creating that initial crust that locks in flavor and moisture. It transitions perfectly from searing to a gentle, even simmer for the coconut sauce, meaning all those flavors develop right in the same pan. It’s the one tool I rely on to get this dish right every single time.
If you’re ready to take your searing game to the next level, grab the same skillet I trust in my own kitchen.
Lodge 10.25 Inch Cast Iron Skillet with Assist Handle
✓ prime
We earn a commission if you make a purchase, at no additional cost to you.

Always dry your fish before it hits the pan. I know I said it in the instructions but it’s worth saying again. Moisture on the surface of a fillet will prevent any kind of crust from forming. You’ll just end up with pale, steamed fish sitting in its own water. Paper towels, a gentle press, and then let it breathe for a few minutes. That’s all it takes.
Don’t skip the sear even though the fish finishes in sauce. Some people figure — why bother searing if it’s going into liquid anyway? But that quick sear gives the outside of the grouper a little texture and a layer of flavor that the sauce can’t replicate. It also helps the fish hold its shape instead of breaking apart when you move it around in the pan.
Use full-fat coconut milk, not the light version. I’ve tried the light kind and the sauce ends up thin and a little watery. Full-fat gives you that thick, almost creamy consistency that clings to the fish and makes the whole dish feel substantial. It’s not about richness for the sake of it — it’s about the sauce actually working.
Taste the sauce before the fish goes back in. This is the moment to fix things. Too flat? More fish sauce or a pinch of salt. Too rich? A little more lime. Not spicy enough? More chili. Once the fish is in the sauce, you’re mostly done adjusting. Get it right before that step.
Low and slow for the final simmer. Once the grouper goes back in, resist the urge to crank the heat to finish faster. High heat will tighten the fish and make it rubbery. A gentle simmer — where you see small bubbles occasionally breaking the surface — is what keeps the flesh tender and moist all the way through.
Fresh lime at the end, not during cooking. Lime juice added too early turns bitter in heat. Always squeeze it over the finished dish right before you eat. It brightens everything up in a way that cooked lime just can’t.
Common Mistakes to Avoid
Overcooking the grouper. This is the most common one and it ruins the dish completely. Grouper is a firm fish but it still dries out fast when overcooked. The flesh should be opaque all the way through and flake when you press it — but it should still feel moist and slightly yielding, not tight and chalky. If you’re unsure, pull it off the heat a minute early. It’ll carry over a little from the residual heat of the sauce.
Using a pan that’s too small. If the fillets are crowded in the pan during the sear, they’ll steam each other instead of browning. You want space around each piece. If your pan isn’t wide enough, sear in two batches. It’s worth the extra few minutes.
Adding coconut milk to a screaming hot pan. After you cook the aromatics, if your pan is still at high heat when the coconut milk goes in, it can separate and look curdled. It won’t taste bad necessarily, but the texture of the sauce gets grainy and unpleasant. Bring the heat down to medium before adding the coconut milk and let it come up to a simmer gradually.
Not tasting as you go. Fish sauce is salty. Coconut milk is rich. Chili heat varies wildly depending on the pepper. This sauce needs you to taste it and make small adjustments. Following the recipe exactly without tasting is how you end up with something either too salty or too flat. Trust your mouth more than the measurements.
Variations and Serving Ideas
If you want to stretch this into something a little different, you can add a handful of baby spinach or sliced zucchini to the sauce in the last few minutes of cooking. They absorb the coconut broth beautifully and make the dish feel more complete without changing what it fundamentally is.
Some nights I’ll swap the fresh chili for a tablespoon of sambal oelek — it’s a chili paste you can find in most grocery stores now. It adds a slightly different kind of heat, a little more fermented and complex, and it works really well with the coconut milk.
You can also do this same recipe with snapper or mahi-mahi if grouper isn’t available. The cooking times stay roughly the same. Just keep an eye on thinner fillets — they’ll cook faster in the sauce.
For serving, I usually go with steamed jasmine rice. The sauce soaks into the rice and that’s honestly half the reason to make this dish. Flatbread works too, especially if you want something more casual. A simple cucumber salad on the side cuts through the richness nicely.
What to Serve With
Steamed jasmine rice is the classic move here. The sauce is the star and rice is the best vehicle for it. Cook it plain — no butter, no seasoning — and let the Coconut Spicy Grouper do all the work. For a fantastic coastal appetizer to start the meal, consider our Easy Stuffed Mushrooms with Crab and Cheese.
Crusty sourdough or flatbread if you want something to tear and dip. Especially good for a casual dinner where everyone’s eating at the table together.
Simple cucumber salad — just sliced cucumber, a little rice vinegar, a pinch of sugar, and some sesame seeds. It’s cool and light and balances the heat of the sauce without competing with it.
Steamed bok choy or wilted spinach on the side keeps things clean and adds some green to the plate without overcomplicating dinner.
Storage and Reheating
If you have leftovers — and sometimes you do, depending on how hungry everyone is — store the fish and sauce together in an airtight container in the fridge. It keeps well for up to 2 days. The flavors actually deepen overnight, which is one of those happy accidents of leftover cooking.
To reheat, put it in a small saucepan over low heat with a splash of water or a little extra coconut milk to loosen the sauce. Cover it and let it warm slowly. Don’t microwave grouper if you can help it — it tightens the fish and the texture suffers. If you have to use the microwave, do it at 50% power in short 30-second bursts.
I wouldn’t freeze this one. Coconut milk sauces tend to separate when frozen and thawed, and the fish texture after freezing and reheating isn’t great. Make it fresh, eat it within two days, and you’ll be fine.
FAQs (People Also Ask)
Can I use frozen grouper for this recipe? Yes, but thaw it completely in the fridge overnight and dry it very well before cooking. Frozen fish releases a lot of water as it thaws and if that moisture is still on the surface when it hits the pan, you won’t get a sear. Take your time with the drying step and it’ll work fine.
How spicy is this dish? With one fresh red chili or 1 teaspoon of red pepper flakes, it’s medium heat — noticeable but not overwhelming. If you want it milder, use half the chili and remove the seeds. If you want it hotter, add a second chili or a teaspoon of sambal oelek. The coconut milk softens the heat slightly, so don’t be afraid to go a little heavier on the spice than you think you need.
Can I substitute another fish for grouper? Absolutely. Snapper, mahi-mahi, or even thick-cut cod will all work in this recipe. The key is using a firm, thick fillet that won’t fall apart in the sauce. Thin, delicate fish like tilapia can work but they’ll cook faster and need a gentler hand.
Can I make the sauce ahead of time? Yes, and it’s actually a good idea for busy nights. Make the coconut sauce up to a day ahead and store it in the fridge. When you’re ready to eat, reheat it gently, sear your fish fresh, and finish it in the warm sauce. The whole thing comes together in under 15 minutes that way.
Is this recipe gluten-free? It is, as long as the fish sauce you use is gluten-free — most are, but check the label if you’re cooking for someone with a sensitivity. Everything else in the recipe is naturally gluten-free. Serve it over rice and you’re completely in the clear.
Nutrition
Nutrition Facts
(Per serving. Estimates only, varies by exact ingredients used)
Conclusion
There’s something about making Coconut Spicy Grouper on a weeknight that feels a little like bringing the water home with you. The smell of that coconut sauce with the chili and ginger hitting the pan — it takes you somewhere. And the grouper, sitting in all that richness, just does what good fish does. It shows up.
If you try this one, I hope it feels as easy and satisfying at your table as it does at mine. Leave a comment and let me know how it went — especially if you changed something up. That’s half the fun of cooking fish at home.

Coconut Spicy Grouper
Ingredients
- 1 1/2 lbs grouper fillets, skin off (about 4 portions)
- 1/2 tsp salt
- 1/2 tsp black pepper
- 1/2 tsp smoked paprika
- 2 tbsp olive oil, divided
- 1 small yellow onion, diced (about 3/4 cup)
- 4 garlic cloves, minced
- 1 tbsp fresh ginger, grated
- 1 to 2 fresh red chilies, thinly sliced (or 1 tsp red pepper flakes)
- 1 tbsp tomato paste
- 1 can (13.5 oz) full-fat coconut milk
- 1 tbsp fish sauce
- 1 tsp brown sugar
- Juice of 1 lime
- 2 tbsp fresh cilantro, roughly chopped
- Salt to taste
Instructions
- Pat grouper fillets dry with paper towels. Season both sides with salt, black pepper, and smoked paprika. Let rest 5 minutes.
- Heat 1 tbsp oil in a wide skillet over medium-high heat. Sear fillets 3 to 4 minutes on first side without moving until golden on edges. Flip and cook 2 more minutes. Set aside on a plate — fish will finish cooking in the sauce.
- Lower heat to medium. Add remaining 1 tbsp oil to the same pan. Cook diced onion for 4 minutes, stirring occasionally, until softened and lightly golden at edges.
- Add minced garlic, grated ginger, and sliced chili. Stir and cook for 1 minute until fragrant.
- Push aromatics to the side and add tomato paste to the center of the pan. Let it sit against the hot surface for 30 seconds, then stir into the aromatics.
- Pour in the full can of coconut milk, fish sauce, and brown sugar. Stir to combine and bring to a gentle simmer. Taste and adjust salt or heat as needed.
- Nestle seared grouper fillets back into the sauce. Spoon sauce over the top of each piece. Cover loosely and simmer on low-medium heat for 6 to 8 minutes until fish is cooked through and flakes easily when pressed.
- Squeeze fresh lime juice over the top, scatter cilantro, and serve immediately over steamed jasmine rice or with flatbread.







