XO sauce in a bowl

XO sauce (XO酱) is a relatively modern creation in Chinese cooking, invented in Hong Kong in the 1980s. The name borrows from the “extra old” label used for premium cognac, but there is no cognac in it. It is all about dried seafood, aromatics, and patience. The sauce is considered a luxury because of the dried scallops and shrimp, which are expensive ingredients, but making it at home saves a lot compared to buying it. If you enjoy rich, savory condiments like my homemade chili oil or Chinese BBQ sauce, XO sauce is the next level.

I first tried real XO sauce at a dim sum restaurant in Hong Kong years ago, and I could not stop thinking about it. It had this deep, layered flavor that was savory, slightly sweet, and a little spicy all at once. I spent a long time experimenting to get the process right at home, because the trick is cooking each ingredient to the correct doneness without burning anything. A lot of online recipes throw everything in at once, but that makes it nearly impossible to control the texture.

The process takes time but it is not complicated. I soak the dried scallops and shrimp, shred them in a food processor, then cook the aromatics and seafood in stages so each component reaches the perfect golden brown. The result is a jar of intensely flavorful sauce that transforms anything I put it on, from plain rice to Chinese stir fry vegetables. It is seriously another level of deliciousness!

XO sauce spoonful

Ingredients

These are the ingredients I use to make this incredible homemade XO sauce that tastes better than anything you’ll ever buy at the store.

XO sauce ingredietns

Dried seafood

You will need to soak the dried scallops and dried shrimp ahead of time, for a minimum of 4 hours or up to overnight. I soak the dried scallops and dried shrimp for at least 1 hour (overnight is better). After soaking, I shred the scallops and mince the shrimp in a food processor.

Important Note: Sometimes I do use warm water to soak dry ingredients in my recipes. But using cold water is the best way to rehydrate them while preserving the maximum flavor. For a recipe like this, I prefer the cold water method for the best result.

Rehydrating dried scallops and dried shrimps

Ham

I mince the dry cured ham (Jinhua or Yunnan style) by hand. If I cannot find Chinese cured ham, I use prosciutto as a substitute.

How to mince dried ham step-by-step

Aromatics and seasonings

I mince the shallots, garlic, and Thai bird’s eye chilis. I also use Shaoxing wine, sugar, oyster sauce, chicken powder, Chinese chili flakes, and a neutral oil like canola. Lastly, I save the shrimp soaking liquid to add extra seafood flavor at the end.

How to mince shallot step-by-step

Technique explanation

The key to great XO sauce is cooking the ingredients in stages, not all at once. I cook the aromatics (shallots, garlic, chilis) first and remove them before they go past golden. Then I add the dried scallops and cook until they just start to brown. The shrimp and ham follow in sequence. Each ingredient has a different cooking time, and if I skip this step, some will be overcooked while others are still raw.

How to Make

1. Fry the aromatics: Heat oil in a tall, heavy bottomed pot over medium heat. Add the minced shallots and garlic and cook, stirring frequently, until they just start to turn golden. Add the minced chilis and fry for a few more minutes until everything is golden and crispy.

Fry the shallots and garlic

2. Strain: the aromatics out of the oil and set them aside. Pour the oil back into the pot.

Drain the aromatics

3. Cook the scallops: Reheat the oil and add the shredded scallops. Cook, stirring constantly, until they just start to brown.

Cook the dried scallops  in a pan

4. Add the shrimp and ham: Add the minced shrimp and continue frying for a few more minutes. Then add the minced ham and keep cooking and stirring until everything turns a deep golden brown.

cookiing the shrimp and ham

5. Combine: Return the fried aromatics to the pot and stir to combine. Pour in the Shaoxing wine and a few spoonfuls of the reserved shrimp soaking liquid.

Pour in the Shaoxing wine into the mixture

6. Season: Add the sugar, oyster sauce, chicken powder, and chili flakes.

7. Finish the sauce: Cook for another few minutes until the color deepens and the scallops look withered and concentrated. Remove from heat and let it cool completely before transferring to a jar.

