The foam comes first. A pot of fresh soy milk climbs toward the rim in a pale, trembling dome well before the liquid underneath is boiling, and the kitchen smells of raw beans until the boil takes hold and the steam turns sweet and green with pandan. Susu kacang soya is that milk: dried soybeans soaked, ground with water, pressed through cloth and boiled with knotted pandan leaves. In Malaysia it is ladled into cups at morning and night markets and poured in kopitiam, warm or over ice. The sweetness goes in last, from a jug of ginger syrup or dark gula melaka syrup, so every glass tastes of clean, nutty bean with pandan right behind it and exactly as much sugar as the drinker wants.
A Market Drink With Three Names
In Malay, susu kacang soya means simply "soybean milk." At the Chinese-Malaysian stalls that sell it, the same drink is doujiang (豆浆) in Mandarin and tau chui, "bean water," in Hokkien, so the name you hear depends on who is behind the counter and who is ordering. Soy milk is usually traced to China, though how far back it goes is not settled. It is also the starting point for tofu and for yuba, the skin lifted from heated soy milk.

You find it at the pasar pagi in the early morning, at the pasar malam once the string lights come on, and in the coffee shops in between. It belongs to the Chinese hawker trade across Malaysia and is sold alongside tau fu fah, the soft bean curd pudding, at Chinese-Malaysian stalls and shops.
What sits beside it on the counter
In Ipoh, many tau fu fah shops sell cold soy milk as well, and the syrup is a choice rather than a given: white sugar, brown sugar, ginger, pandan or gula melaka. Toppings such as cincau (grass jelly), peanuts and red beans appear on the counter, and some shops pour black soybean milk alongside the pale kind. The tau fu fah itself usually comes warm. This is how Ipoh does it.
The neighbours are close but distinct. Tau fu fah is soy milk that has been set with a coagulant into a pudding, eaten with a spoon. Across China, Taiwan, Hong Kong, Malaysia and Singapore, doujiang is an everyday drink, and in China and Taiwan it is also taken savoury and eaten with fried dough. The Malaysian glass leans sweet, and Singapore shares much of the same soy milk culture.
At the counter, the syrup decides the drink. Ginger syrup gives a warm bite that suits a hot cup; gula melaka gives a darker, caramel-edged sweetness that suits ice. Serving it separately lets each person set their own sweetness.
Ingredients

This drink is made from soybeans. If you add store-bought grass jelly or other toppings, read the label on the product you buy for allergens and additives.
Equipment
- Large bowl for soaking
- Blender
- Fine cheesecloth or a nut-milk bag
- Sieve or colander
- Heavy pot of at least 3¼ quarts (3 L)
- Wooden spatula
- Skimmer or slotted spoon
- Two small saucepans for the syrups
- Kitchen thermometer
- Clean containers or bottles with lids
Buying and Swapping
Dried yellow soybeans are the base; large ones are easy to handle. Green or black soybeans change the colour and the flavour, so the glass becomes a different drink. Fresh mature ginger works better than young ginger, and the amount stays as listed, since ginger gets sharp quickly. Ordinary white sugar is right for the ginger syrup.
Pandan is the one ingredient to track down. Frozen or dried leaves are sold at Southeast Asian grocers and online, frozen being the most common. Without it the soy milk loses its main aroma and tastes of bean alone; there is no stand-in that brings the same smell. Gula melaka comes in blocks and as powder at the same shops. Okinawan black sugar (kokuto) is the closest swap, though it shifts the colour and the kind of sweetness. If you want cincau, buy it ready-made.
Method
The soak starts the night before, in the fridge. Make both syrups during the soak; they thicken as they cool and wait in their jugs until the milk is ready. The next day, blending and pressing take steady hands but no heat, and then the stove needs your full attention: the milk scorches if left unstirred and boils over once the foam rises. Have your containers and thermometer out before you start the boil, because cooling the leftovers follows straight on.
When It Goes Wrong
| What you see | Why | What to do |
|---|---|---|
| Foam pours over the rim | Soy milk swells with foam as it heats | Use a pot with plenty of room, lower the heat and skim. Keep it at a boil underneath |
| A burnt smell, brown flecks from the bottom | The milk sat unstirred and caught | Lower the heat at the first whiff. If it has scorched, start again; the burnt taste does not leave |
| Gritty milk | The pressing let fine pulp through | Strain again through a clean cloth, or re-blend the pulp and press once more |
| A strong raw bean taste | Too short a soak, too short a boil, or lots of skins | Soak the full time and boil the full 10 minutes. Rubbing off loose skins after soaking also helps |
| Milk separates in the fridge | Homemade soy milk has no emulsifier | Shake or stir before pouring. Nothing needs adding |
| Too sweet | Syrup went in all at once | Keep syrup on the side and add it by the spoonful in each glass |
Serving and Variations
At the table
A warm cup with ginger syrup is a morning drink, and it sits easily beside a plate of nasi lemak at breakfast. A tall glass over ice with gula melaka belongs to the hot afternoon or the night market, next to something flaky from the griddle such as roti canai. Put both syrups out when you have company; guests can try one, then the other.
Variations
- Warm with ginger syrup. The sharp, clean sugar and the ginger's bite cut through the bean and make the hot cup taste brighter.
- Cold with gula melaka. The dark syrup gives a rounder, deeper sweetness and tints the milk faintly brown.
- Plain, no syrup. The bean and pandan come forward and the drink tastes fresher and lighter.
- Topped with cincau. Cubes of grass jelly at the bottom of an iced glass give a cool, slippery bite and turn the glass into something closer to a tau fu fah shop drink.
- With black soybeans. The milk comes out darker, as in the black soybean milk some shops sell, and the flavour shifts with the bean.
Frequently asked questions
Can I warm the milk gently or use a slow cooker instead of boiling?
No. Gentle heat does not break down the lectin in raw beans; beans held at 185°F (85°C) for an hour still kept it. Slow cookers never reach the vigorous boil that does the job. The 10-minute rolling boil on the stove is the step that makes the milk safe to drink.
How is this different from soy milk in a carton?
This milk is only beans, water and pandan. Carton soy milk is built for long shelf life, often with emulsifiers and added nutrients, so it stays blended and keeps longer; check the label of the one you buy for what is in it. Homemade milk tastes more of the bean and separates as it stands.
Can I turn this milk into tau fu fah?
The same milk is the base, but setting it into a pudding takes a coagulant and its own method, which is a separate recipe. This milk is made for drinking.
Is there a savoury way to drink it?
Yes. In China and Taiwan, doujiang is also eaten savoury, often with fried dough. The Malaysian glass is the sweet one, built around ginger or gula melaka syrup, so this milk stays unsalted and unsweetened until it reaches the glass.















