This post may contain affiliate links. Please read our disclosure policy.

Incredibly meaty and juicy vegan pork belly! With layers of (coconut) fat that melt in your mouth and a crispy crust, this plant-based meat alternative is a must-try! Plus, it looks surprisingly real!

Vegan "Roast Pork"

Introducing vegan roast “pork”! I’m so excited to share this recipe!

Once again, this is a dish that I discovered in Vietnam. I am blown away by how creative Vietnamese cuisine can be when it comes to making vegetarian dishes. Called “Heo quay chay” there, this vegan pork belly consists of two layers of vegan meat and coconut “fat” topped with a crust to mimic the pork skin!

This recipe is definitely unique and super fun to make. Let’s do it!

⭐️ Why You Should Try This Vegan Pork Recipe

  • It’s super meaty: The balance of the rich “fat” with the meaty layers yields an incredibly meaty texture.
  • It’s easy to make: Just 7 ingredients and 30 minutes to make! Plus, I’m sharing step-by-step photos below to show you exactly how to make it.
  • You can use it in many recipes: This vegan pork belly can be used in stir-fries, sandwiches, baos, noodle dishes, or as a topping for steamed white rice!
Vegan "Roast Pork"

🥣 How to Make Vegan Pork Belly

Preparing this “roast pork” is easy and requires just 7 ingredients:

  • Coconut milkFull-fat coconut milk makes the base for the layers of fat. It brings richness and white color.
  • Tapioca starch and rice flour – Both will help thicken the fat layers during steaming. Tapioca starch has some elasticity, and white rice flour has a stronger structure.
  • Salt and sugar – To season.
  • TVP slices – To make the “meat” layers, we use TVP (textured vegetable protein). Use thin TVP slices like these Unflavored strips or these Vegan Chicken Slices. You can usually find TVP slices online or in many Asian stores. Looking for a substitute? Check out the FAQ section!
  • Tapioca pearls – Optional, tapioca pearls just add some texture to the skin layer, helping give this vegan pork a look closer to the authentic pork belly. Make sure you are using small tapioca pearls.
  • Annatto oil – We are using annatto oil as a natural coloring for the skin layer. It adds a vibrant orange color. If you don’t have annatto oil, you can use some orange food coloring.

This recipe consists of 3 steps:

  1. Preparing: First, we will rehydrate the TVP and make the coconut milk “fat.”
  2. Steaming: We will steam the loaf, layer by layer, finishing with the orange “skin” layer.
  3. Refrigeration: Before cutting into slices, the loaf needs to be cool completely. I usually let it chill overnight in the refrigerator.
  4. Frying: Deep-frying gives the vegan “pork” a crispy texture and helps prevent it from crumbling in stir-fries.

Preparing the “meat” and fat layers

Let’s start by making the coconut milk “fat.” In a bowl, whisk together the coconut milk, water, tapioca starch, rice flour, salt, and sugar.

Vegan "Roast Pork"

Then, add rehydrated TVP slices to the coconut milk mixture and let it sit for about 30 minutes. This step will allow the TVP to soak up some of the coconut milk.

Vegan "Roast Pork"

Preparing the skin layer

To make the orange skin layer, reserve about 3 tablespoons of the coconut milk mixture and combine it with 1 teaspoon of annatto oil and 1 and 1/2 teaspoons of tapioca pearls.


Now comes the fun part, steaming our “pork” loaf! We will be steaming the loaf layer by layer to ensure each layer is cooked properly. To do so:

  1. Arrange the TVP on the bottom of a lightly oiled baking pan (I used a 3.5×6-inch pan).
  2. Top with 2 tablespoons of the coconut milk mixture and steam for 5 minutes.
  3. Add 3 more tablespoons of coconut milk and steam for another 5 minutes.
  4. Repeat steps 1-3 one more time.
  5. Finally, top with the orange mixture (including the tapioca pearls) and steam for another 3-4 minutes.

You will end up with 2 layers of fat and 2 layers of “meat” topped with the orange crust.

Here, I went with a ratio of about 1:1 for the meat-to-fat layers, but feel free to adjust to your liking by adding more or less coconut milk.

Vegan "Roast Pork"

