Home » Asian Cuisine » Chinese Cuisine » Fresh Homemade Soy Milk (Stovetop or Instant Pot)

Fresh Homemade Soy Milk (Stovetop or Instant Pot)

Soy milk, invented in China, was first written about in the first century AD. For a long time, it was only really enjoyed in China and didn’t gain much popularity even among other East Asian countries until the 1900’s. Now, it’s completely mainstream and remains one of the most popular non-dairy milks in the world, although it is slowly losing its edge to almond milk. But as someone who grew up on homemade soy milk, I still think it’s the best plant beverage of all!

homemade soy milk being poured from bottle
blending up soybeans for homemade soy milk

Soybean–Soy Milk Conversions

This section is for those of us who love the numbers. Here is the basic conversion formula which you can use to make the perfect amount of soy milk you need:

1 cup dried soybeans (180g) = 2⅔ cup soaked soybeans (400g) + 8 cups water (1920g) = 8 to 9 cups cooked soy milk (1920g to 2160g) + 1 to 2 cups okara (200g to 400g)

So for example, if you want to halve the recipe and make only 1 quart (4 cups) of soy milk, you’ll want to start with 1/2 cup (around 90g) of dried beans, which would produce around 4 cups cooked soy milk (960g) and about a cup of okara (200g).

blended soy milk

Why is there such a wide range for the cooked soy milk and okara measurements? This is because the amount of soy milk you end up with depends on so many factors:

  • The fineness of your nut milk bag or strainer
  • How tightly you squeezed the bag to get the last drops of soy milk out
    • The more firmly you squeeze and twist, the more soy milk you’ll wring out, and the drier and more compact your okara will be.
  • The amount of soy milk and okara left behind in the blender or strainer bag
  • The amount of soy milk that spilled or evaporated during the cooking process

I use a 125-micron nut milk bag which filters very finely, and if I squeeze as hard as I can until I can’t get another drop out, I end up with 1 cup of relatively dry and densely-packed okara. If you are using cheesecloth, a metal mesh strainer, or something else with larger holes, you may end up with a larger volume of wetter, heavier okara.

Where to Buy Dried Soybeans

I got my soybeans from Nuts.com, which has free shipping options to the US and Canada. They are a little more expensive than storebought beans, but I’ve been really impressed by the quality. Since I am a huge soy fan, and dry soybeans last forever, I bought the 25lb bag for $57. It’s been three years and they’re still going strong.

You can buy smaller quantities of soybeans at many grocery stores and bulk food stores. I’ve seen 1lb bags of dried soybeans at T&T. But comparing these ones to the ones from Nuts.com, the beans I bought online have a richer and nuttier flavour.

By the way, you must start with dried soybeans for this recipe. Soaking is not optional. Cooked or canned soybeans don’t work here. I tested out two “quick soak” methods where I 1) parboiled 2) completely cooked the beans before blending and straining. The results of each test were very sub-optimal. The soy milk was watery and not creamy at all.

Don’t Throw Out the Soy Pulp!

The pulp you’re left with after straining homemade soy milk is still full of protein and other nutrients. It’s also known as okara or 渣豆腐 (tofu dregs). It makes the soy milk gritty, which is why we strain it out, but it still has nutritional value. And in the spirit of reducing waste in the kitchen, I always try to use it up instead of throwing it out.

For each batch of this recipe, you’ll end up with between 1–2 cups of okara, weighing anywhere from 200g to 400g, depending on how much you squeeze and how fine your nut milk bag is. (Since I’ll be using the okara anyway, I don’t really spend too much time on trying to squeeze out every drop. It takes me only a couple minutes to do the straining.)

You can do a lot of different things with soy pulp. I am working on putting together a Okara Series to share some of my favourite recipes, but for now here are some okara recipes that I’ve made and enjoyed:

Uses for Soy Milk

homemade soy milk being poured from bottle

Soy milk works as a 1:1 substitute in place of regular milk in most recipes. You can use it for:

… Honestly, though, I also love drinking it straight! It’s great unflavoured or you can also stir in a few drops of vanilla extract and a couple spoonfuls of syrup. Along with some okara recipes, I’ll be working on putting out a few more soy milk recipes for you.

Soy Milk vs Dairy Milk

Soy milk is similar to cow’s milk, not only culinarily (which is why it’s my plant-based milk of choice), but also nutritionally. See for yourself:

/100 gSoy Milk2% Cow’s Milk
Calories38 kcal50 kcal
Protein3.55 g3.36 g
Fat1.641.88 g
Carbohydrate1.29 g4.90 g

So in summary, soy milk is slightly lower in calories, higher in protein, lower in fat, and contains a lot fewer carbs. (And 1/3 of those carbs in soy milk is fiber, whereas all 4.90 g of carbs in dairy milk comes from sugar.)

Step-by-Step Process

Recipe Card

fresh instant pot soy milk
Print Recipe
5 from 2 votes

Homemade Soy Milk (Stovetop or Instant Pot)

A comprehensive guide to making your own homemade soy milk from dried beans, including conversions from US to metric and ratios for scaling up or down.
Prep: 15 mins
Cook: 20 mins
Soak Time:12 hrs
Total: 12 hrs 35 mins
Course: Drinks
Cuisine: Asian, Chinese
Servings: 8 cups (240 g each)
Calories: 91kcal
Cost: $0.12 per cup


For Soaking

  • 1 cup dried soybeans 180g
  • 3 cups cold water 720g

