Skip to content
DishRoute.

Moo Ping.

Thai Grilled Coconut Pork Skewers

หมูปิ้ง · Mu ping · say it: moo PING

Moo ping is thin strips of pork threaded onto bamboo skewers after a night in a marinade of coconut milk, pounded garlic and cilantro root, white pepper, oyster sauce and palm sugar. Over charcoal the sugar caramelizes fast and the coconut milk basting turns the outside sticky and blackened at the edges while the fat inside the meat keeps it soft. The taste is sweet-savoury and heavily perfumed with white pepper — a warmer, more floral heat than black pepper — with a smokiness that comes from fat dripping onto coals. In Bangkok they are a breakfast food, sold from carts at street corners from six in the morning, wrapped in paper with a bag of sticky rice.

Charred grilled pork skewers glazed dark brown on a street grill, served with a basket of sticky rice
Thai Grilled Coconut Pork Skewers
Gate
Flag of Thailand ThailandBangkok
Prep
30 min
Cook
12 min
Total time
8 hr 42 min incl. 8 hr rest
Serves
4
Status
Easy
Nutrition / serving · estimated
Calories 620 kcal
Protein 42 g
Carbs 52 g
Fat 26 g
Fiber 1 g
Sugar 12 g
Sodium 1250 mg

Why this recipe works.

  • Cuts the pork thin and against the grain so the skewers cook in six minutes and stay tender without any pounding.
  • Uses the real garlic-and-cilantro-root paste rather than garlic powder, which is what makes the marinade smell Thai.
  • Includes the coconut-milk basting step that street vendors use and most written recipes leave out.
  • Gives a genuinely workable oven-grill method, with an honest account of what charcoal adds and what it does not.

Ingredients.

12 items
Servings
4
Now showing amounts for 4 servings

For the pork

For the marinade

To finish

To serve

Equipment

  • Bamboo skewers, soaked
  • Mortar and pestle
  • Charcoal grill, ridged grill pan or oven grill
  • Basting brush

Instructions.

  1. Pound the aromatic base

    Pound the garlic, cilantro roots and white peppercorns in a mortar to a fragrant grey-green paste. Work until no whole pieces of garlic remain — it should smell pungent and slightly earthy, like the bottom of a curry.

    Tip A pinch of coarse salt in the mortar gives the pestle grip and speeds this up.

  2. Mix the marinade

    Scrape the paste into a bowl and whisk in the coconut milk, palm sugar, oyster sauce, fish sauce and both soy sauces until the sugar has completely dissolved. Taste it — it should be sweet, salty and strongly peppery, more intense than you would want to eat neat.

  3. Marinate overnight

    Add 800 g of sliced pork and turn it thoroughly so every strip is coated. Cover and refrigerate for at least 4 hours, ideally overnight. The meat will lighten in colour as the marinade works into it.

  4. Skewer the meat

    Soak the bamboo skewers in water for 30 minutes. Thread the pork strips onto them in loose folds, like a ribbon, leaving small gaps between the folds so heat can circulate — about three strips per skewer. Do not pack them tight.

  5. Grill and baste

    Grill over a medium-hot charcoal bed, or under an oven grill at its highest setting about 10 cm from the element, for 5 to 6 minutes a side. Turn every 45 to 60 seconds and brush with plain coconut milk after each turn.

    Tip Each basting should dry to a thin sticky film before the next. That layering is what builds the lacquered crust.

  6. Judge the crust

    They are done when the edges are dark brown and slightly blackened in spots, the surface is glossy rather than wet, and the meat springs back when pressed. Total time is short — pull them the moment the caramel goes deep mahogany, before it turns black and bitter.

  7. Rest briefly and serve

    Let the skewers sit for 2 minutes so the juices settle, then serve hot with a bowl of steamed sticky rice. Pull the pork off the skewer with your teeth or fingers and eat it with rice pressed into small balls by hand.

Tips from our kitchen.

  • Use pork shoulder or collar, never loin. You need the intramuscular fat — lean pork on a hot grill goes dry and stringy no matter how long it marinated.
  • Slice the meat 5 mm thick and about 4 cm wide, across the grain, then thread it onto the skewer in a loose ribbon rather than packing it into a tight block. Air between folds means heat gets in.
  • Soak bamboo skewers in water for at least 30 minutes, and cover the exposed ends with foil under an oven grill or they will burn through.
  • Marinate overnight if you can. Four hours works, but the coconut milk and pepper need time to move past the surface, and the difference is obvious side by side.
  • Baste with plain coconut milk between every turn on the grill. Each coat dries into a thin caramelized layer, and three or four coats is what builds the sticky lacquered crust.
  • Watch the last two minutes closely. Palm sugar goes from mahogany to burnt in well under a minute over live coals.

Substitutions.

