EU Allergen and Food Information for Online Food Shops on Shopify
Under Regulation (EU) No 1169/2011, food sold online needs its mandatory information, allergens included, before purchase. What that means and how to show it on Shopify.
In this guide
In a shop, a customer can turn the pack over and read the ingredients. Online they cannot, so EU law asks you to put that information on the page before they buy. If you sell food to consumers in the EU through Shopify, your product page is where that happens.
This guide explains what Regulation (EU) No 1169/2011 on food information to consumers (often called the FIC Regulation) asks of online sellers, which particulars have to be shown, how allergens and the nutrition declaration must be presented, and how to put all of it on a Shopify product page.
This article is general information, not legal advice. Check your products with your food authority or a food law adviser, and note that member states can add national rules.
The rule for online sales: before purchase and at delivery
The regulation treats online shops as “distance selling”. Article 14 of Regulation (EU) No 1169/2011 sets two moments for prepacked foods:
- Before the purchase is concluded, all mandatory food information except the date of minimum durability or “use by” date must be available. It must appear on the material supporting the distance sale, which for you is the product page, or be provided through other appropriate means clearly identified by you, without extra cost to the consumer.
- At the moment of delivery, all mandatory particulars must be available, including the date.
The European Commission’s page on distance selling of food summarises the same rule, and its food information to consumers overview puts it simply: the same labelling requirements apply online and in a shop.
For non-prepacked foods sold at a distance, such as items packed to order, the requirement is narrower: allergen information is mandatory, and other particulars only where national measures require them (Article 44). Article 14(2) applies the same before-purchase and delivery rule to those particulars.
What counts as mandatory food information
Article 9(1) lists the mandatory particulars. Each comes with its own detailed rules in the articles that follow, and some only apply to certain foods.
| Particular (Art. 9(1)) | What it means on your page | Needed before purchase online? |
|---|---|---|
| (a) Name of the food | The legal or descriptive name, not only your brand name | Yes |
| (b) List of ingredients | The full ingredient list | Yes |
| (c) Allergens | Annex II substances, emphasised in the ingredient list | Yes |
| (d) Quantity of certain ingredients | For example a percentage when an ingredient is in the name | Yes |
| (e) Net quantity | Such as 250 g or 500 ml | Yes |
| (f) Best before or use by date | The date on the pack | No, but at delivery |
| (g) Storage conditions or conditions of use | “Store in a cool, dry place” | Yes |
| (h) Food business operator | Name or business name and address | Yes |
| (i) Country of origin or place of provenance | Where Article 26 requires it | Yes |
| (j) Instructions for use | Where the food is hard to use without them | Yes |
| (k) Alcoholic strength | For beverages above 1.2% alcohol by volume | Yes |
| (l) Nutrition declaration | The nutrition table | Yes |
Article 15 adds a language rule: mandatory information must be in a language easily understood by consumers in the member states where the food is marketed, and a member state can require one or more of the EU’s official languages on its territory. If you sell into Germany and France from one store, plan for German and French text.
Allergens: the 14 and how to emphasise them
Annex II of the regulation lists the substances or products causing allergies or intolerances:
| # | Allergen | # | Allergen |
|---|---|---|---|
| 1 | Cereals containing gluten | 8 | Nuts (such as almonds, hazelnuts, walnuts) |
| 2 | Crustaceans | 9 | Celery |
| 3 | Eggs | 10 | Mustard |
| 4 | Fish | 11 | Sesame seeds |
| 5 | Peanuts | 12 | Sulphur dioxide and sulphites (above 10 mg/kg or 10 mg/litre) |
| 6 | Soybeans | 13 | Lupin |
| 7 | Milk | 14 | Molluscs |
Several entries have exceptions, such as fully refined soybean oil, so read Annex II itself for your ingredients.
Article 21 sets how allergens are shown:
- They are named in the list of ingredients, with a clear reference to the name in Annex II.
- That name is emphasised with a typeset that clearly distinguishes it from the rest of the list, for example by font, style or background colour. Bold is the common choice.
- Without an ingredient list, you use the word “contains” followed by the allergen’s name.
- You do not need to repeat it where the name of the food clearly refers to the allergen.
For a product page, that means an ingredient line like this:
Ingredients: oat flakes, honey, almonds (12%), sunflower oil, milk powder, salt.
A separate “Allergens: milk, nuts” line is a useful extra for shoppers, but it does not replace the emphasis inside the ingredient list when there is one.
The nutrition declaration
Article 30(1) sets the mandatory content: energy value and the amounts of fat, saturates, carbohydrate, sugars, protein and salt. You may add others listed in Article 30(2), such as fibre.
Articles 32 and 34 set the form:
- Values are expressed per 100 g or per 100 ml (Article 32(2)). You can add per-portion values on top in the cases the regulation allows.
- The particulars are presented together in a clear format and, if space permits, in a table with the numbers aligned (Article 34). A web page has space, so a table is the natural choice.
A product page version looks like this:
| Nutrition information | per 100 g |
|---|---|
| Energy | 1850 kJ / 442 kcal |
| Fat | 18 g |
| of which saturates | 2.1 g |
| Carbohydrate | 58 g |
| of which sugars | 21 g |
| Protein | 9.5 g |
| Salt | 0.1 g |
Some foods are exempt from the nutrition declaration under Annex V. Examples include unprocessed single-ingredient products, herbs and spices, salt, tea and herbal infusions without other added ingredients, coffee beans, foods in packaging whose largest surface is under 25 cm², and food supplied directly by the manufacturer of small quantities to the final consumer or local retailers. Beverages above 1.2% alcohol are not required to carry an ingredient list or nutrition declaration under Article 16(4). Check the exact wording before relying on an exemption.
How to show it on a Shopify product page
There are three practical ways to do it.
1. Write it into the product description
Fast for a small catalog. You type the ingredient list with allergens in bold and paste a table into the description editor.
The downsides show up with scale: no structure, so one product forgets the salt row; tables pasted from Word break on mobile; and every translation is a separate copy that drifts.
2. Metafields plus a theme block
Create metafield definitions for ingredients, allergens and nutrition, fill them per product, and show them through theme blocks or a custom section. The data is structured, which helps with CSV updates and translations.
The weak point is the connection between data and theme. If the namespace, key or type does not match what the block expects, you get a heading with no values. Our guide to nutrition and allergen metafields not showing covers those failures. For bulk updates, the Shopify product CSV guide explains how product rows and fields map.
3. An app or a custom block
An app or a developer-built block can own both the data format and the display, so the table always has the same rows and allergens are always emphasised the same way. If your products have special needs, such as several recipes per product line, our guide on when to build a custom Shopify app helps you weigh it, and how to brief a developer helps you describe it.
Where to place it on the page
- Near the buy button or in a clearly labelled section, such as “Ingredients and nutrition”. Article 14 asks for the information on the selling material or through clearly identified means, so do not hide it behind an unrelated link.
- As text, not only as a photo of the pack. A photo can support it, but text can be read on a phone, translated and kept in sync with your data.
- The same on every variant, unless the recipe differs. If it does, each variant needs its own information.
Pitfalls
- Allergens only in a separate line. When there is an ingredient list, the allergens have to be emphasised inside it.
- Brand name instead of the name of the food. “Morning Crunch” is a brand. “Honey almond granola” tells the customer what it is.
- Missing operator details. Name or business name and address of the food business operator are mandatory, also online.
- Values per serving only. The mandatory basis is per 100 g or per 100 ml.
- One language for all markets. Check what each country you ship to requires.
- Old recipes on the page. When a supplier changes an ingredient, the page has to change the same day as the pack.
- Forgetting the date at delivery. The best before or use by date is not needed on the page, but it has to be on what the customer receives.
Showing it with EU Food Labels
We built EU Food Labels, a free Shopify app, for this page. You enter nutrition values (kJ and kcal, with the “of which” rows), ingredients with allergens marked for bold, the 14 allergen groups, net quantity, storage, origin and operator per product. A theme app block shows them on the product page, with the fixed label text translated into 10 EU languages. It is not on the Shopify App Store yet.
FAQ
Do I have to show allergen information on my online food shop?
Yes, if you sell food to consumers in the EU. For prepacked foods, all mandatory food information except the date must be available before purchase. For non-prepacked foods, allergen information is mandatory.
Do I need to show the best before date on the product page?
No. Article 14 excludes the date of minimum durability or use by date from the before-purchase requirement. It must be available at the moment of delivery.
Is it enough to show a photo of the packaging?
The regulation asks for the information to appear on the selling material or through clearly identified means. Text is the safer choice, because customers can read it on any screen and you can keep it accurate. Ask your food authority if you rely on images.
Which nutrients must be in the nutrition table?
Energy, fat, saturates, carbohydrate, sugars, protein and salt, expressed per 100 g or per 100 ml. You may add others, such as fibre.
How should allergens be highlighted?
Name them in the ingredient list and emphasise them so they stand out from the other ingredients, for example in bold. Without an ingredient list, use “contains” followed by the allergen.