Key Tips to Consider

Soak overnight for the best texture: I find that warm water for 1 hour works in a pinch, but cold water overnight in the fridge gives the dried scallops and shrimp a softer, more even texture that shreds better in the food processor.

Remove the adductor muscle from the scallops: Each dried scallop has a small tough piece on the side. I run my fingers along the surface and find it easily. If I skip this, I end up with hard bits throughout the finished sauce.

Use a tall pot, not a flat skillet: The oil bubbles up a lot during cooking, especially when I add the Shaoxing wine. A tall, heavy bottomed pot keeps everything contained and prevents splattering.

Do not let the aromatics go past golden: I pull the shallots, garlic, and chilis out of the oil as soon as they turn golden. They continue to cook from residual heat, so if I wait until they are dark brown in the pot, they will turn bitter.

Use a neutral oil: I use canola or vegetable oil because it lets the dried seafood flavor come through. Peanut oil, olive oil, and sesame oil all have strong flavors that compete with the scallops and shrimp.

How to use XO sauce

I keep a jar of XO sauce in the fridge at all times and put it on almost everything. A spoonful over steamed rice turns a plain bowl into something incredible. I stir it into XO fried rice when I want a quick dinner with serious depth. It is also amazing tossed with plain hand pulled noodles, spooned over congee, or mixed into scrambled eggs.

When I cook for friends, I put the jar right on the table and let everyone add as much as they want. It pairs amazingly well with my Chinese steamed fish, stir fried vegetables, or any simple dish that needs a flavor boost. My family goes through a batch in about 2 weeks. I also jar it up and give it as a gift, because homemade XO sauce is the kind of sauce people do not forget.

Chinese XO sauce

Frequently ask questions

Where can I find dried scallops and dried shrimp?

I buy mine at large Asian supermarkets or Chinatown shops, usually in bags in the refrigerated section. In Chinatown, you can also find them in open containers near the entrance of the shop. If you do not have an Asian market nearby, I have also ordered them online. I look for plump, golden colored scallops with a strong seafood smell, which tells me they are fresh.

How long does homemade XO sauce last?

I store mine in an airtight jar in the fridge and it keeps for about a month. For longer storage, I transfer it to the freezer where it lasts up to 3 months. I make sure the oil covers the solids in the jar, which helps preserve it and keeps the flavor fresh.

Can I make this less spicy?

Yes, I just reduce or skip the Thai chilis and cut the chili flakes in half. The heat is not the main flavor here, it is the dried seafood, so the sauce still tastes incredible without the spice. I make a milder batch when my son wants to try it on his rice.

Chinese Cooking Made Easy

Are you new to this website? This free email series is a great place to start. I’ll walk you through a few of my most popular recipes and show you how and why they work. You’ll quickly start to cook better Chinese food in your own kitchen.

Luxurious XO sauce is super rich with a seafood umami flavor that’s both savory and sweet. Add it to rice, noodles, fried rice, and much more to boost the taste.

Homemade XO Sauce (XO酱)

5 from 2 votes
Prep Time: 30 minutes
Cook Time: 50 minutes
Rehydrating time: 4 hours
Total Time: 5 hours 20 minutes
Servings: 2 cups
My delicious homemade XO sauce (XO酱) is made with dried scallops, dried shrimp, and cured ham, all slow cooked in oil until deeply golden and concentrated in flavor. It is rich, savory, and transforms anything you put it on.

Ingredients 

  • 2 oz dried scallops
  • 2 oz dried shrimp
  • 1/2 cup + 2 tablespoons Shaoxing wine (or dry sherry)
  • 1.5 oz dry cured ham , minced (Jinhua or Yunnan style if possible, or prosciutto) (*Footnote 1)
  • 2 large shallots , minced
  • 8 cloves garlic , minced
  • 2 Thai bird’s eye chilis , minced
  • 1 1/4 cups canola oil (*Footnote 2)
  • 1 tablespoon sugar
  • 1 1/2 tablespoons oyster sauce
  • 1 teaspoon chicken powder
  • 1 tablespoon Chinese chili flakes

