How to make Soy Milk (Duyu)

Homemade soy milk has an incomparable creaminess and more refreshing mouthfeel, unlike the strange slimy viscosity store-bought soy milks have due to the addition of vegetable oils and carageenan.

Growing up my mother often made soy milk at home, usually to add to a cold Korean noodle dish called kong guksu . For a batch made for that dish I remember she would purposely filter the milk in a less refined fashion, perhaps to give the noodle soup/milk more texture and body.

Personally I am not a huge fan of kong guksu, but I absolutely love plain soy milk. I especially seek it more these days, since I’ve decided to make some changes to my diet and to avoid dairy as much as possible (ain’t easy).

It’s incredibly easy to make, less expensive + more tasty than store-bought + even the byproduct can be put to good use (soy pulp aka biji in Korean).

Here is my recipe!

Yields ~ 1.5 liters


  • 1 cup dried soy beans, soaked in cold water overnight (~8 hours)

  • 4 to 6 cups of filtered water

  • 1/2 teaspoon sea salt (optional)

  • 1 tablespoon agave (optional)

You’ll also need:

  • large bowl to capture filtered milk

  • a very fine mesh sieve

  • wooden spoon

  • large cheesecloth (optional but necessary if you want a very smooth result)

  1. Drain the water from the soaked beans in a colander. Then return to bowl and rinse well twice before placing the beans in a pot.

  2. Add in enough water to just cover the beans. Add a pinch of salt to water if you’d like. Gently simmer beans over medium-high heat for approximately 12 to 15 minutes or until the beans are “al dente”. We do not want a bean mash.

  3. Meanwhile prep your filtering station. Place sieve over mixing bowl and have your wooden spoon handy. It might be a good idea to place a large kitchen towel underneath it all (it can get messy!).

  4. Remove beans from heat and rinse in under cold water, still in the pot, to stop the cooking process and until the beans have completely cooled.

  5. Vigorously rinse bean with hands to remove excess skins, draining them off as you go. You don’t have to get rid of ALL the skins, but do your best. I rinsed them thrice. Drain beans once more in a colander.

  6. Place half of the beans into a blender and add 2 cups of water. Blend until smooth then pour into sieve. Stir the mash with your spoon to quicken the filtering process.

  7. Repeat last step for the remaining half of the beans.

  8. Continue filtering your milk by stirring and pressing the pulp with the flat side of your spoon. Once most of the milk is filtered into the bowl, remove sieve then skim off any foam from the top of the milk. Stir in sea salt and agave if you wish. Add in more water over the pulp in the sieve if you want your milk thinner.

  9. Now taste! Good, ain’t it? If the milk is too grainy for your tastes, then filter milk once more through a cheese cloth, squeezing out excess liquid in the end.

  10. Reserve leftover soy pulp, or biji, for other uses (I’ll share some recipes don’t worry!) or discard. Refrigerate milk immediately. Enjoy as soon as possible!

Be well xoxo,