For Blending

  • 2 qt water, divided into 6 cups + 2 cups 1440g + 480g


  • Soak the soybeans in 3 cups of cold water overnight (12–16 hours). If you plan to soak any longer, please leave in the fridge, or the beans will start to develop a sour smell.
  • After soaking, pick out any debris and misshapen beans, then rinse and drain. No need to de-hull the beans.
  • Add the clean, drained soybeans to a blender along with 6 cups of water. (See Note 1 if your blender is too small for this.)
  • Blend on high speed for a minute or until very smooth. (If your blender has a smoothie mode, use that.)
  • Strain the soybean mixture using a nut milk bag (see Note 2 if you don't have one of these) into a large cooking pot or Instant Pot. Rinse out the blender with 2 more cups of water and pour that through the strainer.
  • Save the okara for some other use, then cook the soy milk using one of the two options below.

Stovetop Option

  • Set the pot containing soy milk on medium heat. Stir frequently and keep a careful watch over the pot because soy milk foams over very quickly when heated, just like real milk! Be ready to take it off the heat at any moment.
  • The milk foam will gradually increase while cooking, but just keep stirring to keep it down. At some point, the foam will keep rising and rising despite continuous stirring. This is when you should quickly take it off the heat. The foam will slowly subside… and once it's cool enough to touch you can enjoy it right away or pour it into containers for storage (it will keep up to five days, refrigerated).

Instant Pot Option

  • Set the Instant Pot on the Pressure Cook function ("Manual" on older models) on High Pressure for 10 minutes. Allow pressure to naturally release before opening. You can drink the soy milk right away (after cooling it down, ofc) or store for up to five days in the fridge.


Recipe Notes

  1. If your blender is too small to hold the soybeans along with 6 cups of water, you can reduce the water amount until it’s at a safe level for the blender. Just add the remaining water during step 5 when you’re rinsing out the blender. The important thing to remember is that you are adding 8 cups total to your drained soybeans; how much you add in step 4 vs step 5 doesn’t really matter as much, although more water in step 4 makes it easier for the blender to blend the soy milk smoothly.
  2. Don’t have a nut milk bag? You can also use a piece of cheesecloth, folded two or three times, or a muslin sheet. However, a nut milk bag is a great investment if you plan on making your own plant milks a lot; it works for any kind of milk (soy, almond, cashew, sunflower seed…) and the bag shape really makes straining easier.
  3. Because this is all natural soy milk without any added stabilizers, you may find a thicker liquid settling on the bottom of the container when it’s been sitting in the fridge for a while. (This only tends to happen when I use a coarser straining mesh; soy milk made with strainers of 200 microns or smaller didn’t have this issue). If this happens to you, just shake well before drinking.
2.75 cups of soaked soybeans

Nutrition, Cost, and Emissions Information

One cup of homemade soy milk is 91 cal*, costs $0.12, and releases 46 gCO2e of carbon emissions into the atmosphere.

Feel free to contact me for sources on the nutritional and carbon emissions information presented here. Note that I am not a nutritionist and guidelines on this page are provided for informational purposes only.

* Note the calories here (825 cal total or 103 cal/cup) are slightly overstated because it uses whole soybeans as the basis for calculation, which includes calories and nutrients from okara as well as soy milk. The calories listed on the USDA FoodData Central database (38 cal/100 g) are a more reliable estimate.

Share this post

11 thoughts on “Fresh Homemade Soy Milk (Stovetop or Instant Pot)”

    1. This hasn’t worked for me. I’ve tried making soy milk from pressure cooked beans and it didn’t turn out as creamy or flavourful. What’s your method?

      EDIT: I just tried making another batch of soy milk with cooked beans tonight. Despite blending in my Vitamix for twice as long as I would for my usual soy milk, it came out somewhat watery and very tasteless once I filtered it, not at all like the creamy milk I get from blending the soybeans before cooking. I cannot recommend the method of making soy milk with cooked beans.

      1. I don’t make milk but use the whole cooked beans for soy shakes. Soak 1 C beans overnight. Rinse and cook with 3 C water in Instapot for 10 min high pressure with natural release. Blend hot water 10oz with cooked beans 1 C, cooked brown rice 1/3 C and some of your favorite mixed salted nuts 1/3 C on smoothie setting (BlendTec).

        1. This sounds good!! I can see the nuts adding a nice peanut-butter-esque flavour to the shake. I love using cooked white beans in my smoothies, call me dumb but I somehow never thought to do it with whole soybeans lol.

      2. 5 stars
        Thank you! Finally, a soy milk recipe that combines the taste I want with the amount of effort I’m willing to put into the process. And thank you for using ingredient weight instead of volume – it makes it so much easier to replicate your process.

        Now I’m off to rave about your okara sausage recipe.

        1. Kelly!! You’ve made my day with your lovely comments 🙂 I’m glad the ingredient weights was helpful, I always prefer to go by weight over volume myself.

  1. Pingback: Simple Vegan Soda Bread with Fennel Seed ⋆ real ordinary food

  2. Pingback: Turkish Lentil Soup (Instant Pot or Slow Cooker) ⋆ real ordinary food

  3. Pingback: A Guide to Pekmez: The World of Turkish Molasses ⋆ real ordinary food

  4. Pingback: Crunchy Pan-Fried Soft Tofu + 3 Variations ⋆ real ordinary food

Leave a Comment

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

Recipe Rating