Instructions

Soak

  • Rinse the scallops and shrimp with running water to remove any dust. Place them in separate heatproof bowls. Add a tablespoon of Shaoxing wine and 1/2 cup warm water to each bowl. Let soak for at least 1 hour or overnight in the fridge. (*Footnote 3)

Prep

  • Drain the soaked seafood, reserving the shrimp soaking liquid. Remove the hard feet on the side of the scallops (adductor muscle) (*Footnote 4). Add the scallops and shrimp into a small food processor and pulse until the scallops are shredded and the shrimp are minced. (*Footnote 5)

Cook aromatics

  • Prepare a large heatproof bowl (enough to hold 2 cups of oil) and layer it with a strainer.
  • Heat a heavy-bottomed pot or high-walled pan (*Footnote 5) over medium heat and add the oil.
  • Once the oil has reached 200 to 250°F (94 to 120°C), add the shallots and garlic. Cook, stirring frequently, until they just start to show color, about 12 minutes.
  • Add the minced chilis. Fry for another 5 minutes, or until the aromatics turn golden and crispy. (*Footnote 6)
  • Strain the aromatics using the prepared bowl with the strainer. Pour the oil back into the pot and set aside the cooked aromatics.
  • Heat the oil again to 200 to 250°F (94 to 120°C). Add the shredded scallops. Cook, stirring constantly, for about 10 minutes, until they just start to brown.
  • Add the minced shrimp and continue to fry for 5 minutes.
  • Add the minced ham. Cook and stir until everything turns a deep golden brown, 10 more minutes or so.
  • Return the fried aromatics to the pot and stir to mix well.
  • Pour in the Shaoxing wine. Add 2 tablespoons of the shrimp soaking liquid along with the sugar, oyster sauce, chicken powder, and chili flakes. Cook for another 5 minutes, or until the ingredients turn a dark brown color and the scallops are withered.
  • Remove the skillet from the stove. Transfer everything to a heat-proof container.
  • Once the sauce has cooled completely, you can store it in an airtight container or a jar in the fridge for about a month, or 3 months in the freezer.

Ingredient Substitution Guide

Notes

  1. Chinese dried ham might be hard to find because not all Asian markets carry it. It’s usually sold in a vacuum package at room temperature. If you cannot find it, prosciutto is a great replacement.
  2. It’s very important to use a neutral oil in this recipe so the flavor does not muddle the rich sauce. Avoid using peanut oil, olive, oil and sesame oil. Other neutral oils like vegetable oil and grapeseed oil are OK.
  3. Soaking the ingredients in cold water overnight in the fridge yield the best texture. If short on time, you can use the warm water method to soak for 1 hour, until the ingredients are fully softened.
  4. You can use your fingers to feel the scallop surface and it will be pretty obvious that a small part is tough. Removing this hard part will yield a more even texture for the cooked sauce.
  5. If you don’t have a food processor, use a knife to mince the shrimp. For the scallops, use your fingers to press the scallop and break it apart into small shreds. This can take a long time. I highly recommend watching your favorite TV show while doing this.
  6. It’s very important to use a tall pot. Do not use a flat skillet! The oil will bubble and rise very high while you cook the sauce.
  7. Be careful not to over-fry and wait until the color turns golden brown. The aromatics will continue to cook after they’ve been removed from the oil.

Nutrition

Serving: 1serving, Calories: 86kcal, Carbohydrates: 1.1g, Protein: 1.1g, Fat: 8.6g, Saturated Fat: 0.7g, Cholesterol: 5mg, Sodium: 25mg, Potassium: 22mg, Sugar: 0.4g, Calcium: 4mg

Did you make this recipe?

I’d love to hear how it turned out for you! Please take a moment to leave a 5-star rating ⭐️ and share your thoughts in the comments further down the page. It really helps others discover the recipe too.