Skip to content
DishRoute.

Samaki wa Kupaka.

Grilled Fish in Coconut Sauce

Samaki wa kupaka · say it: sah-MAH-kee wah koo-PAH-kah

Samaki wa kupaka is whole grilled fish finished with a thick coconut sauce that is brushed on in layers while the fish is still over the heat. Kupaka means to smear or spread, and that repeated painting is the entire technique — each coat dries slightly and tightens onto the skin, so by the end the fish wears a glaze rather than sitting in a sauce. The taste balances on three things: the sweetness of pressed coconut, the sourness of tamarind, and enough chilli and garlic to keep it from turning cloying. It is a Mombasa restaurant standard and a coastal home dish, served with rice cooked in coconut milk and a lime wedge.

Whole grilled fish glazed with thick orange coconut sauce, scattered with coriander and lime wedges
Grilled Fish in Coconut Sauce
Gate
Flag of Kenya KenyaMombasa
Prep
20 min
Cook
30 min
Total time
1 hr 20 min incl. 30 min rest
Serves
4
Status
Medium
Nutrition / serving · estimated
Calories 480 kcal
Protein 43 g
Carbs 11 g
Fat 30 g
Fiber 2 g
Sodium 760 mg

Why this recipe works.

  • Keeps the two stages separate — grill first, glaze second — instead of stewing the fish in coconut milk.
  • Uses thick coconut milk and real tamarind, the two ingredients the dish cannot do without.
  • Scores and marinates the fish so the seasoning reaches the bone rather than sitting on the skin.
  • Gives an oven-and-grill route that produces a proper glaze if you have no charcoal.

Ingredients.

14 items
Servings
4
Now showing amounts for 4 servings

For the fish

For the sauce

To finish

Equipment

  • Charcoal grill or oven grill
  • Fish basket or wide spatula
  • Small saucepan
  • Pastry brush

Instructions.

  1. Score and marinate

    Slash each fish to the bone three times on both sides. Mix the lime juice, garlic, ginger, turmeric and salt, rub it into the cuts and cavity, and refrigerate for 30 minutes — the skin will turn deep yellow and feel slightly firm.

  2. Build the sauce

    Soften the onion and chillies in a spoonful of oil over low heat for 5 minutes without letting them colour, then stir in the cumin and tomato paste and cook a minute more until the paste darkens. Pour in the coconut milk and simmer very gently.

  3. Reduce and sour it

    Let the sauce bubble lazily for 12 to 15 minutes, stirring often, until it thickens enough to coat the back of a spoon and a finger drawn through leaves a clear line. Stir in the tamarind and salt off the heat, and taste — it should read sweet first, then sour.

    Tip Never let it reach a rolling boil. Big bubbles mean the coconut milk is about to break.

  4. Grill the fish

    Oil the grill bars and the fish, then cook over medium coals or under a hot oven grill for 6 to 7 minutes a side, until the skin blisters, chars in spots and the fish lifts cleanly without sticking. Handle it with a fish basket or two spatulas.

  5. Paint on the glaze

    Brush a thin coat of the thick sauce over the top of the fish and return it to the heat for 2 minutes, until the surface loses its shine and sets. Repeat three or four times on both sides, until the fish is coated in a glossy, slightly caramelised layer.

    Tip Thin coats set; thick ones slide off and scorch on the coals.

  6. Serve with the remaining sauce

    Lift the fish onto a warm platter, spoon the leftover sauce around it rather than over the glaze, and scatter with coriander. Serve with coconut rice and lime wedges, letting people squeeze lime over their own portion.

Tips from our kitchen.

  • Score the fish to the bone three times on each side so the marinade and heat reach the thickest part of the flesh.
  • Oil the grill bars and the fish itself well; whole fish sticks the moment it touches dry metal and tears when you lift it.
  • Do not shake the tin of coconut milk. The dense cream at the top is exactly what you want for a sauce that clings.
  • Simmer the sauce gently and never let it boil hard — coconut milk splits into oil and grain at a rolling boil.
  • Apply the glaze in three or four thin coats rather than one thick one, letting each set before the next goes on.
  • Reduce the sauce until it coats a spoon before it ever touches the fish; a thin sauce runs straight off into the coals.

Substitutions.