Once your loaf is fully cooked, let it cool completely at room temperature before transferring to the refrigerator for at least 5 hours. After that, you can remove it from the baking pan and cut it into thick slices!

I usually cut it into thick rectangles, but feel free to cut it into larger slices or slightly thinner strips.


Finally, the frying step! To add crispiness and even more richness, we will deep-fry the pork slices.

Heat about 1/3 cup of oil in a large non-stick skillet. Once hot, add the sliced vegan pork and fry for 7-10 minutes or until golden brown and crispy.

Char Siu Sauce

Since this vegan roast pork has a very mild flavor, you want to coat it with a sauce. To do so, prepare a char siu sauce by combining char siu sauce, water, sugar, and five spice in a skillet. Cook for 2-3 minutes until almost syrupy. Add the fried vegan pork and stir to coat. Enjoy!

🍚 What To Serve With Vegan Roast Pork

After stir-frying the “pork” in the char siu sauce, you can simply serve it on top of white rice, quinoa, noodles, or your favorite grain. This vegan roast pork is also delicious in bao buns; you can, for example, swap the tofu in these Sate Tofu Baos for char siu roast pork!

It can also be used in Vegan Spring Rolls (cut into thinner slices), vegetable stir-fries, or Vegan Bánh Mì!


What can I substitute for the TVP?

Basically, any strip of plant-based meat will work. You can use slices of homemade vegan chicken or store-bought vegan chicken. Tempeh might work as well, but I haven’t tried it yet. I would recommend staying away from tofu as it probably won’t stick to the fat layers.

Does the fat layer melt?

It doesn’t. It just gets softer after cooking.

Can I omit the frying step?

You can, but the texture won’t be the same, and your pieces of “pork” won’t hold well if you want to stir-fry them. I highly recommend frying it. If you want a healthier alternative, you can, of course, air-fry it.

Can I bake this vegan pork instead of frying it?

I haven’t personally tried it yet, but I think it should work. Arrange thick slices of vegan pork on a baking sheet and generously brush with oil. Then bake at 355°F (180°C) for 15-20 minutes or until golden brown. You can then stir-fry it with your favorite sauce.

Can I skip the char siu sauce?

Since this vegan pork belly doesn’t have much flavor on its own, you want to cook it in a sauce. Just like tofu, it’s a great vehicle for flavor and will soak up the sauce perfectly. Personally, I love cooking it in the char siu sauce (recipe below), but you could definitely cook it in a black pepper or teriyaki sauce!

This vegan meat alternative is so good! You will be surprised by how meaty it tastes, the crust adds a nice crunch (or should I say crisp!), and the fat layer brings richness and chewiness.

⭐️ Did you like this recipe? Let us know in the comments below, and tag us on Facebook, Instagram, or Pinterest!

Updated on August 2022: The recipe has been revamped with new photos, tips, and a fully reworked recipe.

Vegan "Roast Pork"
Vegan "Roast Pork"

Vegan “Roast Pork”

4.84 from 12 votes
Author: Thomas Pagot
Learn how to make vegan "pork belly" that is crispy on the outside, chewy on the inside, and with layers of (coconut) fat. You will be surprised by how meaty and real it looks and tastes!
Prep Time : 15 minutes
Cook Time : 30 minutes
Total Time : 45 minutes
Servings 1 loaf (about 2 servings)


Coconut "Fat" and Meat Layers

Skin Layer

