Thai Steamed Fish Curry (Hor Mok Pla Grai): Rich, Fragrant, and Traditional

 

Thai Steamed Fish Curry (Hor Mok) served in traditional banana leaf cups, topped with thick coconut cream, sliced red chilies, and kaffir lime leaves, with a wooden spoon lifting a portion of the savory orange curry mousse.

This post may contain affiliate links, which means I may earn a small commission if you purchase through the links at no extra cost to you. Please read my disclosure here.

If you're looking for an authentic Thai dish that's surprisingly simple to master, let me introduce you to Hor Mok Pla Grai—a luxuriously creamy steamed fish curry that will transform your kitchen into a Thai street food stall. This traditional dish might look intimidating, but I'm here to show you just how approachable it really is.

Why You'll Love This Dish

Hor Mok is essentially a Thai fish custard infused with red curry paste, coconut cream, and aromatic herbs. The beauty of this dish lies in its forgiving nature—unlike stir-fries that require split-second timing, steaming gives you a comfortable window to achieve that perfect, silky texture. Plus, it's a complete protein dish that feels indulgent without being heavy.

What to Serve Alongside Hor Mok

In Thailand, Hor Mok shines as part of a balanced meal. Here are the classic pairings:

Moo Krop (Crispy Pork Belly) - The crunchy, fatty richness of crispy pork provides a textural contrast to the soft, creamy curry

Gaeng Jeud (Clear Soup) - A light, peppery broth with tofu and vegetables cuts through the richness and cleanses your palate

Nam Prik Ong (Northern Thai Tomato Chili Dip) - This meaty, spicy dip with raw vegetables adds a bold, tangy element that complements the mild sweetness of Hor Mok

Serve everything with steamed jasmine rice, and you've got yourself an authentic Thai feast.

Thai Steamed Fish Curry (Hor Mok) served in traditional small blue-and-white ceramic bowls, garnished with coconut cream, finely shredded kaffir lime leaves, and red chili strips, with a wooden spoon scooping one portion.

Ingredients You'll Need

For the Curry Base:

  • 400g white fish fillets (snapper, cod, or tilapia work perfectly)
  • 3 tablespoons Thai red curry paste
  • 1 cup thick coconut cream (plus 3 tablespoons for topping)
  • 1 egg
  • 2 tablespoons fish sauce
  • 1 tablespoon palm sugar (or brown sugar)
  • 3 kaffir lime leaves, finely julienned (reserve some for garnish)

For the Cups:

  • Banana leaves (or small heat-proof bowls/ramekins)
  • Cabbage leaves or napa cabbage (to line the cups)

Aromatics & Garnish:

  • 4-5 Thai basil leaves per cup
  • 1 red chili, thinly sliced
  • Extra kaffir lime leaf strips

Step-by-Step Method

Step 1: Prepare Your Fish. Cut fish into small chunks. Place in a food processor and pulse until roughly minced—you want some texture, not a complete paste. This takes about 10 seconds.

Step 2: Make the Curry Mixture. In a large bowl, whisk together curry paste, coconut cream, egg, fish sauce, and palm sugar until smooth. Fold in the minced fish and julienned kaffir lime leaves. The mixture should be thick but pourable—like pancake batter.

Step 3: Prepare Your Steaming Cups You have three easy options:

Banana Leaf Cups (Traditional): Cut banana leaves into 6-inch squares and soften over a flame for 2-3 seconds to prevent cracking. Form into cups using a small bowl as a mold, securing with toothpicks. Line the bottom with a cabbage leaf.

A pile of handmade square banana leaf cups (Kratong) secured with small wooden pins, arranged on a woven bamboo tray, ready to be filled for making Thai Steamed Fish Curry.

Aluminum Foil Cups (Easiest): Use standard cupcake-sized foil cups (readily available at any grocery store). No preparation needed—just line the bottom with a small piece of cabbage leaf.

Ramekins (Most Convenient): Lightly grease small ramekins or heat-proof bowls and line with a cabbage leaf.

The cabbage leaf lining is essential for all methods—it prevents sticking and adds a subtle sweet flavor.

Step 4: Fill and Top Pour the curry mixture into cups until 3/4 full. Add 2-3 Thai basil leaves to each. Spoon about 1/2 tablespoon of thick coconut cream on top. Garnish with kaffir lime strips and sliced red chili.

Step 5: Steam to Perfection Place cups in a steamer basket over boiling water. Cover and steam on medium-high heat for 15-20 minutes. The Hor Mok is done when the center is just set and slightly jiggly—like a baked custard. Don't oversteam or it will become rubbery.

Common Problems & Quick Fixes

Watery Hor Mok: Your coconut cream wasn't thick enough. Next time, use the solid cream from the top of a chilled can, or reduce your coconut cream by simmering it for 5 minutes before using.

Rubbery Texture: You overmixed or oversteamed. Gently fold ingredients, and remove from heat when the center still has a slight wobble.

Curry Separating: The mixture was too hot when you added the egg. Always mix at room temperature, and whisk the egg in gradually.

Bland Flavor: Thai curry paste brands vary wildly. Add an extra tablespoon of curry paste and adjust the fish sauce to taste. The mixture should taste slightly over-seasoned before steaming.

Essential Equipment

Nutritional Information (Per Serving)

the nutrition information for Thai Steamed Fish Curry. The graphic lists 285 calories, 22g of protein, 20g of fat (mostly healthy fats from coconut), 6g of carbohydrates, and 1g of fiber. It features an illustration of the dish in a clay bowl placed on banana leaves.
  • Calories: 285
  • Protein: 22g
  • Fat: 20g (mostly healthy fats from coconut)
  • Carbohydrates: 6g
  • Fiber: 1g

Rich in omega-3 fatty acids and vitamin B12, with immune-boosting properties from the coconut cream and anti-inflammatory compounds from galangal and lemongrass in the curry paste.

Secret Tips from Thai Home Cooks

The Coconut Cream Trick: Place your coconut cream can in the fridge overnight. Use only the solid top layer for the mixture, and the thickest cream from another can for topping. This creates that signature two-layer effect.

Fish Choice Matters: Slightly oily fish like mackerel or salmon make richer Hor Mok, while lean white fish creates a lighter, more delicate version. Mix 80% white fish with 20% shrimp for restaurant-quality depth.

The Cabbage Secret: Using cabbage as a base isn't just practical—it adds a subtle sweetness and prevents the traditional "steamed leaf" flavor that can overwhelm delicate fish.

Temperature Control: Start with boiling water, then reduce to medium when you add your cups. Gentle, consistent steam is better than aggressive bubbling.

Make-Ahead Magic: You can prepare the filled cups up to 4 hours ahead. Cover with plastic wrap and refrigerate, then steam just before serving. Add 2-3 extra minutes to steaming time if cooking from cold.

The Wobble Test: When checking doneness, gently shake the cup. The center should wobble like set Jell-O, not slosh like liquid or sit completely firm like rubber.

Herb Preservation: Drop kaffir lime leaves and Thai basil in the steamer for the last 30 seconds to revive their color and aroma before serving.


Hor Mok Pla Grai proves that impressive Thai cooking doesn't require hours of prep or advanced techniques. With these tips in your arsenal, you'll be turning out restaurant-quality steamed fish curry that will have everyone asking for your secret. The key is embracing the gentle, forgiving nature of steaming and letting those beautiful Thai aromatics do the heavy lifting. Happy cooking!

Comments