Cilantro root The bottom 5 cm of cilantro stems, doubled in quantity
Stems carry a good deal of the same flavour, just diluted. Thai and Vietnamese grocers often sell cilantro with roots attached — buy a bunch and freeze the roots, they keep for months.
Pork shoulder Chicken thigh, skinless and boneless, cut the same way
Gai ping is a real street variant. Chicken thigh cooks in about the same time; chicken breast does not work in this marinade and dries out.
Oyster sauce Extra fish sauce plus a teaspoon of dark soy sauce
You lose a little of the thick clinging quality but the balance stays right. Vegetarian mushroom sauce works too if the pork is being swapped for firm tofu.
White pepper Black pepper, using slightly less
It will taste good but noticeably less Thai. White pepper is the signature aroma here — it is cheap, it keeps, and it is worth buying whole and grinding fresh.

Variations.

Gai ping
The chicken version, made with thigh meat and often a little turmeric in the marinade for colour.
Moo ping nam jim jaew
Served with jaew, the Isan dipping sauce of fish sauce, lime, dried chili and toasted rice powder, which cuts the sweetness sharply.
Moo yang khao niao style
Thicker cuts of pork collar grilled whole and sliced after resting, sold in the evening rather than at breakfast, with the same marinade.

Storage & reheating.

Marinated raw pork keeps 2 days refrigerated and freezes on the skewer for 2 months — freeze it flat on a tray first, then bag it, and grill from frozen with a couple of extra minutes. Cooked skewers keep 3 days but lose their crust; the best reheat is 3 minutes under a hot grill or 5 minutes in an air fryer at 190°C, not a microwave, which turns the caramelized surface rubbery. Sticky rice is best fresh but reheats well wrapped in a damp cloth and steamed.

Serve with

A bag of hot sticky rice, eaten by pulling the pork off the skewer and pressing it into rice balls by hand. Nam jim jaew on the side if you want sourness against the sweet crust.

The story behind Moo Ping.

Grilled meat on a stick is not exclusive to any one country, but moo ping is very specifically a Thai street-cart institution, and its natural habitat is the morning commute. Vendors set up before dawn with a long narrow charcoal grill, a fan, and a tray of pre-skewered pork, and sell to office workers and students who eat standing up or carry it away with a bag of khao niao, sticky rice, to be pulled apart by hand. The pairing is not casual — sticky rice and grilled pork is a complete portable breakfast, and asking for one without the other confuses the transaction.

The marinade is where the Thai identity sits. Three things define it: coconut milk, which tenderizes and provides the sugars for browning; white pepper, which Thai cooking uses far more than black and which brings a musky, almost medicinal warmth; and the paste of garlic and cilantro root pounded together, one of the foundational aromatic bases of central Thai cooking. Cilantro root — the whole knobbly root below the stems, discarded almost everywhere else — has a deeper, earthier flavour than the leaves and is worth asking for by name at an Asian grocer.

The grill technique matters as much as the marinade. Thai vendors work over a shallow bed of coals with the meat close to the heat, turning constantly and brushing with coconut milk between turns, so the surface builds layer after thin layer of caramelized coconut and sugar. This is a fast, attentive grill, not a set-and-forget one — the same sugar that makes the crust will burn to bitterness in under a minute of neglect. A home cook without charcoal can get remarkably close under a hot oven grill or on a ridged pan; what is lost is the smoke from dripping fat, and the recipe below says how much that actually costs you.

Questions, answered.

What cut of pork should I use for moo ping?

Pork shoulder or pork collar, both of which have enough intramuscular fat to survive fast grilling. Pork belly works too if you like it richer. Avoid loin and tenderloin entirely — they are too lean, and over a hot grill they go dry and stringy in a couple of minutes regardless of how long they marinated. Ask the butcher for shoulder in one piece and slice it yourself, which gives you better control than pre-cut strips.

Can I make moo ping without a charcoal grill?

Yes. An oven grill on its highest setting, with the skewers on a rack about 10 cm from the element, produces an excellent result — roughly 4 minutes a side with basting between turns. A ridged cast iron pan over high heat also works. What you lose is the smoke from fat dripping onto coals, which is a real difference but not a fatal one; the marinade and the caramelized coconut crust carry most of the flavour.

Why does my pork burn before it cooks through?

The marinade is full of palm sugar and coconut milk, both of which caramelize fast. If the meat is too thick or the coals are too hot and close, the outside is black before the middle is done. Cut the pork no thicker than 5 mm, keep the coals at a medium-hot bed rather than a fresh raging fire, and turn the skewers every 45 to 60 seconds instead of leaving them to sit.

How long should the pork marinate?

Overnight is ideal, eight to twelve hours in the fridge. Four hours produces a decent skewer where the flavour sits mostly on the surface. Anything less than two hours is barely worth it. You can go up to twenty-four hours without harm — coconut milk is much gentler than an acidic marinade, so the meat will not turn mealy the way it would in lime or vinegar.

What is moo ping traditionally eaten with?

Sticky rice, almost always, sold alongside in a small plastic bag and eaten with the fingers by pressing a pinch of rice into a ball and eating it with a bite of pork. It is a breakfast and mid-morning street food in Bangkok rather than a dinner dish. Some vendors offer nam jim jaew, a sour dried-chili dipping sauce, which balances the sweet marinade nicely.

Keep exploring Thailand.

Thailand has 9 more dishes in the atlas — Khai Jiao and Khao Niao Mamuang, and 7 more.

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