Char Siu Sauce


  • Add the TVP slices to a large bowl and cover with water. Rehydrate for about 30 minutes or until the slices are soft. Drain and rinse the slices a couple of times. Squeeze the slices to remove as much excess moisture as possible.
  • In a medium mixing bowl, whisk together the tapioca starch, rice flour, coconut milk, water, salt, and sugar. Add the TVP slices to the bowl and let it sit for about 30 minutes. This step will allow the slices to soak up some of the coconut milk.
  • To make the "skin layer": Reserve 3 tablespoons of the coconut milk mixture and transfer it to a small bowl. Add the annatto oil and the small tapioca pearls and stir to combine. Set aside.
  • To steam: lightly oil a small 3.5×6-inch pan. Alternatively, you can line it with parchment paper.
  • Arrange a layer of TVP slices to the bottom of the pan (feel free to cut them if they don't fit). Pour about 2 tablespoons of the coconut milk over the slices, just to cover. Steam in a steamer for 5 minutes.
  • Next, pour in 3 more tablespoons of the coconut milk mixture over the TVP slices and steam for another 5 minutes. This will make our first layer of fat.
  • Repeat one more time with another layer of TVP slices and another layer of coconut milk, steaming each for 5 minutes.
  • Finally, pour in the orange coconut milk mixture over the last layer of fat. Steam for another 4 minutes. Carefully remove the pan from the steamer and let it cool completely at room temperature before transferring to the refrigerator. The coconut layers will slightly harden, and it will be easier to cut.
  • After at least 5 hours in the refrigerator, remove the loaf from the pan and cut it into thick slices using a lightly oiled knife. Note: vegan "pork" will keep for up to 6 days in the refrigerator.
  • To fry: Heat about 1/3 cup of oil in a non-stick skillet over medium heat. Once hot, add the vegan pork slices and fry for 7-10 minutes, flipping halfway through frying. Once the vegan pork is golden brown and crispy, remove it from the oil and transfer it to a plate.

Char Siu "Pork"

  • To a non-stick skillet, add the char siu sauce, water, sugar, and five-spice powder. Heat over medium heat and cook for 3-5 minutes or until the sauce has thickened.
  • Add the fried vegan pork slices and stir to coat. Cook for 2 more minutes, stirring regularly.
  • Enjoy the char siu pork on top of white rice, quinoa, or use in sandwiches, bao buns, banh mi, etc.


  • *If you don’t have TVP slices, you can use store-bought vegan chicken.
  • No nutrition information for this recipe, as it can differ depending on the ingredients used.
  • Recipe adapted from Suc Khoe Tam Sinh and Mai Loves Cooking.
Course : Entree, Main Course
Cuisine : Asian
Did you make this recipe? Tag @fullofplants on Instagram and hashtag it #fullofplants
Share this recipe!

About the Author

Thomas Pagot is the founder, photographer, and recipe developer behind Full of Plants. He created the blog in 2016 as a personal cookbook for vegan recipes. Through years of recipe development, Thomas has successfully grown Full of Plants into a trusted resource for plant-based recipes.

Learn more ➜

The Art of Vegan Cheese Making

🧀 25 Mind-Blowing Vegan Cheese Recipes!

Sign up for the Full of Plants newsletter and you’ll get new recipes delivered by email weekly, PLUS your FREE 100-page printable eBook!


Leave a Reply

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

Rate this Recipe


  1. 5 stars
    We are in Vietnam at present loving the vegan options. Have seen this in some of the chay restaurants and cant believe the resemblance to pork. Going to give it a try now i know whats in it, even though mock meats are not my particular favourite. Curiosity will get the better of me on this occasion.

  2. I ‘m really a fan of your cooking, your creativity, how you present your recipes so first of all thank you! – but what I don’t understand is how you can still use aluminium? Studies already years ago proved that it’s really poisoning. specially when you heat it. Only touching food the aluminum enters right into the food – aluminum is a heavy metal that goes directly to your brain because the body cam’t expulse it, so it get ‘stored’ in the brain – causing all the diseases of Alzheimer etc. there are a lot of studies and scientific proves. it is so easy to reemplace it. as a vegan in general but as a vegan cook I think we all should think also about health and ambiental protection.aluminum is one of the of the unhealthiest industries in the world and not only poisoned us also make a big damage to our planet… I hope that I don’t bother you saying this, maybe it could also be an inspiration. Hope so!

    1. You do not need a pressure cooker, I also tried in a normal steamer and it worked well. I would recommend increasing cooking time by about 10 minutes.

      1. 5 stars
        I Hi Thomas, Now I’m confused..1
        The instructions say a steamer which I took to mean an onto the Cooktown steamer. Is your recommended time in the recipe for a normal over boiling water in a steaming pan? Or a pressure cooker? I have both, but now I’m wondering after your reply. Also while I have you, do you cook the tapioca pearls a bit first or add them in their dry stwte?

        1. Hi Barbara,
          You should use a steamer (bamboo basket or a pot with a steamer insert), not a pressure cooker.
          No, you do not cook the tapioca pearls, just let them sit in the liquid while you are steaming the other layers.

  3. 5 stars
    Wow looks amazing, looking forward to try it!! Do you think you could prepare it in advance and freeze it? If so, how would you do to thaw it and serve it after freezing?

    1. I have never tried freezing so I cannot say for sure but I guess it should freeze well. I would thaw in the fridge the night before and then pan-fry again.

  4. Looks great – but I’m a bit confused as to what you really do with it afterwards? I would think you can’t cook it really (like in a stir-fry) as the “fat” would melt?

    Do you just eat it at room temp?

  5. 5 stars
    I cooked this today and it is not only delicious but it is amazingly tasty. Thank you for another winning recipe.

  6. Like everyone else said, this is super creative! I’m Vietnamese-Canadian and I enjoy seeing your vegan spin on dishes I grew up loving. My mom use to cook Thit Kho (Braised Caramelized Pork and Eggs) all the time and it was a favourite of ours. It’s usually never on restaurant menus, definitely a home comfort food and the best thing on a bed of fluffy white rice. I’m really curious how these chunks would stew in a recipe like that. Thanks for sharing this recipe! 🙂

    1. Thanks Phuong!
      I have a recipe for braised “roast pork” here, I found out you need to add the “pork” at the last time if you want them to keep their shape and hold together. So if you stew this it might fall apart a bit.

  7. Hi, Thomas thank you for this recipe, I cant wait to try it. It looks amazing! I was wondering would it be possible to substitute stinky tofu with just plain tofu? and would I be able to deep dry this or would it melt the “fat” part?

    1. Hi Max,
      I’m afraid it won’t work as fermented tofu is a lot softer and creamier than plain tofu. Simply omit if you want.
      Yes, you can deep fry this, it becomes crispy on the outside and tender on the inside. The fat doesn’t melt.

  8. Looking forward to making this today! I can’t seem to find my rice flour though. Do you think I could substitute regular flour and get somewhat the same results?

  9. 5 stars
    This is SUCH a fun recipe. Stumbled across it while trying to see what the vegan food community has as a substitute for pork fat hahahhah. I love how creative this is and they look just like little nuggets of pork belly!

  10. Usually love your recipes, but this one just looks way too fatty for me, sorry. Also, don’t like to nitpick, but why oh why, on a vegan website’s recipes do I keep seeing meat pies advertised, in all their gory detail? Yuk, very off-putting ☹️

      1. I’m having your seaweed and edamame fried rice today, which is regular favourite, love your stuff (usually) 😘

        1. Hi,
          I got mine from a local Asian store (I had to ask them to order), but also found some online. Look for TVP imitation chicken slices, large TVP cutlets, etc.

    1. Hi Elaniece,
      Could you tell me where you see that exactly please? Bread was one of the ingredient of the old version of the recipe, I recently updated the full recipe and its not required anymore.

  11. 5 stars
    I love this recipe.. I just had it with some pickled carrot and turnips It’s sticky and gooey and delicious.. . I’m going to serve it to my carnivore family. I know they’ll love it
    Thank you.

  12. 5 stars
    Yeeessss!! I made this – it is food from the gods. I followed your recipe to the letter and it worked to perfection. I ‘ve just eaten one slice and I have five left – and no one died for me to make it!!!! Thank you so much. (consider my rating SIX stars)

  13. This looks amazing – thank you for sharing your wonderful creations with this community! I can’t wait to give this a try!

    Couple of quick questions (if you don’t mind) as I read through the recipe and prep hoping you can provide a few clarifications

    1) In the directions I’m not sure where you’re referring to the coconut milk mixture vs. just the coconut milk

    2) Are the annatto oil and tapioca pearls optional? What are the consequences of not including them?

    Thank you! Can’t wait to give this a try.

    1. You are welcome Laura!

      The coconut milk mixture refers to the coconut milk combined with the rice flour and seasonings. Regarding the annatto and tapioca pearls, if you leave them out you won’t have the top orange layer. It won’t really affect the overall flavor though.