Recipe · Recipes

Fior di Latte Gelato — The Italian Cream Standard

The full theory + balanced recipe for fior di latte gelato — Italy's milk-and-cream classic. PAC 245, POD 16, Total Solids 38%. With variations, troubleshooting, and pro technique.

Marco Freire · · 14 min
Fior di latte gelato in a stainless steel pan showing the smooth, white, dense texture characteristic of properly balanced Italian milk gelato

Why Fior di Latte Is the Reference Recipe

In Italy, fior di latte is what every gelataio learns first. The reasons:

  1. No flavor masking. Cocoa, fruit, nuts, and vanilla all hide imperfect technique. A milk-only recipe shows every error — too icy, too sweet, too soft, weird mouthfeel.

  2. Master template. Once your fior di latte is dialed in, you have the canonical white base. From it you derive: vanilla (add bean), nocciola (add hazelnut paste), pistachio (add pistachio paste), stracciatella (add chocolate at extraction). All these flavors share fior di latte's underlying balance.

  3. Hardest to fake. Industrial soft-serve and supermarket vanilla rely on emulsifiers and air to compensate for low solids. A real fior di latte at 38% Total Solids and 8% fat is unmistakable.

If you can make a great fior di latte, you can make great gelato.

Quick reference. Fior di latte balanced recipe targets: PAC 245, POD 16, Total Solids 38%, fat 8%, MSNF 11%. Pasteurize at 85°C × 2 min. Mature 4–6 hours. Mantecate to -8°C. Hold at -14°C.

Ingredient List (1000 g of mix)

IngredientWeightFunction
Whole milk (3.5% fat)600 gPrimary water + lactose source
Heavy cream (35% fat)130 gFat (creaminess)
Skim milk powder (SMP)35 gMSNF boost (body and protein)
Sucrose130 gPrimary sugar
Dextrose (anhydrous)30 gPAC boost (softness)
Inverted sugar25 gPAC + slight humectant
Neutro stabilizer/emulsifier blend5 gBody + air-cell stability
Trehalose15 gStabilizes proteins, mild sweetness
Salt (fine)0.5 gFlavor amplifier (optional but recommended)
Total1000.5 g

Composition (calculated by free balancing calculator):

  • PAC: 245 (in target 230–280)
  • POD: 16 (in target 14–17 for premium fior di latte)
  • Total Solids: 38.2% (in target 38–42%)
  • Fat: 8.1% (in target 7–9%)
  • MSNF: 11.4% (in target 10–12%)
  • Lactose: ~31 g (3.1% — note for lactose-intolerant labeling)

Why Each Ingredient Earns Its Place

Whole milk (3.5% fat): the canvas. Provides water, lactose, casein, whey protein, and 4.5% of the fat. Use the freshest milk you can source — a 24-hour-old milk has a noticeably different character from a 5-day-old milk.

Heavy cream (35% fat): the richness. Adds 4.0% of the recipe's fat and a touch more solids. Cheaper alternative: use part butter (60% replaces cream g-for-g but loses some flavor complexity).

Skim milk powder (SMP): the secret of body. SMP is pure MSNF — adds protein and lactose without adding water. Without SMP, you'd need to use much more cream (raises cost) or accept a thinner texture.

Sucrose: the foundation of sweetness. ~70% of the sugar weight in this recipe.

Dextrose: PAC builder. Sucrose alone produces too low a PAC (gelato too hard). 30 g of dextrose adds PAC 57 — perfect amount to push from PAC 188 to PAC 245.

Inverted sugar: professional softness. Hydrolyzed sucrose with naturally smaller crystal nucleation profile. Slight humectant effect helps gelato stay scoopable longer in the showcase.

Neutro stabilizer/emulsifier: an off-the-shelf blend (PreGel, MEC3, Fabbri) containing LBG + guar + carrageenan + mono/diglycerides at the right ratio. At 0.5% dose, it's enough for a clean fior di latte without dominating the texture.

Trehalose: the protein protector. 15 g of trehalose stabilizes whey proteins during pasteurization and reduces the risk of protein flocculation in the showcase. Also adds mild sweetness with low PAC contribution.

Salt: 0.5 g (a pinch) doesn't make the gelato taste salty but amplifies the perceived dairy character. Optional — but pros use it.

Step-by-Step Method

Step 1 — Weigh and combine dry ingredients (5 min)

