
Chinese XO Sauce Scallop Meatballs
Tender steamed meatballs that marry fresh sea scallops with savory XO sauce, dried shrimp, and aromatic pork fat. The result is a sophisticated dim sum-style appetizer with layers of umami flavor and a delicate, slightly bouncy texture. Serve hot with steamed rice or as part of a Chinese meal.
- Prep
- 20 min
- Cook
- 12 min
- Wait
- 5 min
- Total
- 37 min
- Makes
- 12 meatballs (about 3 per person as an appetizer)
Steps
Before you start
- Have all ingredients measured and prepped before mixing—scallops should be patted very dry and chilled
- Fill a steamer pot with water and bring to a boil before you begin shaping meatballs
- Set out a small bowl of water for your hands to prevent sticking while shaping
Prepare aromatics
- Mince the scallions, ginger, and dried shrimp very finely.
- Set aside in separate small bowls.
- The finer the mince, the better these ingredients will distribute throughout the meatballs.
+ Show details− Hide details
Tip: Use a food processor for the dried shrimp to get it very fine without releasing too much moisture.
Combine meatball mixture
- In a mixing bowl, combine the chopped scallops, pork fat cubes, minced dried shrimp, minced scallions, minced ginger, XO sauce, soy sauce, sesame oil, cornstarch, and white pepper.
- Stir gently with a spoon, then fold in the beaten egg white until just combined.
- Do not overmix—you want a light, tender crumb, not a dense paste.
- The mixture should hold together but feel delicate.
+ Show details− Hide details
Ready when: Mixture is evenly combined and holds together loosely
Tip: Overmixing develops gluten and tough protein, which makes dense meatballs. Mix gently by folding rather than stirring.
Shape and arrange meatballs
- Lightly wet your hands with water to prevent sticking.
- Using a small spoon or ice cream scoop, form meatballs about 1¼ inches (3 cm) in diameter.
- You should make about 12 meatballs total.
- Gently place them on a piece of parchment paper on a steamer basket or steamer insert, leaving about ½ inch (1 cm) of space between each one so steam can circulate.
+ Show details− Hide details
Ready when: All 12 meatballs are shaped and arranged
Tip: Parchment paper prevents sticking and makes removal easier. Keep the mixture cold as you work so meatballs don't fall apart.
Steam the meatballs
- Bring water in a steamer pot or wok to a rolling boil.
- Carefully place the steamer basket with meatballs over the boiling water and cover with the steamer lid.
- Steam for 10–12 minutes until the meatballs are cooked through and slightly firm to the touch.
- The scallop mixture should feel set but still tender, not rubbery.
+ Show details− Hide details
Ready when: Meatballs are opaque throughout, feel firm but tender when gently pressed, and no raw mixture remains in the center when one is cut
Tip: Do not crowd the steamer basket. If your basket is small, steam in two batches rather than pile meatballs on top of each other, which prevents even cooking.
Rest and serve
- Remove the steamer basket from heat and let the meatballs rest for 1 minute to stabilize.
- Carefully transfer them to a serving dish using a small spoon or spatula.
- Serve hot with steamed rice, in dim sum fashion with dipping sauces (soy sauce, vinegar, or a drizzle of hot chili oil), or alongside other components of a Chinese meal.
+ Show details− Hide details
Ready when: Meatballs are still steaming and hold their shape when moved
Tip: Serve immediately while they are still warm. The delicate texture is best enjoyed fresh.
Good to know
Tips
- Patting the scallops dry before chopping is critical—excess moisture will make the mixture mushy and cause meatballs to fall apart during steaming.
- Keep all ingredients, especially the pork fat, as cold as possible. A cold mixture holds together better and steams more evenly.
- If you don't have a bamboo or metal steamer basket, use a silicone steamer insert or even a heatproof colander over boiling water—just ensure it doesn't touch the water.
- XO sauce already contains chili, garlic, and umami depth; no additional seasoning is needed, but taste the mixture before steaming and adjust soy sauce or white pepper if desired.
Make ahead
Meatballs can be shaped 2–3 hours ahead, covered, and refrigerated on their parchment-lined steamer insert. Steam directly from cold, adding 1–2 minutes to cooking time. Do not freeze uncooked meatballs as the delicate texture suffers; freeze only after steaming (see storage).
Storage & reheating
Room temperature: not recommended. Refrigerator: store cooked meatballs in an airtight container for up to 2 days; reheat gently in a steamer for 3–4 minutes or in a 300°F (150°C) oven for 5 minutes until warmed through. Freezer: freeze cooked meatballs on a tray, then transfer to a freezer bag for up to 2 months; thaw in the refrigerator overnight and reheat in a steamer.
Substitutions
- pork fat (or pork belly fat), chilled → unsalted butter, cut into small cubes and chilled. Butter creates a slightly lighter, less savory texture than pork fat but maintains moisture. The meatballs will be slightly less rich.
- dried shrimp, finely minced → finely minced fresh shrimp. Use raw, peeled shrimp finely minced. Fresh shrimp will be milder and less intensely umami; use the same weight. Cooking time remains the same.
- XO sauce → 1½ tablespoons soy sauce mixed with 1 teaspoon chili oil and ½ teaspoon minced garlic. This approximates the spicy-savory profile of XO sauce but lacks the depth. Adjust to taste.
- sesame oil → neutral oil such as vegetable or peanut oil. The sesame flavor will be absent, but the meatballs will still be tender. Add an extra ¼ teaspoon white pepper for depth.





