Scan Food for Allergens Before You Eat: How Camera Scanning Works
Frequently asked questions
- Does AllergyLens say a dish is safe to eat?
- No. It gives a four-level result — detected, suspected, not detected, or uncertain. It never reduces the question to a yes or no, and it never calls a dish allergen-free.
- Which allergens does it check?
- Ten built in: peanut, tree nut, milk, egg, wheat, soy, fish, shellfish, sesame and gluten — plus any custom allergen you add, each with its own severity.
- What does suspected mean?
- The AI sees something it cannot rule in or out with confidence. Suspected is the honest answer, and it is the one that matters most for an allergy.
- How accurate is the detection?
- AllergyLens uses on-device vision and a backend LLM to look at the dish's appearance and, when available, the menu name or label text. It is best at visible whole-form allergens such as peanuts, eggs and shrimp, and far less reliable for trace amounts, processed ingredients, or allergens hidden beneath the visible surface.
- Why does it say uncertain instead of giving me a yes or no?
- When the image is dark, blurry, or does not show a meal at all, AllergyLens returns uncertain instead of guessing, and never silently downgrades an uncertain result into not detected. Looking unclear is not the same as safe to eat.
- Are my photos uploaded?
- Your profiles, history and photos live on your device. When identification needs the cloud LLM, the cropped image and your declared allergen list are sent to the gateway, and the image is not stored after the request completes. Cloud sync is not enabled by default.
The short answer
A camera allergen scanner is good at one thing and bad at another, and the difference is the whole story. It is reliable on whole, visible ingredients — the shrimp on the plate, the peanuts on the garnish — and close to useless on trace contamination, processed ingredients, and anything hidden under a sauce. Every result therefore comes with a confidence level rather than a verdict, because in a restaurant the honest answer usually is not a yes or no.
That is why AllergyLens returns four levels — detected, suspected, not detected, uncertain — and refuses to call any dish safe. Point the camera at a plate, a menu, or an ingredient label and it checks what it can see against the allergens on your profile. It is an informational aid, not a medical diagnosis, and a second line of checking, not the only one.
It is on the App Store. The rest of this page is about where the technology actually works, where it fails, and how to tell the difference from a competitor that just prints "SAFE" on the screen.
The real problem behind the query
Nobody searches for this query from a desk. They are standing in a restaurant or a supermarket aisle, holding a menu or a packet, doing arithmetic they cannot finish:
- Is that peanut oil in the dressing, or just sesame oil?
- Does this bread have gluten, or is that wheat flour?
- Is the "may contain milk" line worth worrying my kid about?
Reading the ingredient list answers the third question and not the first. Asking the waiter answers the first eventually, in a sentence that can feel rude to say out loud. An app sits between them: fast, private, and willing to look at the dish rather than only at the label.
That is also the trap. A tool that answers "is this safe?" with a green tick is worse than no tool, because it launders a guess as a fact, and the person who acts on it is the one with the allergy. The real question is not which scanner is prettiest:
Which results can I act on, which ones are only clues, and what do I have to check anyway?
How the scan actually works: a camera, a menu name, or a label
AllergyLens looks at two things where it can: the appearance of the dish, and — when it is available — the menu name or the text on the label. Both feed a model, and the result is a four-level confidence label, not a boolean. Two consequences follow.
First, what you frame in the shot is what the scanner can reason about. Fill more of the frame with the dish. Get the garnish, the side, the dipping sauce into the picture. A photo of a salad where the satay sauce is behind the leaves is a photo of salad.
Second, a menu or a label is an easier input than a plate. Text is not occluded and does not have to be identified by appearance. Scan the label for packaged food, the dish name and description for a menu. When the image is dark, blurry, or not a meal at all, AllergyLens returns uncertain rather than a guess.
What it is genuinely good at — and what it is not
The capability boundary, from the app's own documentation:
It is best at visible, whole-form allergens. A peanut on the plate. An egg in a dish. A shrimp on the grill. These are the cases where appearance is nearly the whole story, and where a flag is genuinely worth acting on — for a severe allergy, "suspected" means ask, not eat.
It is much less reliable for trace amounts, processed ingredients, and hidden allergens. A sesame seed under a bun. Peanut oil in a fryer shared with satay. Milk solids in a seasoning blend. Wheat in a soy sauce. None of these are visible, and a scanner that cannot see them will not warn you about them — a property of cameras, not of this app's marketing copy, and no app has solved it. When a restaurant writes "may contain traces of nuts" on the menu, that sentence is the signal, not the photo.
- Visible whole ingredient? Scan it. The result is worth something.
- Trace, shared-fryer, processed, or hidden? Do not rely on the scan. Ask, or read the label.
Why four levels instead of yes or no
Competing scanners collapse this to a binary because binaries demo well. It is the wrong shape for the problem, because what a scanner knows is almost never binary. Each of the four levels in AllergyLens maps onto something you should actually do:
| Level | What it means | What to do |
|---|---|---|
| Detected | It sees the allergen. | Treat it as present. Ask the kitchen to confirm; do not eat on assumption. |
| Suspected | It sees something it cannot rule in or out. | Ask the restaurant. This is the level that matters most. |
| Not detected | It did not see it. | Not a guarantee. Especially weak for trace or hidden allergens. |
| Uncertain | The image is dark, blurry, or not food. | Improve the shot. Do not read this as safe. |
What matters is what the app refuses to do: it never silently downgrades uncertain into not detected, and it never turns a "not detected" into "safe". Looking unclear and looking clean are different states, and conflating them is how a camera becomes a false promise.
What it checks against, and how you set that up
Ten allergens are built in: peanut, tree nut, milk, egg, wheat, soy, fish, shellfish, sesame and gluten. Anything else you add as a custom allergen — mango, celery, or a pollen-food syndrome fruit — from Me → your profile card → Custom allergens → "+", with an emoji and a name.
Every allergen carries its own severity: Severe, Moderate, or Intolerance, and severity is per person, per profile — because a trace nut exposure is catastrophic for one person and irrelevant to another. Each family member gets their own profile, allergen list and severity, and each scan checks against the active one, up to five profiles. (Covered in more detail on the family profiles page.)
Where your data goes — the part most pages skip
The question worth asking about any app that photographs your food:
- Your profiles, history and photos live on your device, encrypted by iOS at rest. There are no ads, and no data selling.
- Cloud sync is not on by default. It is the thing you would have to explicitly enable; as of writing it is still planned.
- When an identification needs the cloud model, the cropped image and your declared allergen list are sent to the gateway, and the image is not stored after the request completes.
- Sign-in tokens live in the iOS Keychain, and account deletion is in the app: the Account page's delete action wipes every on-device profile, history and photo and signs you out.
That middle bullet is the one to read twice, because it is the difference between "on-device" as a design principle and "on-device" as a marketing word: the vision runs on your phone, the second opinion may not.
What AllergyLens does differently, honestly
The differentiator is not the camera. It is the refusal to give you a green light.
- A four-level result with a permanent disclaimer, and the guarantee that an uncertain result is never quietly turned into a not-detected one.
- Ten built-in allergens plus your own, each carrying its own severity, so the output is ranked by how serious it is to that person rather than by how suspicious the photo looks.
- A record you can hand to a doctor. Scan history and allergen findings export to a PDF report, so the picture you have of what triggers what is something you can show an allergist instead of retelling. That is a Pro feature, alongside up to five family profiles, on a monthly or yearly subscription that auto-renews until cancelled in Settings → Apple ID → Subscriptions.
The limits are equally clear: it cannot see trace contamination or hidden allergens, it is an informational aid rather than a medical diagnosis, and if your allergy is anaphylactic-grade — a history of severe reactions, an EpiPen prescribed — it is an extra check, never the only one. Read the actual label, ask the staff, carry the pen.
Who should download it, and who should not
AllergyLens earns its place if you eat out more than a few times a month and want a fast second opinion before the first bite; if you cook for someone with a severe allergy and want a second pair of eyes on a plate; or if you manage several people's allergens and want a record you can take to an allergist.
It is the wrong tool if you need certainty — no camera app delivers it, and one that claims to is selling you a false negative rather than a product. It is also wrong if you need trace or cross-contamination detection: that is a label question and a kitchen question, not a photo question. And if you already read every label carefully and never order the ambiguous dish, a scanner mostly adds a screen to look at.
The bar, then: a camera app that tells you what it can see, flags what it cannot, and leaves the decision with you. If that is the bar you want, get AllergyLens on the App Store — or read about the emergency SOS screen first if the people you cook for carry an EpiPen.