In a small bowl, mix together:

  • SMP
  • Sucrose
  • Dextrose
  • Inverted sugar
  • Trehalose
  • Neutro
  • Salt

Whisk dry until uniform. This pre-blend prevents clumping when added to liquids.

Step 2 — Combine wet + dry (5 min)

In your pasteurizer (or a heavy-bottomed pot if no pasteurizer):

  • Pour milk and cream
  • Add the dry blend while whisking
  • Whisk until everything is dispersed (1–2 min)

Step 3 — High pasteurization (10 min)

Heat to 85°C while stirring slowly. Hold at 85°C for 2 minutes. This:

  • Kills pathogenic bacteria (Salmonella, Listeria, E. coli)
  • Activates the LBG in the neutro
  • Denatures whey proteins for smoother texture

If you don't have a pasteurizer, use a heavy-bottomed pot and a probe thermometer. Stir constantly to prevent scorching.

Step 4 — Rapid cooling (15 min)

Cool the mix to 4°C as fast as possible. Pasteurizers do this automatically. Without a pasteurizer:

  • Transfer hot mix to a stainless container
  • Place container in an ice-water bath
  • Stir occasionally
  • Target: reach 4°C within 30 minutes

The 15–55°C "danger zone" must be passed quickly to prevent bacterial regrowth. This is non-negotiable.

Step 5 — Maturation (4–6 hours minimum, 12 hours optimal)

Refrigerate the cooled mix at 4°C for at least 4 hours, ideally 12. During maturation:

  • Stabilizers fully hydrate and form their network
  • Proteins relax and integrate with the fat
  • Flavor compounds develop (slight Maillard from pasteurization rounds out)

Skipping maturation = thinner texture and less stable overrun.

Step 6 — Mantecazione (8–12 min)

Pour the matured mix into your batch freezer (mantecatore). Run until the mix reaches -8°C with appropriate overrun:

  • Home machines (Lello Musso): 25–30% overrun
  • Pro batch freezer: 30–40% overrun

Listen and watch — the texture should look glossy and "draw" cleanly off the dasher. Stop when it pulls heavy (typical 8–12 min for 1 kg of mix).

Step 7 — Hardening / Abbattimento (1 hour)

Transfer the gelato to a stainless pan, level the surface, and place in a blast chiller at -25°C for 60 min. If you don't have a blast chiller, use the coldest part of your standard freezer for 90 min minimum.

This rapid hardening locks in the small ice crystals from mantecazione before they can grow.

Step 8 — Showcase storage at -14°C

Move to your gelato showcase at -14°C ± 1°C. The gelato is now ready to scoop. Storage life: 5–7 days at correct temperature.

Variations Built on This Base

Vanilla Gelato

Add 2 g of vanilla bean paste (or scrape 1 vanilla bean) to the mix during pasteurization. No other changes needed.

Stracciatella

After mantecazione, while transferring to the storage pan, drizzle 60 g of melted couverture chocolate (50–60% cocoa, melted to 35°C) in thin streams onto the gelato surface. Fold gently with a spatula. The chocolate solidifies on contact and shatters into thin shards. Do not drizzle inside the mantecatore — the chocolate would melt against the cylinder.

Nocciola (Hazelnut)

Add 60–80 g of pure pistachio or hazelnut paste during pasteurization. Reduce cream by 30 g to compensate for nut paste's fat content (~50%). Recalculate balance — nut paste shifts PAC slightly.

Pistacchio Bronte

Same as nocciola but with 80–100 g of Sicilian pistachio paste (DOP Bronte if budget allows). Color: pale green-brown, never the artificial bright green.

Fior di Latte Lactose-Free

Replace whole milk with lactose-free whole milk. Important: lactose-free milk has lactose hydrolyzed to glucose + galactose, which approximately doubles the PAC of the milk component. Adjust by reducing dextrose from 30 g to 10 g and increasing sucrose from 130 g to 145 g to maintain PAC 245.

Troubleshooting

