How to Declare Allergens on a Digital Menu Without Cluttering It (2026)
A guest with a peanut allergy gives your menu about ninety seconds before deciding whether to trust you. Printing fourteen allergen names under every single dish won't win that trust. It just makes the menu unreadable — for them and for everyone else.
Short answer: declare allergens in three layers. A one-line notice at the top of the menu, a short allergen signal under each dish name (two or three words, not fourteen), and the full list one tap away on the dish page. Add a filter so guests can hide what they can't eat. That's it. Compliance stays complete, the menu stays clean, and the allergy table orders more instead of less.
The mistake almost everyone makes is treating allergen info as text to add. It isn't. It's information to organise. Digital menus are good at that. Paper never was.
Why stuffing allergens onto the menu backfires
Do the maths on a normal menu. Sixty dishes, fourteen possible allergens each. That's 840 pieces of data. Put all of it on the surface and you get a wall of grey text on a 6-inch screen.
Three things then go wrong:
- Guests stop reading. A cluttered menu gets scrolled, not read. Scrolled menus produce smaller orders.
- The allergy guest still can't decide. "Contains: gluten, milk, egg, soy, mustard, celery, sulphites" tells them nothing fast. They wanted to know one thing: is there dairy in it?
- Staff stop trusting it. When every dish is covered in warnings, the warnings mean nothing. That's how a real risk gets missed.
Here's the thing owners underestimate. The allergy guest is rarely eating alone. They're booking for four, for a birthday, for the team dinner. They pick the restaurant. If your menu answers their question in five seconds, you don't win one cover — you win the table.
How to declare allergens on a digital menu: the three-layer rule
Every good allergen menu I've seen works the same way. Show a little, reveal the rest on demand. Designers call it progressive disclosure. Restaurants should just call it common sense.
| Layer | Where it lives | What it does |
|---|---|---|
| 1. The notice | Top of the menu, one line | Tells guests allergen info exists and how to get it |
| 2. The signal | Under the dish name | Two or three short marks — enough to filter mentally |
| 3. The detail | The dish page, one tap away | Full "contains" list, cross-contact note, ingredients |
Layer 1 costs you one line. Layer 2 costs you a few words per dish. Layer 3 costs you nothing on the surface at all — it only appears when someone asks for it. And "one tap" still counts as available before ordering, which is the part the rules care about.
Layer 1: the notice that does the heavy lifting
One sentence at the top of your digital menu. Keep it warm, not legal.
"Tap any dish to see its allergens. Got an allergy? Please tell us before you order — we'll check it with the kitchen."
That does four jobs at once: it tells guests the information exists, where to find it, that you want to hear from them, and that a human will verify it. Most menus skip this line and then wonder why guests still ask the waiter everything.
Put the same line in your footer text, and put it on the printed card too if you keep one on the table. Our comparison of QR menu vs printed menu explains why the mixed setup usually wins.
Layer 2: the dish-level signal (this is where menus get ugly)
This is the layer that makes or breaks the design. You've got four realistic formats.
| Format | Looks like | Best for | Watch out |
|---|---|---|---|
| Short words | Contains milk, gluten | Most menus | Gets long past three allergens |
| Letter codes | G · M · N | Big menus, dense layouts | Needs a key, and guests skip keys |
| Icons | Small symbols | Photo menus, tourist areas | Never use icons alone |
| Nothing visible | Tap to see | Photo-led, image-heavy menus | Only works if the tap is obvious |
My honest recommendation: short words, lowercase, small, grey, directly under the dish name. Cap it at three, then collapse the rest. Contains milk, gluten +2 is readable at a glance and still honest. Nobody needs the full fourteen while they're choosing a starter.
Three design rules that keep it clean:
- Don't use red. Red reads as "danger" or "sold out". Neutral grey at 85–90% of the description size is plenty.
- Don't repeat it in the description. Pick one place. Saying "creamy" and "contains milk" in the same block is noise.
- Don't put allergens in the dish name. "Chicken Caesar (contains fish, egg, gluten, milk)" is how a menu dies.
Icons: use them, but never on their own
Icons are lovely for tourists and terrible for accessibility. A little wheat symbol means nothing to a colour-blind guest at 8pm in dim light, and screen readers read it as… nothing.
If you use icons: pair every icon with its word, give it a text label the screen reader can find, and never rely on colour alone to carry meaning. A guest using a screen reader has exactly the same right to know what's in the food.
Layer 3: the tap that carries the real information
The dish page is where you can finally be thorough, because the guest asked for it. Put four things there, in this order:
- Contains — the plain names, in the guest's language. Not codes.
- May contain (cross-contact) — kept clearly separate. Never mix the two lists.
- The reason, if there is one — "fried in the same oil as our fish" is worth ten warnings.
- The human line — "Tell your waiter and we'll check with the kitchen."
Separating contains from may contain is the single biggest upgrade most menus can make. One is a fact about the recipe. The other is a fact about your kitchen. Guests treat them very differently, and so does an inspector.
If you want the full list of what to declare, our guide to the 15 food allergens restaurants must know has all fourteen names the EU lists, plus the one most menus miss.
The filter that turns compliance into sales
Here's the feature that separates a digital menu from a PDF with extra steps: let guests hide what they can't eat.
A guest taps "milk", and every dish with milk disappears. What's left is their menu. No scrolling, no asking, no guessing.
Watch what that does at the table:
- The allergy guest orders a starter as well, because choosing got easy.
- Nobody spends four minutes interrogating the waiter, so the table turns faster.
- The group stops treating the venue as a compromise and starts treating it as the good option.
Filtering also quietly fixes your worst problem: it makes the allergen data useful instead of decorative. Data that gets used gets maintained.
Words matter: "contains" vs "may contain"
For years, "may contain traces of nuts" was legal cover, printed on everything. Allergic guests learned to ignore it — the worst possible outcome.
That's changing. Global guidance on precautionary allergen labelling, built on measurable reference doses instead of a shrug, was recommended for adoption in May 2026, and the EU is working toward harmonised rules expected around late 2027.
You don't have to do anything today. Just build the habit now: only write "may contain" where you can explain the risk in one sentence. If a dish is safe, say it's safe. A warning you can defend is worth more than ten you can't.
What the law asks — and how it changes by country
The list of allergens is fixed. How you deliver it is set nationally, and that's the part people get wrong.
| Where | What's expected for food served loose |
|---|---|
| United States | Federal law names 9 major allergens (milk, eggs, fish, crustacean shellfish, tree nuts, peanuts, wheat, soybeans, sesame). Menu labelling isn't required federally, but the FDA Food Code expects allergen-aware management, and states like Massachusetts, Rhode Island, Illinois and Michigan have their own menu-notice or training rules |
| United Kingdom | Allergen info must be available for non-prepacked food, with a clear notice pointing to it. The FSA now recommends written allergen information plus a spoken check at the point of order. Pre-packed for direct sale food needs full labelling (Natasha's Law) |
| Ireland | In writing, clear and legible, without the guest having to ask (FSAI) |
| EU baseline | 14 allergens must be declared for every dish, available before the guest orders. Article 44 of Regulation 1169/2011 lets each country set the method — Spain requires it in writing before ordering, the Netherlands accepts spoken info backed by a notice and a written record |
Three things hold almost everywhere:
- A QR menu counts as "in writing" — as long as the guest can reach it before ordering, and you have a backup (a printed sheet or the waiter) for anyone without a phone.
- You still need a written record in the kitchen. The menu is for the guest; the matrix is for your staff and the inspector.
- It must match what's actually in the pot today, not what the recipe said last year.
Check your own authority before you print anything — the FDA and your state health department in the US, the FSA in the UK, the FSAI in Ireland, AESAN in Spain, the NVWA in the Netherlands. Rules on the method move. The allergens don't.
Multi-language menus: allergens in the guest's language
If your town gets tourists, this one's not optional. "Contains celery" is useless to someone who doesn't read English — and celery is exactly the allergen that surprises visitors.
A digital menu can carry the allergen names in every language you publish, translated once and reused everywhere. On paper that's another print run per language, at $200–$600 a time. Our menu printing cost breakdown shows how quickly that adds up over a year.
There's a small local advantage here too. In a tourist street where four menus look identical, the one that answers a visitor's allergy question in their own language gets the table. That's the whole competitive edge, and it costs nothing.
Keeping it true after week one
Allergen data doesn't go stale because you're careless. It goes stale because your bread supplier changed their recipe and nobody told you.
Four habits that keep it honest:
- One source of truth. The menu reads from your allergen matrix. Not a printed folder, a laminated card and a WhatsApp group that all disagree.
- One named owner. A matrix nobody owns is out of date in six weeks.
- A check when a supplier changes. New supplier, new ingredient check. Every time.
- A twice-yearly full review. Diary it like a fire check.
The big win of going digital is that a change takes one edit. Update the dish once and every table, every QR code and every delivery order shows the new information instantly — no reprint, no folder quietly going stale. If your menu is still a PDF, our guide to turning a PDF menu into a digital QR menu is the fastest way over, and how to create a QR code menu for free covers starting from scratch. Changing systems doesn't mean retyping either — see switching without retyping your menu.
The allergen has to survive the order
Declaring it on the menu is half the job. The other half is getting it to the pass.
The strongest setups freeze the declared allergens onto the order line. The kitchen ticket and the receipt both show what was declared at the moment of ordering — not what the recipe looks like next month. That matters if anyone ever asks what happened on a specific night.
Two rules for the floor:
- The allergy goes on the order as text, never on a waiter's memory or hand.
- The person who carries the plate says the dish name out loud at the table.
Allergy requests are really just dish changes, so your kitchen needs a routine for them — handling off-menu orders covers how to say yes without chaos. And new starters need the scripts on day one, not week three: our guide to training staff for better customer service is the place to start.
For what it's worth: Tabres lets you tag 15 allergens per product, in every menu language, and freezes them onto each order line and receipt. It's free, and our reasoning for that is public. Use whatever tool suits you — the three-layer method works anywhere.
Seven mistakes that clutter a menu (and how to fix each)
- Listing all fourteen allergens under every dish. Fix: show up to three, collapse the rest.
- Icons with no words. Fix: always pair the symbol with its name and a text label.
- A key at the bottom of the menu. Nobody scrolls back. Fix: put the meaning where the mark is.
- Mixing "contains" and "may contain". Fix: two separate lists, always.
- "May contain" on everything. Fix: only where you can explain why in one sentence.
- Allergens only in English. Fix: publish them in every menu language you offer.
- A menu that disagrees with the kitchen folder. Fix: one source of truth, one owner, one edit.
Get it done in 30 minutes
You've likely got the hard part — the matrix — already. This is just publishing it well.
- Write the notice line. One sentence, top of the menu. Five minutes.
- Pick your format. Short words under the dish name. Decide the cap (three, then "+N"). Five minutes.
- Tag your top 20 dishes first. They're 80% of orders. Ten minutes.
- Split contains from may contain on anything fried, shared or dusted. Five minutes.
- Turn on the filter if your menu tool has one, and test it on your own phone. Five minutes.
Then work through the rest of the menu over the week. Perfect on twenty dishes beats half-done on sixty. If you're still choosing a tool, we compared the free QR menu generators and the top QR menu tools worth a look.
Frequently asked questions
How do I show allergens on a digital menu without making it messy? Use three layers: a one-line notice at the top of the menu, up to three short allergen words under each dish name, and the full list on the dish page one tap away. Add a filter so guests can hide dishes containing an allergen. The surface stays clean and the information is still complete.
Does a QR menu count as declaring allergens "in writing"? In most places, yes — as long as the guest can reach the information before they order, and you have a backup for guests without a phone. The written record you keep in the kitchen is a separate duty and you still need it. Check your national or state authority for the exact wording.
Should I use allergen icons or words? Words, if you only have room for one. Icons are faster to scan but fail for colour-blind guests, screen-reader users and anyone who doesn't know your symbol set. If you love the icons, keep them — just always pair each one with its name.
How many allergens should I show under a dish? Three at most, then collapse the rest behind a "+2" style marker. The visible marks are there to help someone filter quickly, not to be the full legal declaration. That lives on the dish page.
Where do I put "may contain" warnings? On the dish page, in a separate block from the "contains" list, with a short reason. Keeping them separate is what makes both useful. Blanket warnings on every dish train guests to ignore all of them.
Do I have to translate allergens into every menu language? Guests need information they can understand, so yes — in every language you publish the menu in. A digital menu translates once and reuses it. A printed one means another print run.
What about takeaway and delivery orders? Same duty. There's no waiter to ask, so the information has to reach the guest on the online menu before they order, and travel with the order when it arrives.
Does this apply to a small cafe or a food truck? Yes. There's no exemption for size in the EU or the UK, and US state rules apply to small venues too. A two-person cafe carries the same duty as a hotel restaurant.
How often should I update allergen information on my menu? Whenever a recipe changes, a supplier changes, or a dish goes on. Then a full review twice a year. Supplier reformulations are the silent killer — nobody calls to tell you the bread recipe changed.
What's the fastest way to add allergens to an existing menu? Tag your twenty best sellers first, split contains from may contain, and publish. They cover most of your orders, so you get most of the benefit on day one — then finish the tail over the week.
Here's the honest summary. Declaring allergens well isn't about printing more. It's about showing less on the surface and holding more underneath. Three layers, a filter, plain words, one source of truth.
Give it half an hour this week. The menu gets cleaner, your waiters stop guessing, and the guest who used to scan your menu and quietly leave becomes the one who books a table for six — and asks for you by name.