Jump to content

Brands

From Open Food Facts wiki

Introduction

The brands of a product are the names of products that appear on the front of the packages. The brands serve as recognition and trust point for buyers. Usually these brands refer to a range of products, with each product having a different variety (flavours, etc.).

Large producers register these brands against copying by competitors. These registered brands are then trademarked by a national or transnational trademark organisation. A registered trademarked brand can either be a word trademark (think a string of letters) or a figurative trademark (think logo, possibly with a text).

Small producers often do not register their brand, due to hassle and costs of doing so. Or they register it only in the geographical area they are operating.

This also implies that each trademarked brand will have a limited geographic coverage. Thus a EU trademark is only applicable in the countries of the EU, and a Benelux trademark only in the Benelux countries. But this also allows brand owners to register in multiple countries when required.

A (trademarked) brand is a very broad concept: it can be used for any product or service. A supermarket chan will have its own brand(s) and a food manufacturer as well. And a product brand will have an owner, which has its own brand as well.

This complexity is often seen on products, where multiple brands and companies can be found. Each brand has its own role in the product value chain and from the packaging it is not clear what these roles exactly are. (to make it more complex: a label can also be a brand).

As shortly described above, brands are complex. The packaging of a product can show multiple brands, related companies and company information. For similar products this can differ per country and region. Often outside information is needed to disentangle brands and organisations. Any brand taxonomy created by OFF should grow step-by-step and help solving immediate issues. Adding complexity can happen in the future.

Goals

Looking at the brands of a product is part of the larger goal to get a better understanding of the supply chain of a product and the environmental impact of that supply chain.

The supply chain data gathered for a product consists of multiple fields with relevant information: brands, labels, production locations, countries, traceability codes, shops and cities. And possibly more fields are required if one wants a full coverage of the supply chain.

The brands field allows to record any brand found on a product package. The goal of this is to a a most complete view of how brands are used in relation to the supply chain.

The brands field is supported by a brands taxonomy. The purpose of this brands taxonomy is primarily to normalise the brand (names). And can be extended to support other goals.

Brand extraction

Most OFF-clients have a brand field, where any brand can be entered as free text. Some clients support the brands taxonomy. This brands taxonomy can be used by the OFF-client as a list of suggestions, which can be filtered by characters the user types, upon which the user can pick the brand s/he wants. Thus the number of brands is a bit restricted.

Hunger game

An alternate method of extracting brands is doing the corresponding Hunger Game.

Data entry guidelines

What should be counted as a brand is a bit vague, so some guidelines/best practices have been formulated:

  • be specific - try to enter the most specific brand that can be found on the packaging;
  • associated brands - add any other brand that can be found on the packaging;
  • proxy brand - use the manufacturer name as a proxy brand if there is no clear brand to be found. Some examples of proxy brand products;
  • No brand - set the brand field to No brand, when absolutely no brand (or proxy brand) can be found on the packaging;

Brand quality

The brands field will be monitored for quality in order to detect obvious errors. A list of these errors can be found on this page.

The brands taxonomy

The basis of the brand taxonomy is a list words, each of which is recognised as being a brand. Each word designates one brand. A brand can be in any language or script. Each brand can be accompanied by one or more attributes.

Current solution

The current solution consists only of the list of words. The language/script of the word is not specified, nor any translation, nor any attributes, nor any relation between brands.

Look here for details on the implementation.

Brands taxonomy improvements

The brands taxonomy can be extended to support other goals.

Disambiguation

The same name might be shared by different brands.

  • For example, San Miguel is a beer in Spain [cervezas san miguel], food in Mexico [grupo agroindustrial san miguel], honey in Spain/France [Ramros Trading Company])
  • For example, Star is starfinefood in the U.S., Star S.p.A. in Italy, stardrinks in the United Arab Emirates, star from Ghadawat Indian airlines company,
  • For example, Walkers represents 3 different brands (1, 2 and 3)
  • For example, Dove is either cosmetic (from Unilever) or chocolate brand (from Mars)
  • Solution: In long term we could have some set of rules like if it is San Miguel and category is Beers, then rename Cervezas San Miguel. Same for food vs cosmetic.
  • For example, Cornetto is a brand of both Frigo and Miko (see previous discussion)

