Stracciatella Gelato
Plain sweet cream to begin with, then the flakes crack cold between the teeth and the cocoa turns up a beat behind the milk.

Bergamo, 1961: Enrico Panattoni ran liquid chocolate into a batch of fior di latte still turning in the machine, and the splinters it broke into are the flavour. Everything still depends on that last minute. Where published versions go wrong is not the technique but the paperwork, because chocolate added after the mix is made quietly falls off the ingredient list. Here it is counted from the start: 65 g of 70 per cent per kilo, 6.5 per cent of the batch, carrying 24.7 g of fat and 19.5 g of sugar in with it, which is why the cream had to stay free to move in the balance.
Those numbers are the reason the rest of the sheet looks the way it does. Cream sits at 110 g rather than higher, and fat still closes at 8.56 percent. Sucrose sits at 110 g, and sugars close at 17.09 percent, because part of the sweetness arrived already dissolved in the bar. Leave the chocolate out of the calculation and you publish a recipe that reads balanced and eats like a brick, because real fat and real solids both land above range.
The bar is 70 percent rather than milk chocolate for two physical reasons. More cocoa butter and less sugar means the flake sets faster on contact and snaps into a clean shard instead of crumbling into powder. And milk chocolate would drag extra MSNF in: lactose already reads 5.26 percent of the mass and 8.44 percent of the water, and there is no reason to walk that toward the sandiness threshold for a flavour that is supposed to be milk and chocolate flecks.
Ingredients
Makes 1000 g of finished base.
| Ingredient | Grams | Home measure |
|---|---|---|
| Whole Milk | 631 | 2 2/3 cups |
| Heavy Cream 35% | 110 | 1/3 cup plus 2 tablespoons |
| Sugar (Sucrose) | 110 | 1/2 cup plus 1 tablespoon |
| Dark Chocolate 70% | 65 | |
| Dextrose (Glucose) | 35 | 3 tablespoons |
| Non-Fat Dry Milk | 35 | 1/3 cup plus 1 tablespoon |
| Glucose Powder | 10 | 2 1/2 teaspoons |
| Stabilizer (Neutral) | 3 | |
| Salt | 1 |
Method
Fior di latte tray frozen and forked, chocolate drizzled at 32 C between layers
- 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 Milk Gelato.
Read fat and sugars together and the sheet explains itself. Fat closes at 8.56 percent in a 5 to 12 band, and 24.7 of those grams came from the chocolate rather than from dairy, which is precisely why cream stops at 110 g. Sugars close at 17.09 percent in a 14 to 22 band with only 110 g of added sucrose, because the bar brought about 19.5 g of sugar with it. PAC lands at 255.41 in a 220 to 300 range, on the lower half, which suits a base that is meant to eat dense rather than airy. Solids at 37.71 percent and MSNF at 9.64 percent both sit mid band, supported by 35 g of non-fat dry milk and 10 g of glucose powder, and lactose comes to 5.26 percent of the mass and 8.44 percent of the water, which is high enough that switching to a milk chocolate bar would not be a free choice.
The temperature window on the chocolate is the whole technique. Melt to 45 to 50 C, then let it fall to 32 to 35 C before it goes anywhere near the gelato. Above roughly 40 C it warms the surface it lands on and disperses into soft brown veins instead of setting; below 30 C it has already thickened and comes out in lumps. Pour it in a thin thread over the last 20 to 40 seconds of churning, with the gelato already around -8 C, because it is the thermal shock that shatters the cocoa butter into shards. Never add the chocolate to the mix before pasteurising: it emulsifies into the base and you end up with a pale chocolate gelato, not a stracciatella. Without an addition port, extract the gelato and build alternating layers of gelato and drizzled chocolate in the tub, cutting through them once with a spatula. Underneath, this is pure fior di latte, so the usual limit applies: 82 to 85 C and no further.
If it goes wrong
The chocolate was still above about 40 C when it was poured. It melted the surface it touched and spread rather than setting on contact.
Let the melted chocolate drop to 32 to 35 C and pour it onto gelato that is already around -8 C.
The chocolate had cooled below 30 C and thickened before it went in, so it fell in drops instead of a thread.
Rewarm to 45 to 50 C, bring it back down to 32 to 35 C, and pour in a thin steady stream.
The chocolate went into the mix before pasteurising and emulsified into the base. All 65 g are still there, just dispersed.
Build and pasteurise the fior di latte base alone at 82 to 85 C, and hold the chocolate back until the last 20 to 40 seconds of freezing.
Allergens: milk
- https://www.mec3.com/en/products/gelato/ripple-sauces/creamy-ripples/stracciatella
- https://www.recipesfromitaly.com/stracciatella-gelato/
- https://italianchef.com/stracciatella-gelato/
- https://www.giallozafferano.com/recipes/Stracciatella-Ice-Cream.html
Want to change an ingredient and watch the numbers move? Open the free balancer