ProblemLikely causeFix
Gelato hard as a brick at -14°CPAC too low (<220)Add 10–15 g dextrose, recalculate
Gelato melts in 5 min in showcasePAC too high (>290)Replace 20 g dextrose with sucrose
Tastes flat, not sweet enoughPOD too low (<14)Add 10–15 g sucrose or 5 g fructose
Tastes cloyingPOD too high (>20)Replace 20 g sucrose with maltodextrin
Texture feels icy / sandyTS too low (<35%) or lactose crystallizingAdd 15 g SMP; check storage temp doesn't fluctuate
Texture feels chewy / gummyTS too high (>45%) or stabilizer overdoseReduce SMP or neutro
Whey separation in showcaseCarrageenan missing or insufficient stabilizerSwitch to a neutro that includes iota carrageenan
Yellow tint instead of pure whiteCream over-aged or scorched during pasteurizationUse fresher cream; control pasteurization temp
Strong cooked-milk flavorPasteurization too long or too hotReduce hold time; verify thermometer

Equipment Notes

Minimum viable equipment:

  • A precision scale (0.1 g precision for trace ingredients)
  • A heavy-bottomed pot + thermometer (or pasteurizer)
  • A batch freezer (Lello Musso, Carpigiani LB100, or similar)
  • A standard freezer (or blast chiller)
  • A gelato showcase or stable freezer at -14°C

Recommended additions:

Cost Math (per kg of finished gelato)

Assuming European wholesale prices, 30% overrun:

IngredientCost per kg of mixCost per kg of gelato (with 30% overrun)
Whole milk (€0.80/L)€0.48€0.37
Heavy cream (€4.00/L)€0.52€0.40
SMP (€8/kg)€0.28€0.22
Sucrose (€1.20/kg)€0.16€0.12
Dextrose (€2.50/kg)€0.075€0.06
Inverted sugar (€3.00/kg)€0.075€0.06
Trehalose (€8/kg)€0.12€0.09
Neutro (€20/kg)€0.10€0.08
Total ingredient cost€1.81/kg mix€1.40/kg gelato

A premium gelateria sells fior di latte at €4–8 per 100 g cup → €40–80 per kg → ~96–98% gross margin on ingredients (before labor, energy, rent, packaging).

Service and Storage

Serving temperature: -14°C to -12°C in showcase. Pull-out portions warm slightly to -10°C as you scoop, which is correct serving texture.

Optimal eating temperature: -10°C to -8°C — gelato should yield to the spoon without crunch.

Storage life at -14°C: 5–7 days for full quality. After 7 days the texture starts coarsening (ice crystal recrystallization).

Storage life at -25°C (frozen storage): 30–60 days for usable quality, though best within 14 days. Always temper to -14°C in the showcase before serving.

Why This Recipe Works (The Theory Recap)

Three numerical pillars carry the whole recipe:

Total Solids 38%. Below this, ice crystals are too large and texture turns icy. Above 45%, density becomes pasty. 38% is the sweet spot for a clean dairy character.

PAC 245. This is the magic number for -14°C showcase. Lower = brick; higher = melts in display.

POD 16. Low enough to let dairy character shine through, high enough to register as sweet at frozen temperature (where sweetness perception drops 30%).

The sugar mix (sucrose + dextrose + inverted + trehalose) is engineered to land all three numbers in target simultaneously. Drop any component and the trio shifts.

Test the recipe with your specific ingredients in the free professional balancing calculator Different milk fat %, different cream brand, or substituted sugars will shift the targets — the calculator shows what to adjust to stay in the green zone.

Run these numbers live

Open the free balancer and adjust ingredients as you read.

Open balancer

Frequently asked

What does fior di latte mean?
Fior di latte literally means 'flower of milk' — the most refined, pure expression of milk. In gelato, it refers to the unflavored white-base gelato made only from milk, cream, sugar, and a small stabilizer addition. No vanilla, no eggs, no flavoring beyond the dairy itself.
What's the difference between fior di latte and vanilla gelato?
Fior di latte has zero vanilla — it's pure milk and cream character. Vanilla gelato adds vanilla bean or extract on top of the same fior di latte base. In Italy, fior di latte is the canonical 'plain' flavor; in the US, vanilla plays that role.
Can I make fior di latte without a gelato machine?
You can approximate it with the freeze-and-stir method (every 30 min, 4 hours total), but the texture won't match a proper batch freezer. Mantecazione speed and cold incorporation of air are what create gelato texture — manual stirring loses both.

You read the theory. Now run the numbers.

Open the free balancer, plug in your own ingredients, and apply what you just read. PAC, POD, MSNF, Total Solids — all updated live as you adjust the recipe. No signup wall, no paywall.

Start balancing — free

Used by 4,200+ pro gelatieri and serious home cooks.