Why Does Milk Hurt My Stomach but Not Cheese?

Milk and cheese come from the same animal, but they contain dramatically different amounts of lactose, the sugar responsible for most dairy-related stomach trouble. A cup of whole milk has 9 to 14 grams of lactose, while an ounce of sharp cheddar contains just 0.4 to 0.6 grams. That difference is large enough to explain why one wrecks your gut and the other doesn’t.

How Lactose Causes Stomach Pain

Your small intestine produces an enzyme called lactase that breaks lactose into two simpler sugars your body can absorb. When you don’t produce enough lactase, undigested lactose passes through to your large intestine, where bacteria ferment it. That fermentation produces hydrogen, methane, carbon dioxide, and hydrogen sulfide gas.

The undigested lactose also pulls water into your intestine through osmotic pressure, essentially acting like a sponge. This combination of excess gas and fluid is what causes bloating, cramping, and diarrhea after drinking milk. The more lactose that arrives undigested, the worse the symptoms.

Why Cheese Has So Little Lactose

Cheesemaking removes lactose in two distinct stages. The first is physical: when milk is coagulated into curds, the liquid whey separates out and gets drained away. Since lactose dissolves in liquid, a large portion of it leaves with the whey.

The second stage is biological. Starter bacteria added during cheesemaking are fermentation machines. They consume lactose as fuel and convert it into lactic acid, which is what gives cheese its tangy flavor and also lowers the pH below 5.3 within the first six hours. As ripening continues over days and weeks, the bacteria keep consuming whatever lactose remains. By around the third week, bacterial populations actually crash because they’ve essentially eaten themselves out of a food source. The result is a product with a fraction of the lactose found in milk.

This is why aging matters. Fresh cheeses like ricotta and cottage cheese retain more whey and have had less fermentation time, so they contain more lactose. Hard, aged cheeses like cheddar, parmesan, and Gruyère have had months of bacterial fermentation and are nearly lactose-free.

Your Tolerance Threshold

Most people with lactose intolerance aren’t completely unable to digest it. A meta-analysis found that nearly all lactose-intolerant individuals can handle 12 grams of lactose in a single sitting without symptoms, and roughly 18 grams spread across a full day. A glass of milk at 9 to 14 grams pushes right up against that limit, especially if you’re also eating other dairy that day. A couple of ounces of aged cheddar at under 1.2 grams total barely registers.

This threshold also explains why some people tolerate a splash of milk in coffee but not a full glass, or why ice cream causes problems while a cheese plate doesn’t. It’s almost always about the total lactose load per sitting, not an all-or-nothing reaction.

It Might Not Be Lactose at All

If you’ve noticed that even lactose-free milk bothers you, the problem could be a specific milk protein rather than the sugar. Most conventional cow’s milk contains a protein called A1 beta-casein. During digestion, A1 beta-casein releases a fragment that appears to affect gut motility and inflammation. A pilot study found a significant association between abdominal pain and loose stools in people consuming A1 milk, while those consuming A2 milk (which contains a slightly different protein structure) showed no such correlation.

Cheesemaking alters protein structure through fermentation and aging, which may explain why some people who react to liquid milk proteins do fine with cheese. If you suspect protein sensitivity rather than lactose intolerance, trying A2-labeled milk is a simple way to test. If your symptoms disappear, lactose was never the issue.

Which Dairy Products Are Safest

  • Lowest lactose: Aged hard cheeses (cheddar, parmesan, Swiss, Gouda aged 6+ months) contain under 1 gram per serving. These are safe for nearly everyone with lactose intolerance.
  • Moderate lactose: Yogurt, sour cream, and soft cheeses like mozzarella and brie fall in between. Yogurt’s live cultures continue to break down lactose in your gut, which is why many people tolerate it despite its moderate lactose content.
  • Highest lactose: Fluid milk, ice cream, and cream-based sauces carry the heaviest load. Cottage cheese and ricotta also fall into this category because they retain whey and have minimal aging.

Confirming the Cause

If you want a definitive answer, a hydrogen breath test is the standard diagnostic tool. You drink a lactose solution, then breathe into a collection device at intervals. A healthy digestive system produces less than 16 parts per million of hydrogen in the breath. A rise of more than 20 ppm over your baseline after consuming lactose confirms malabsorption.

That said, many people never bother with formal testing. If milk consistently causes bloating and gas while aged cheese doesn’t, the pattern itself is informative. Keeping a simple food diary for a week or two, noting which dairy products cause symptoms and which don’t, often provides a clearer picture than a single lab test. Pay attention to portion size and whether you’re eating dairy on an empty stomach, since both factors influence how much lactose your body can handle at once.