Under the U.S. Food Allergen Labeling and Consumer Protection Act (FALCPA), packaged foods are required to clearly identify the nine major allergens (milk, eggs, fish, shellfish, tree nuts, peanuts, wheat, soy, and sesame) when they're actually used as ingredients [1]. That's the legal requirement.
'May contain milk, peanuts, tree nuts' on a label is a different thing entirely. It's a precautionary allergen label (PAL) โ a voluntary disclosure that the product was made in a facility (or on shared equipment) that also handles those allergens. It's NOT saying the allergen is in the product [2].
This matters most for people with severe allergies, where anaphylaxis can be triggered by trace amounts. For mild sensitivities or for dietary preferences (like vegan), 'may contain' usually doesn't apply, because the substance isn't actually in the product [2].
Key gap: there is currently no FDA-required wording or risk threshold for these precautionary labels [1]. Some manufacturers add 'may contain' to any shared facility (over-warning). Others only add it when the cross-contact risk is actually high.
Rootd handles these differently from confirmed ingredients โ a 'may contain milk' warning shows up as a soft heads-up for users with dairy on their allergy list, not as a product-blocking hard flag.