How to make Sweet and Sour Pork Ribs recipe

  • Prep Time
  • Cook Time
  • Yield
  • Difficulty

Being such a familiar dish among authentic Vietnamese meals, sweet and sour pork ribs – in my opnion – are actually not easy at all to be cooked to perfection. There are two most common flaws. Firstly, the ribs might be too hard and chewy, you tend to have to rip the meat off the bone when eating. This happens when the ribs aren’t cooked by boiling/steaming before being pan-fried, the short cooking time isn’t adequate to soften them. The second issue, which is the opposite from the first, is that the ribs are overcooked by boiling for too long. This results in the meat texture being too loose and dry, losing its firmness and juiciness. But good news! The cooking method I shall be introducing below tackles both these problems. These ribs are guaranteed to be tender, juicy, flavorful and thoroughly enjoyable. Pair them with steamed rice, some sour cabbage pickles or sour veggie broth, and you will have one of the best food experiences ever.




  • 450 gram pork ribs
  • ½ tsp cooking salt


  • 1/8 tsp garlic powder (or ½ tsp minced garlic)
  • 1/8 tsp onion powder (or ½ tsp minced shallot)
  • ½ tbsp (7ml) apple cider vinegar
  • ½ tbsp oyster sauce
  • ½ tbsp soy sauce


  • 15 gram shallot (2-3 cloves)
  • 7 gram garlic (2-3 cloves)
  • 1 tbsp (14 gram) sugar
  • 2/3 tbsp (10ml) vinegar
  • ½ tbsp (7ml) oyster sauce
  • 120ml (1/2 cup) hot water
  • 60ml (1/4 cup) cooking oil


– You can replace oyster sauce/soy sauce with fish sauce or pork/chicken stock broth mix, but I find oyster sauce and soy sauce most fitting in terms of flavor. Oyster sauce for me especially is a must.

– The measurements used above are just approximate. These amounts may be slightly different depending on your preference and the brands of marinades and spices you use.


A detailed recipe with all the specific notes is available on my YouTube Channel (Savoury Days Kitchen) in both English and Vietnamese (select your preferred language by clicking CC > Setting > Language). You guys can check it out at this link or the video right below.


1. Peel off the thin membrane in the back of the ribs. This membrane has a very chewy texture, it’s better that we get rid of it. Chop the ribs into small pieces.

2. Transfer the ribs to a pot with ½ tsp salt. Add enough water to submerge the ribs and put on heat. When the water starts boiling, get rid of all the water and briefly wash the ribs before transferring them to a bowl. This step helps rinse the ribs, making sure they are clean and get rid of any unpleasant smell there may be.

3. Marinate the ribs with all the ingredients under “Marinade”. Set aside for 20 – 30 minutes for the marinade to be thoroughly absorbed. If you don’t have time, you can start the next cooking step right after marinating without setting it aside.

4. Peel and mince or finely chop the shallots and garlic under “Sweet and sour sauce”.

5. Add 60 ml cooking oil to a deep pan. Add the minced shallots and garlic, put on medium heat. When the shallots and garlic start to slightly brown, sift them out of the oil. The shallots and garlic will continue to brown a bit more and become crispier. Set them aside for use later.

6. Turn heat to high, add ribs into the oil to fry. Make sure to fry them quickly, just enough for the ribs to be lightly charred on the outside. Avoid overcooking at this step, which would cause the meat to become dry. If you marinate the ribs with chopped shallots and garlic, wipe them off first before frying to avoid them being burned and sticking to the ribs.

7. Once the ribs have been charred, remove the pan from heat. Drain off the oil, leave only 1/2 – 1 tbsp oil in the pan.

8. Use the residual marinade from the bowl in which you marinated the ribs, add 1 tbsp sugar, 2/3 tbsp vinegar, ½ tbsp soy sauce and 120 ml hot water, mix well. If you have little or no marinade left, you may have to add some soy sauce and vinegar to taste. The sauce should be the right amount of sour, salty and sweet.

9. Place the pan with the ribs back on the heat, add the mixed sauce. Turn heat to medium until there is about 2/3 of the sauce left. Cover the pan with a lid, simmer on low heat for 15 – 20 minutes. This step will soften the meat while preserving its juiciness.

10. After the simmering step, remove the lid and turn heat to high, let the sauce evaporate. While cooking, remember to flip the ribs a few times so they are evenly cooked and seasoned.

11. When the sauce has thickened to your liking, turn off heat. Add the fried shallots and garlic (in step 5) to the ribs and stir well. This complements the dish’s aroma.

Serve hot.


  • Recipe by: Linh Trang
  • Written by: Holly Le

Related Post

Leave a Reply

Your email address will not be published. Required fields are marked *