Tofu Recipe From Scratch

Block of tofu

Want to make tofu from scratch? You’ve come to the right place! You can turn plain old beans into deliciously fresh tofu. It’s a beautiful process.

Homemade tofu is a fraction of the cost and is very customizable. Make firm, medium or even unpressed tofu like a ricotta style. I love that homemade tofu reduces waste.

You can even transform your tofu into these adorable nuggets, but that, along with a silken tofu recipe, will be for another day. Follow me on social for upcoming videos.

Sourcing soybeans

Tofu starts with soaking soybeans, and I prefer to use organic, non-GMO. Soybeans are so inexpensive that even the highest quality beans will still cost very little compared to other protein sources. If you aren’t sure where to find beans, an excellent place to start is your Asian grocer. Soybeans are also available in bulk at many zero-waste shops; ensure you don’t get roasted beans meant for snacking. My beans are sourced from (not sponsored).


To make tofu, you’ll need a coagulant. There are three common coagulants that I know of: 

  • Magnesium chloride (nigari)
  • Calcium chloride
  • Lemon juice

My preference is for the first, magnesium chloride, as it tends to give the most consistent results. Magnesium Chloride is the ingredient in Japanese nigari which is probably the most common coagulant. You can often find magnesium chloride in powder form in your health food store. I recently purchased the Vancouver Island Nigari, which is pricey but provides consistent results.

Calcium chloride is convenient if you need more calcium in your diet. 

Lemon juice is the easiest to find but gives the least consistent results. It’s always worth trying if you feel like experimenting.

Tools you’ll need

You don’t need anything fancy. Just a big pot, blender, cheesecloth and a strainer will do. If you have a tofu press, this will be handy for shaping the tofu into a block.

Block of tofu

Tofu Recipe from Scratch

Homemade tofu is a fraction of the cost and is very customizable. Make firm, medium or even unpressed tofu like a ricotta style.
No ratings yet
Course Side Dish
Cuisine Asian
Servings 2
Calories 298 kcal


  • 1 Large pot
  • Cheesecloth
  • Tofu press (optional)
  • Colander


  • 2 cups soybeans
  • 8 cups water
  • 1 1/2 tsp nigari or coagulant of choice


  • Soak the soybeans in a large bowl and cover with a generous amount of cold water. Let soak for around 12 hours or until the beans have swelled up into an oblong shape rather than round.
  • Drain the beans in a colander, rinse and pick out any dark or discoloured beans.
  • Blend beans with 8 cups of water, before straining through a nut bag or cloth-lined colander. You'll need to do this in three to four batches to accommodate the standard blender size. 
  • Blend on high until the mixture forms a slurry. It should be milky and smooth with a fine grain left behind. If you over blend, your milk will be too sludge-like, but if you under blend, the milk will run too thin. 
  • Pour the soy milk slurry through a nut bag or muslin cloth-lined colander. Squeeze the bag to pour out every last drop. The remains are called okara and can be used as the base for many great recipes. 
  • Pour strained soymilk into a large pot over medium-low heat and simmer for a few minutes or until skin begins to form on top. It's essential to watch the pot and stir constantly because it boils over quickly.
  • The bottom is also at high risk of burning.Bring the heat to a boil and pour one teaspoon of liquid nigari—lower the heat. The milk should begin to curdle. If it doesn't separate, add the remaining half teaspoon of nigari.
  • Line a tofu press or colander with cheesecloth and slowly pour the tofu mixture over the sink. 
  • While still in the tofu press or colander, wrap the top of the tofu and place a weight over the mixture to press it down. A few cans work well here. The more your press your tofu, the firmer it becomes. If you prefer fresh tofu ricotta, skip this step. 


Sodium: 455mg | Calcium: 204mg | Vitamin C: 3mg | Vitamin A: 15IU | Sugar: 5g | Fiber: 10g | Potassium: 886mg | Calories: 298kcal | Monounsaturated Fat: 3g | Polyunsaturated Fat: 9g | Saturated Fat: 2g | Fat: 15g | Protein: 29g | Carbohydrates: 17g | Iron: 9mg
Keyword tofu, vegan
Tried this recipe?Share and tag @mtlveg!