Whole red snapper Sea bass, tilapia, or thick white fish fillets with the skin on
Tilapia is what most Kenyan households actually use. Fillets work but need much less time on the grill, around 4 minutes a side.
Tamarind pulp 2 tbsp lime juice plus 1 tsp brown sugar
It gives sourness but not tamarind's dark, slightly fruity depth. Tamarind paste in jars is widely sold and keeps for months once opened.
Charcoal grill Oven at 200°C for 20 minutes, then the top grill element for glazing
The glaze sets properly under a hot grill. You lose the smoke, which is a real loss, but the sauce carries the dish.

Variations.

Kuku wa kupaka
The same coconut and tamarind glaze applied to grilled chicken, which is arguably even more common on the coast than the fish version.
Prawn kupaka
Large prawns grilled in their shells and brushed with the sauce during the last two minutes, since they cook far faster than a whole fish.
Saucier restaurant style
Some Mombasa kitchens hold back half the sauce and pour it around the fish at the table, giving both a glaze and a proper sauce to spoon over rice.

Storage & reheating.

Eat this the day it is made if you can. Refrigerated, it keeps 2 days and should be reheated covered in a low oven with a spoonful of water so the glaze softens instead of cracking. The sauce can be made up to 3 days ahead and refrigerated separately, which is the better way to plan ahead — it thickens in the cold and needs loosening with a little water over gentle heat. Freezing is not worth it: coconut sauces separate on thawing and grilled fish turns dry and cottony.

Serve with

Wali wa nazi — rice cooked in thin coconut milk — with lime wedges and kachumbari.

The story behind Samaki wa Kupaka.

On the Kenyan coast, coconut is not a flavouring but a daily ingredient with its own equipment. Households keep a mbuzi — a low wooden stool with a serrated iron blade at one end — and grate the flesh from half-shells while sitting on it, then squeeze the shreds twice with water. The first, thick press, called tui la nazi, is what makes a sauce like this one; the thin second press goes into rice and braises. That distinction between thick and thin coconut milk shapes every coastal recipe, and it is why a tin of full-fat coconut milk, undiluted and unshaken, is the right thing to reach for here.

Tamarind, ukwaju, does the work that lemon or vinegar does in other cuisines. The pods grow all along the coast, the pulp is soaked and strained into a sour brown liquid, and it is the counterweight that keeps rich coconut dishes from tasting flat. Fish comes from the same immediate neighbourhood — reef fish landed at Mombasa's old port, at Malindi and along the Lamu archipelago — and the smaller the town, the more likely the fish on your plate was swimming that morning.

The dish is genuinely a two-stage preparation and cannot be shortcut into a simple fish curry. The fish is cooked first over charcoal, which sets the flesh and gives it smoke, and only then does the sauce go on, applied in thin coats so it clings rather than pools. Restaurants along the coast serve it whole on a plate with the surplus sauce spooned around, usually alongside wali wa nazi, coconut rice, so that no coconut goes to waste. Home cooks often make it with tilapia or whatever is affordable rather than the snapper of the tourist menus, and the sauce carries either perfectly well.

Questions, answered.

What does kupaka mean?

It is the Swahili verb for smearing or spreading something onto a surface, and it describes the method rather than an ingredient. The fish is grilled first, then the thick coconut sauce is repeatedly spread over it while it finishes cooking. Any dish described as wa kupaka on a coastal menu has been treated this way, chicken included.

Why did my coconut sauce split?

It boiled. Coconut milk holds together only up to a gentle simmer; past that, the fat separates and the sauce turns grainy with oil pooling on top. Keep the heat low, stir regularly, and add the acidic tamarind at the end rather than the beginning, since acid plus high heat makes splitting far more likely.

How do I stop the fish sticking to the grill?

Get the grill properly hot before the fish goes near it, then oil the bars and brush the fish itself with oil. Leave it alone for the first several minutes — a whole fish releases by itself once a crust has formed, and prodding it early is what tears the skin. A hinged fish basket makes turning it almost foolproof.

Can I use fish fillets instead of a whole fish?

Yes, though whole fish gives better flavour and stays moister on the bone. Use thick, skin-on fillets, grill them skin side down for most of the cooking, and cut the total time to around eight minutes. Start glazing after the first flip so the sauce has time to set without burning.

Is the sauce very spicy?

It is meant to be warm rather than fiery. Coastal cooks usually use one or two chillies for the whole dish, letting the coconut and tamarind lead, and anyone who wants more heat adds pilipili sauce at the table. Deseed the chillies if you want the flavour without much burn.

Keep exploring Kenya.

Kenya has 9 more dishes in the atlas — Githeri and Kenyan Chapati, and 7 more.

Recipe by The DishRoute Kitchen · published August 20, 2026 · updated August 20, 2026