Vegan High Protein Chocolate Gelato
Firm from the freezer, it softens into a coating richness that carries deep, dry cocoa, and the bitterness runs long with no dairy sweetness behind it.

Straight from the freezer the first spoonful resists a little, then gives way and coats the palate, because coconut fat is hard at that temperature and 23 g of coconut oil sits on top of 255 g of coconut milk. Cocoa arrives immediately behind it, dry and deep instead of sweet, since 70 g of alkalised powder per kilo does the flavour work and only 40 g of a 70 percent bar stands behind that. Fat closes at 10.53 percent, which is what keeps the melt slow and even, and the bitterness holds for a long time with nothing dairy underneath to round it off.
What it does do is get chocolate right without dairy. Cocoa powder at 10 to 12 percent fat carries about 20 percent protein against 11 percent fat, and that ratio is why it leads the sheet at 70 g per kilo. Dark chocolate 70 percent is the opposite trade, roughly 38 percent fat for 7 percent protein, so it is capped at 40 g and used as an aroma layer instead of as the body of the flavour. Soy milk at 277 g is the protein vehicle.
Everything else sits mid band. Solids 38.68 in a 35 to 42 window, fat 10.53 in 8 to 13, PAC 244.21 in 210 to 300, water 61.32 in 58 to 65. MSNF is a flat zero against a 1 percent ceiling, because there is no dairy anywhere on the sheet. Sugars land at 18.66, near the 18 floor, since 110 g of sucrose and 60 g of dextrose are the whole sugar system and no sweetened chocolate mass is smuggling extra in.
Ingredients
Makes 1000 g of finished base.
| Ingredient | Grams | Home measure |
|---|---|---|
| Soy Milk (Unsweetened) | 277 | |
| Coconut Milk | 255 | 1 cup |
| Water | 160 | 2/3 cup |
| Sugar (Sucrose) | 110 | 1/2 cup plus 1 tablespoon |
| Cocoa Powder 10-12% | 70 | |
| Dextrose (Glucose) | 60 | 1/4 cup plus 1 tablespoon |
| Dark Chocolate 70% | 40 | |
| Coconut Oil | 23 | |
| Stabilizer (Neutral) | 4 | |
| Salt | 1 |
Method
Cocoa dry blended, pasteurised at 85 C, aged 12 hours, tray frozen and forked
- 1Whisk every dry ingredient together first: sugars, milk powder, stabiliser and salt. Dry-blending them stops the stabiliser clumping when it meets liquid.
- 2Warm the liquids to 40 C (104 F), then rain the dry mix in while whisking hard.
- 3Heat to 82 C (180 F) and hold for 2 minutes so the stabiliser hydrates.
- 4Melt the chocolate to 45 C (113 F) and stir it into the hot base off the heat, then blend 60 seconds until glossy.
- 5Chill in an ice bath to under 5 C (41 F) within 2 hours. Slow cooling is where bacteria and coarse crystals both start.
- 6Age 6 to 12 hours in the fridge under 5 C (41 F). This is when the stabiliser and the milk protein take up water.
- 7Freeze in a shallow metal pan 2 to 3 cm deep, breaking the crystals with a fork every 30 to 40 minutes, 4 to 6 times.
- 8Freeze firm, then temper 10 to 15 minutes in the fridge before scooping.
The balance
All six against the professional range for Vegan Base.
Two numbers set the shape here. Protein at 3.16 percent against a 3.5 ceiling is what fixes cocoa powder at 70 g and holds dark chocolate down to 40 g: reverse the ratio and protein falls while fat runs at the 13 percent limit, because the chocolate brings roughly 38 percent fat for 7 percent protein. Pushing protein higher is not only a solver problem. Non fat solids above the band read sandy on the tongue, taste beany and melt fast. The second number is MSNF at zero in a 0 to 1 band, which is the plant base doing what a dairy base cannot: lactose is 0 percent of the mass and 0 percent of the water, so the sandiness check passes on arithmetic rather than on luck. Fat 10.53 sits mid band and is assembled from three places, the cocoa butter inside the 40 g of chocolate, 255 g of coconut milk and 23 g of coconut oil, which is why the base firms properly at freezer temperature instead of staying soupy.
Cocoa powder is the handling problem on this sheet. Thrown into hot liquid it clumps and the lumps never come apart, so dry blend the 70 g of cocoa with part of the 110 g of sucrose, disperse that into part of the soy milk at 45 C, and only then bring the heat up. The second rule is pH: soy protein coagulates in acid, and there is 277 g of soy milk here. Alkalised cocoa works in your favour at pH 7 to 8, so do not acidify this base for any reason. Pasteurise at 85 C for 30 seconds with the whisk moving the whole time, because without casein the hot mix is thin, and thin means the cocoa settles and scorches on the bottom of the pan. Age 12 hours minimum at 4 C: the starch and fibre in the cocoa need that long to take up water, and it is the difference between a base that reads full and one that reads watery.
If it goes wrong
The cocoa went into hot liquid, or the base was heated without constant stirring. At 70 g per kilo and with no casein to thicken the hot mix, cocoa settles and burns on the pan bottom.
Dry blend the cocoa with part of the sucrose, disperse it in soy milk at 45 C, then climb to 85 C whisking continuously.
Something acidic went in. Soy protein coagulates at low pH and this sheet leans on 277 g of soy milk.
Keep the base neutral. Use alkalised cocoa at pH 7 to 8, which is what the balance assumes, and add no acid ingredient at any stage.
Ageing was cut short. Water is 61.32 percent of the mass and the cocoa fibre has not had time to bind it.
Hold 12 hours at 4 C before freezing. On a cocoa heavy plant base this is the one step you cannot shorten.
Allergens: milk, soy
- Goff & Hartel, Ice Cream, 7th ed., Springer 2013, cap. 4, limites de solidos nao gordos e defeitos de textura por excesso de proteina: https://link.springer.com/book/10.1007/978-1-4614-6096-1
- University of Guelph, Dairy Science and Technology, Ice Cream Manufacture (relacao entre MSNF, proteina e arenosidade): https://www.uoguelph.ca/foodscience/book-page/ice-cream-manufacture
- USDA FoodData Central, composicao de cacau em po alcalino e leite de soja sem acucar: https://fdc.nal.usda.gov/
Want to change an ingredient and watch the numbers move? Open the free balancer