In the brands taxonomy each brand should appear with a unique name, and hopefully wikidata entry. The unique name should for instance indicate whether the product is a honey, a beer or a Mexican brand.

A user might not be aware of all the brand and trademarks specificities and would just indicate the generic name. This generic name should also appear in the brands taxonomy and point to possible more specific brands. This could be encoded as a child of the the generic parent brand.

Transliteration

Transliteration is converting text from one script to another. So this is NOT translation. In some countries multiple scripts are in use and a brand might be known under multiple scripts. Or a brand is sold in country with another script. (Some examples)

This can be supported in the brands taxonomy as an extra line for a brand with the main language representative of the script as ISO language code. Thus the arabic script transliteration will be preceded by a ar: .

Resolve brand spelling

Sometimes it is not quickly how a brand should be written. OFF could help here by supporting alternative brand names and resolve to the correct officially trademarked writing. So a user just writes how s/he thinks it should be written.

Some examples of this are:

  • is it Albert Heijn, Appie or AH. Dutch users might use these three interchangeably. So what is the preferred spelling? The figurative trademark is written as AH, but there is no comparable word trademark. The only word trademark registered is Albert Heijn, and should be the preferred spelling;
  • Is it g'woon or gwoon or Gwoon. The word trademark has the ' in the word;
  • Is it Coop, coop, COOP, CO OP?
    • Solution: in taxonomy, there are no difference between lower and upper case, there are no difference between space and hyphen. We can make coop a synonym of co op.
  • Brands containing an apostrophe or quotes are often missing this one.
    • For examples for apostrophes, Lay's vs Lays, Kellogg's vs Kelloggs, Sar'Ocean.
    • For example for quotes,The Muffin "Mam" Inc
  • Brands with special characters like &
    • For example for &, M&M's
    • Solution: special characters should be recognized. Eventually, use synonyms in the taxonomy.
  • Brands with commas
    • For example for commaWilliams, West & Witt's Products
    • Solution: brand should be written without the comma. it is not possible to use commas in the tags (if you write comma it will start a new tag, this example will result in two tags: Williams and West & Witt's Products or use ";" as separator as OpenStreetMap.
  • Brands with only numbers
    • For examples, 1664, 1883 or 365.

This is all supported by allowing synonyms, special characters and capitalization in the brand taxonomy.

Wikidata attribute

This attribute is the identification of the wikidata entry for the brand. Note that brands are not well available on wikidata. We might need to add some brands ourselves to wikidata. And also provide a link back to OFF.

It might be necessary to distinguish between brands and trademarks. Some brands have multiple trademarks (both word and figurative). And these trademarks are registered in multiple regions.

The wikidata link is the preferred way to add information from external sources Instructions.

This attribute is added on a new line below the brand name in the brands taxonomy text file. Example:

wikidata:en: Q136875635

Website attribute

It is possible to add a website attribute to a brand in the brands taxonomy. This could enhance any explanatory page of a brand. Instead of adding this to the brands taxonomy it could be added to the corresponding wikidata page and added there. OFF could retrieve the link via the wikidata page. The implementation would look like this and included the expected language when opening the link:

web:nl: www.gwoon.nl

Is this already supported in other taxonomies?

Barcode prefixes attribute

Each brand will have one (or more) unique barcode prefix. This barcode prefix is the first 8(?) numbers of the barcode. Having this barcode prefix we can do the following (Exploration):

    • Quality check - if the barcode prefix and the brand do not match there is a quality issue:
      • the barcode is wrong;
      • the barcode prefix is missing form the taxonomy;
      • the brand is wrong;
    • Implied brands - use the barcode prefix to imply (and fill) the brand field in case the field is empty;

A possible implementation of this attribute could be:

barcodeprefixes:en: 

Is there an open database for EAN/UPC-codes, which we could use?

Associated brands

When looking at the packaging of the product one often sees other brands. These might be words, logo's or companies that are recognised. These associated brands often play a different role in the life of a product (and brand). An attempt to classify these other brands is found below (work in progress).

Product sub-brands

Sometimes specific variants of a product are created. These variants have a specific marketing reason to exist. Some examples:

  • Almhof hoekje - for dessert with attached sprinkles;
  • Lays Max - for chips with a large weight, larger packaging;

Private brands

Some brands are only sold by a specific seller and are often owned by the distributor. These are also called [labels]. The country specific distributor can often be found on the packaging (Lidl).

Examples:

  • Carrefour BIO - trademarked brand for organic products sold solely in Carrefour (and related) supermarkets. Only the distributor name (Interdis) can be found on the packaging;
  • Hema - only sold in shops with the brand Hema (HEMA?);
  • Kania - only sold in a Lidl shop (one of the many Lidl examples);

Exclusive brands

Brands that are exclusively sold in specific shops in a country.

Brand owners

These are brands of companies whose sole role is to manage the brand. These are the official brand owners as registered on the trademark databases.

  • One brand is owned(?) by two companies.
    • For example, Aldi Nord and Aldi Süd use the name Aldi but they operate in different areas (between countries, and inside Germany itself)
    • Solution: make Aldi Nord and Aldi Süd children of Aldi. In general, people will input Aldi only. However, if someone put Aldi Nord, it should include its parent, Aldi automatically.
  • The name of the brand is different from the name of the shop of these brand.
    • For example Aldi Nord and Aldi Süd brand, use the international (now unified) brand Aldi (https://aldi.com/), which is also the common used shop name for both Aldi brands in Germany. So the Aldi Nord and Aldi Süd brand, which are only used as shop indication brands on products (at least in Germany), have to resolved to the common shop name Aldi instead of Aldi Nord or Aldi Süd. For the brand Aldi Süd the shops could be also named Aldi Süd, as written on the logo used inside Germany, but as the shop name of the Aldi Nord brand was always Aldi from the beginning, no one in Germany use Aldi Nord as name for these shops.

Sellers

These are the companies that actually have a shop and sell to the consumer. These can be individual shops, franchises or a seller chain. Often these have their own brand, which can be similar to the product brand.

Examples:

  • Hema

Distributors

These are companies that buy from producers and distribute to shops.

Examples:

  • Deoleo (Q137177487) - an international distributor of the brand Carbonell;
  • Interdis (Q116304361) - the distributor for the Carrefour supermarket chain;

Importers

These are companies that import products from other countries and organise the distribution in their own country. Examples:

Producers

Companies that produce (a line of) products and use their own brand. This brand can be trademarked. As the line of products is limited, an associated category could be added to the brand. This associated category can either be used as a quality check, or as an implied category.

Examples (trademarked, product brand is company name):

  • Flevosap - a dutch producer of fruit juices. The company registered some other trademarks in the EU. Presumably only sold in the Netherlands;

Examples (non-trademarked, product brand is company name):

  • Go Vega! - a dutch producer of vegetarian (vegan?) meat simili, word and figurative trademark in the Benelux;

Usually a producer is not indicated by a brand, but by a traceability code or the producers name (and/or address).

  • parent brand - when should the parent brand be added? Only if the parent brand is available on the front of the packaging, or also when it is shown on the back of the packaging, or when we can find out the legal final parent owner of a brand? This choice might have an implication for how we structure the data.
    • comment @benbenben: at least having sub-brands/lines of a brand would be beneficial - for quality checks as well as monitoring number of products from the same distributor - even if the brand is not written on the package.
      • For example, S-budget is a child of Spar.
      • For example, Pilos is a child of Lidl.

Categories

Brands cannot be seen independent of the product categories. This can be seen in practice when creating a category cloud for a brand. But also when a brand has a related trademark, the that trademark has classification (Nice class) for which the brand is applicable.

When a brand has an associated category, it could help OFF detect classification errors. Most likely this category cannot be evaluated without the country for which a trademakr is limited.

A category attribute could be added to a brand in the brands taxonomy, which could be used as input for a classification error check. A category associated to a brand could be limited to trademarked brands and the relevant category could be retrieved from the trademark description. This also requires a mapping from the Nice class to the OFF categories taxonomy.

Countries attribute

A single brand will be present in one or more geographic region depending on the business of the seller, distributor or manufacturer. This brand will be identifiable by name and/or logo. Brand owners can have the same brand name (but different logo's), but products of these brands will probably be sold in different geographic regions. However when the product categories are dissimilar, they can also share the same geographic region. By the way, brand owner can be a business different from seller, distributor or manufacturer.

The description above shows that there can arise conflicts between brand owners when they share product category and geographic regions. In order to regulate this a brand owner can trademark his brand in the regions required. Thus the same brand of a single brand owner can be registered multiple times and be valid for multiple geographic area's.

For example the company Lidl Stiftung & Co. KG is owner of the brand Lidl in the European Union, in the United States and Worldwide. Probably nobody else can use the word trademark Lidl somewhere.

Need a counterexample where two totally different products, but with the same brand name are sold in different regions.

In the brands taxonomy this could be supported by adding a countries attribute to a brand. And creating a separate brand entry for each trademark registered in separate region, so one for the EU, one for the UK and one for the USA. Each entry would point to a separate wikidata-entry. Similar brands, i.e. with same owner, could be gathered under the same parent. This is similar as discussed earlier on disambiguation.


  • countries:en - defines the countries where the brand is sold. This could be used to filter the selection-pull down on the web-interface;

Possible extensions

At some stage each brand can be extended with one or more attributes for each brand. This attributes will encode additional information related to a brand. Attributes can be used for quality checks, specifying additional information (either as found on the package or found elsewhere), inferring information, etc.

Attributes

  • brand_owner_opencorporates:xx: - an identification of the probable brand owner/distributor on opencorporates. It is not always clear what should be written down here.
  • idea: local customer service address (one for each country where the product is distributed, and a generic one)
  • idea: eu trademark - maybe only useful for name trademarks? (not logo's). But not relevant to the consumer.
  • idea: stores - the stores where the brand is sold. Maybe better to create a store taxonomy and link from there to brands?

Q&A

  • Product has more than a single brands.
    • Product is part of a bigger brand or group.
      • For example, Actimel is sold by Danone.
      • For example, By Sainsbury's is sold by Sainsbury's.
      • Solution: make Actimel a child of Danone in this example.
    • Synonyms. Product is sold with 2 brands, each for different language/countries.
      • For example, both Nature Valley and Val Nature can be written on the same product, but not always.
      • Solution: make Val Nature a child of Nature Valley in this example because Nature Valleyis the original U.S. brand (reference).
      • For example, No Name and Sans nom can be written on the same product, but not always.
      • Solution: make No Name , No Name Sans nom and Sans nom three separate children of Generic brand in this example because they are all lines of Generic brandwhich is a Canadian brand (reference). Or, the three of them as synonyms of each others and child of Generic brand.
      • For example, Coop, in Switzerland, can add up to three brands on a product: Betty Bossi, Karma and Coop. They justify it: "We offer a wide range of own-label brands and brand worlds." (source)
      • Solution:
      • For example, Lipton belongs to Unilever but this product is distributed by Pepsico . Lipton used to belong to Unilever, and now belong to CVC Capital Partners. Lipton's ready to drink beverages belongs to both Unilever and PepsiCo (who is distributor).
      • Solution:
      • For example, The Laughing Cow and La vache qui rit.
      • Solution: they both belong to the same parent (Bel Group). They can be en_us and fr_fr.
      • For example, Miko/wall's ice creams, called Frigo in Spain but Bresler in Chile and Bolivia.
      • Solution: es_es:frigo and es_cl:bresler / es_bo:bresler will be on the same block
      • For example, The Coca-Cola Company sells Fanta in Thailand under Fanta and แฟนต้า names.
      • For example, Danone sells mineral water in Morroco under both عين سايس and aïn Saïss names.
    • One brand is distributed/produced locally by another brand
      • For example, the licensing of beer brands: the same brand may be exploited under a licensing agreement by different companies depending on the country (and this can change with time). My understanding is that it is because for beer, it is a lot cheaper to produce locally than to transport internationally. In the UK San Miguel would probably be under Carlsberg Marstons, but in Spain it would be under Mahou San Miguel and in the Philippine or Hong Kong under the (original) San Miguel Brewery.
      • For example, Asahi, manufactured for the European market by its local subsidiaries (Peroni in Italy, for instance) but used to be licensed to Carlsberg Marstons or AB Inbev depending on the country. Some Asahi brands are still licensed to AB InBev at least for some European markets. It used to be very opaque, but recent events made that obvious.
      • In Algeria, a lot of brands are done under licensing because of local laws which forbid a company which is not 51% owned by an Algerian to produce locally while import of a lot of products is forbidden or very limited.
  • company structure - do we want to list (and research) all the relationships between owners, marketing companies, etc. I would suggest that we do NOT and limit ourselves to the brands and brand owner (and maybe the production company);
    • comment: overkill - it is very tempting to add al kinds details for owners, etc. The actual owners of the product, brand, etc, do not seem useful to the consumer. We just should provide links to third parties for this kind information. I.e. wikipedia, wikidata,, opencorporates, ipo europe, ...
    • Decision:

Observations summary

Summarizing the observations note above, we see the following brands:

  • 1 universal brand, exact same name used in all countries and languages. e.g. "Nutella"
  • 2 brand that is translated in different languages or scripts "The Laughing Cow", "La vache qui rit" (example) EDIT they both belong to the same parent (Bel Group)
  • 3 brands that have the same name, but used in different languages
  • 4 brands that have the same name, but used in different countries
  • 5 brands that have the same name, and used in the same country. (e.g. "Ferrero" in Italy: there's also a pasta brand. EDIT pasta brand in Italy named Industria-alimentare-ferraro).
  • 6 brands in non-latin scripts, which can not be latinised
  • 7 parent brands are sometimes shown on packaging

Use cases (UC below)

The brands taxonomy has multiple applications within Open Food Facts. These are:

  • 1 Display the brands of a product, in the language requested by the user;
  • 2 Have a way to list all products of a brand;
  • 3 Let users enter brands for a product, as they appear on the package (as free text);
  • 4 Let the user select the correct brand from a list of existing brands. If the same brand text occurs multiple times, the user must be able to select the applicable one;
  • 5 Suggests a brand to the user based on the manufacturer part of the barcode and other information;
  • 6 Infer category and labels from brand - some brands are only used for specific products. This implies that the product category and possible labels can be implies (suggested);
  • 7 Infer brand from manufacturer code within the barcode;
  • 8 Barcode/Brand quality check - if the manufacturer part of the barcode does not match the specified brand, there is an error in either of them;

Design considerations

The observations and use cases lead to several design considerations:

  1. Unique brand key - as the same brand (string) can exist in multiple geographic areas or within the same geographic area, there must be a way to uniquely distinguish between the various brands. Otherwise, a user can not enter the correct brand (UC1), nor can we list all brands (UC2);
  2. Uses selectable brand - there must be a brand name in the same language/script of the package. If that name occurs multiple times in the taxonomy, it must be specified by product category, country sold, etc in order to make it unique. For instance, the label Taste occurs in France and Argentina, but is used for different categories. So the user should have the choice Taste (category 1 - France) and Taste (category 2 - Argentina). Maybe this can be mixed with the key. (UC4). EDIT: there are no Taste brands neither in France not in Argentina.
  3. Language/script specific brands - a way to code a single brand in multiple scripts and/or languages, for example in Chinese, Arabic and English (UC1)
  4. Language independent brand - a way to encode a brand that is valid for multiple languages (UC1);

Brands and Robotoff (AI)

Preventing OFF AI to detect some false brands: see brand_taxonomy_blacklist.txt.

Help to collect brands

The AI of Open Food Facts, called Robotoff, is trying to identify brands in several ways. We use OCR in combination with known values. We also have another technique using pure computer vision and annotations to create cluster of brands by visual similarity. The annotations made by Robotoff are provided to users, asking them to answer to a simple question. There are also used by Hunger Game. Everyone can use Hunger Game, but be careful to the issues mentioned in this current page.

  • on 2020-10-29, there were 43200 annotations and 22748 remaining
  • on 2020-11-17, there were 46911 annotations and 22720 remaining
  • on 2020-11-17, there were ? and 57879 remaining

Known challenges

Some brand names are related to common name, expressions or ingredients producing false positive with AI tool. For examples:


External brands databases