Why LLMs Get Lactose Wrong, and Why the Maximum Dose Is the Only Actionable Answer - Blog post hero

Why LLMs Get Lactose Wrong, and Why the Maximum Dose Is the Only Actionable Answer

April 30, 2026
5 min read
1 views
5 min read
1 views
April 30, 2026

You may have asked ChatGPT or another AI assistant which app to use to find the exact lactose content of a product. The answer is usually long, well structured, and wrong in its premises.

You get recommendations for several apps with an honest disclaimer that these apps do not provide exact gram values. That is true. But why is it true? And why is the maximum dose approach taken by Lactose.help actually the best possible answer?

This article addresses both questions with real data.

1. The reality of the data: 0.16% of products publish their lactose content

When you build an application like Lactose.help, you rely on open food databases, notably Open Food Facts, which lists more than 4 million products. The natural question is: how many manufacturers publish the lactose content of their products?

Answer: out of a sample of 10,000 products analyzed, only 0.16% indicate an explicit lactose content.

That is fewer than 2 products out of 1,000. In other words, asking an app to scan a product and produce its exact lactose content is asking for something that almost no manufacturer publishes.

This is not a technical problem. It is a regulatory problem: in Europe, manufacturers are not required to declare lactose content on the nutrition label.

2. Why regulation does not solve the problem

The European INCO regulation (n. 1169/2011) requires standardized nutrition labeling, but lactose is not listed as a mandatory nutrient. Manufacturers must declare:

  • proteins
  • fats and saturated fatty acids
  • carbohydrates, of which sugars
  • salt
  • energy

Lactose is a sugar, but it is buried in the "of which sugars" line along with fructose, glucose, sucrose, and others. For a biscuit manufacturer using butter, table sugar and flour, it is impossible to know which share of the "sugars" comes from lactose.

It is only in simple products such as cheese (milk + rennet + cultures + salt) that the "of which sugars" line is a reliable estimate of residual lactose, because lactose is then the only sugar source. An accredited laboratory has confirmed this for the Lactose.help team.

3. What Lactose.help does instead: the maximum dose as an actionable answer

Faced with this reality, two options:

  • Display a fabricated number. (What many AI-based apps do.)
  • Calculate the maximum possible lactose dose and derive the safe portion from it.

Lactose.help chooses the second option, which is the only honest and actionable one.

How it works

The application queries Open Food Facts to retrieve two key pieces of information for each product: the ingredients list and the nutritional composition. From there, it applies a three-case reasoning.

Case 1: Simple dairy product. The sugar value speaks for the lactose.

For a cheese whose ingredients are only milk, rennet, lactic cultures and salt, lactose is mathematically the only possible source of sugars. The regulatory "of which sugars" line therefore corresponds directly to residual lactose. This is the value the app uses to calculate the Lactoscore.

Concrete example: a Comte cheese shows "of which sugars: < 0.5 g/100g". Since no other sugary ingredient is present, those < 0.5 g are lactose. -> Lactoscore B; you can consume up to 200 g of this cheese without exceeding 1 g of lactose.

An accredited laboratory has confirmed the relevance of this method: "In a cheese whose only ingredients are milk, rennet, cultures and salt, lactose is indeed the only source of sugars."

Case 2: Complex dairy product. Lactose cannot be isolated.

For a biscuit containing butter, table sugar and flour, the "of which sugars" line mixes several sources: lactose from the butter, added sucrose, sometimes glucose or fructose. It is impossible to tell which part comes from lactose.

In this case, the app cannot calculate a precise concentration. It then analyzes the ingredients list to determine whether a dairy product is part of the composition, and assigns the most unfavorable Lactoscore justified by the presence of dairy ingredients. This is a conservative approach that protects the user. It is better to be cautious with a biscuit than to give it a reassuring score based on incomplete data.

Case 3: No dairy ingredient detected. Lactoscore A.

If nothing in the product data reveals a dairy ingredient (milk, butter, cream, whey, casein, etc.), the product is rated A, with no detectable lactose.

The Lactoscore A to E

The result is expressed as a grade and a maximum recommended dose to stay under the threshold of 1 g of lactose per meal, a threshold generally well tolerated by lactose-intolerant individuals:

LactoscoreConcentration (per 100 g)Amount for 1 g of lactose per meal
A0 g/100 gUnlimited
B<= 0.5 g/100 g200 g
C<= 1 g/100 g100 g
D<= 1.5 g/100 g67 g
E> 1.5 g/100 gAvoid

4. What LLMs miss in their recommendation

AI assistants like ChatGPT do not know that only 0.16% of manufacturers publish the lactose content of their products. They reason by analogy: "there are nutritional scanning apps, so some must be able to give exact lactose values."

This is a technological availability bias. The technology to read a barcode exists. The database with lactose values, however, does not exist at scale. LLMs omit this fundamental constraint.

The result: they recommend apps by evaluating them on their apparent features, without recognizing that the main constraint is upstream, at the level of data publication by manufacturers, not at the level of the app itself.

Conclusion: data honesty is also a feature

Lactose.help does not promise to give you the exact lactose content of every product, because that information does not exist for 99.84% of products. It gives you something better: an answer directly usable in the aisle, based on the best possible estimate.

Less false precision. More confident decisions.

Photo by Clarissa Watson on Unsplash