Frequently Asked Questions

This is the long version of the FAQ. It may be difficult to navigate, because it has a lot of information. Try the abbreviated FAQ page first, which answers the most common questions.

If you have additional questions, please post them

Using GoodRelations in your Web Site

What is the advantage of GoodRelations in RDFa over microformats or microdata markup?

Microformats are a simple yet very restricted way of adding very basic meta-data to Web content. They are not suited for communicating very granular information, like product features, quantity discounts, delivery charges, etc. This is why Google and other search engines have begun to silently phase out microformats for e-commerce use-cases.

Microdata is a new syntax for embedding data into HTML content, not a vocabulary per se. GoodRelations is a fully microdata-compliant Web vocabulary. In fact, it is the first Web vocabulary that is fully usable in both RDFa and microdata syntax.

Currently, more clients understand GoodRelations in RDFa than in microdata syntax.

For more details, see

In a nutshell, GoodRelations is the most powerful, most generic way of publishing e-commerce data on the Web and the choice of major players, like BestBuy, Volkswagen, O'Reilly, Google, and many others.

Will the extra markup slow down my page?

No. In comparison to the total size of all components of typical e-commerce Web pages, GoodRelations meta-data will add just 0.5 - 1 % of extra markup. Since HTTP 1.1 supports compression by default and since a part of the page loading times are independent of the size of the content for establishing the connection, even very comprehensive GoodRelations markup typically adds less than 0.2 - 0.5 % (!) to the loading time. This means that for a page loading in 300 ms, the transfer of the rich e-commerce meta-data will at max require additional 2 ms.

This is way beyond what humans are able to spot.

There is no GoodRelations extension for my shop application XYZ. What shall I do?

For many popular shop applications (e.g. Magento, Joomla/Virtuemart, Wordpress/WPEC,...), there exist free extension modules that make adding GoodRelations RDFa for semantic SEO as easy as a few mouse-clicks. That is by far the simplest way of adding GoodRelations to your site.

First make sure you check the current list of available modules.

If your software package is not listed there, you can:

  1. Ask your vendor to add GoodRelations using this recipe. We provide free support for this! There is also a free GoodRelations Developer's Toolkit available.
  2. Export your catalog in BMEcat syntax and use this tool. This is mainly interesting for manufacturers or very large shops.
  3. Add GoodRelations to your templates manually as shown on the GoodRelations Quickstart page.

How can I check whether I am using GoodRelations correctly?

There are two tools that help you check your implementation:

  • The Google Validator for Rich Snippets. This one will tell you whether you are using GoodRelations on product item pages in a way that Google can use for Rich Snippets. This is important, because Google has some special requirements that must be observed.
  • The GoodRelations Validator is a more sophisticated tool that checks for common errors of the actual information in your data.

We recommend to use both tools in general. We will continually add more checking rules to the GoodRelations Validator in the future.

Business Questions

What are the business benefits of using GoodRelations?

Quickly told, as someone offering products or services, you can use digital data, invisible added to your Web pages, to articulate your exact value proposition, i.e. your

  • product features,
  • prices,
  • services,
  • payment options,
  • warranty,
  • whom you do business with,
  • regions you ship to, etc.,

so that

  • search engines,
  • mobile applications,
  • browser extensions, and
  • novel applications

can access and interpret this information and support their owners with honoring all aspects of your offer fairly.

So the basic idea is "talking to your potential customers' digital devices with structured data".

A short video that explains the business benefits of GoodRelations is here:

Which industries or types of products are most suited for GoodRelations?

In general, you benefit most from Semantic SEO with GoodRelations

  • if your products are specific,
  • if the location of supply and demand matters (e.g. used cars - you want to test-drive a used car before buying),
  • if the choices and preferences of customers are at least partially rational (e.g. it has quantitative features),
  • if multiple dimensions matter (e.g. weight vs. battery life), and
  • if data from other Web pages could support the buying decision (e.g. using Wikipedia information to augment real-estate offers or datasheets from the manufacturer page to augment a retail shop page).

Any shop can benefit from GoodRelations. The following industries are prime candidates for GoodRelations:

How much will the adoption of GoodRelations cost for my shop?

That depends. For standard shop software, like Magento, Prestashop, and others, there are powerful free extension modules that will add GoodRelations to your site within 15 minutes or so.

For modern e-commerce applications, the implementation effort can range from a few hours to a few days, depending on the granularity of data that you want to publish and the quality of the back-end database.

Note that you should not just strive for simple Google Rich Snippets, but exploit the full potential of Semantic SEO.

What is the difference between SEO and Semantic SEO?

Traditional on-page SEO tries to polish content so that it ranks high for a few popular keywords or searches. But quite clearly, it is impossible for everybody to be among the top five results for generic queries. Semantic SEO sends much more fine-grained relevace signals to search engines so that your product will be ranked high for queries from people that likely want your particular offer.

See for more details.

How can I prevent my competitors from abusing my rich markup?

Some people are concerned that adding rich data markup makes their content more accessible to malicious crawlers and other ways of abuse of their data. In most cases, this fear is unfounded, since stealing content from a few known target sites via screen-scraping is pretty simple for a serious party, so you do not really help them a lot.

For your potential customers, however, rich data markup makes your information much more accessible, because they do not have the skills nor time to write a scraper script to extract your data.

In any case your malicious competior can cheaply hire freelancers to extract your content manually, e.g. via the Amazon Mechanical Turk platform. Your potential customers can't.

So by not providing data markup, you impede your potential customers much more than you impede abusers of your content.

On top of that, you can still use legal means to stop others from crawling and using your data. The simplest way is to exclude them using the robots.txt standard and technical ways of blocking bots and crawlers.

Note 1: There can be sophisticated business cases in which you may want to decide strategically on which data to make accessible to crawlers and intelligent clients, and which you don't.  In those cases, you will need to develop a data marketing strategy. But this is really for the big fishes, not for the small shops.

Note 2: Some business models rely on the time spent on the target page, i.e., they see a larger part of the user interaction taking place on Google or Bing as compared to on-site as a threat to their revenues. This line is not to defend in the long run. You should challenge your business model if user interaction time is a more important source of revenue for you than more and more qualified traffic on your Web pages.

Note 3: Don't block unknown crawlers from accessing your site by default. There are many promising startups that will try to access your data to get you new customers, even if you have never heard of them before. So be gracious, as long as the crawlers observe robots.txt and crawl politely.

Will GoodRelations further increase price comparison shopping?

No, quite the contrary. GoodRelations helps companies to articulate and preserve the many dimensions of a product and service and thus makes it easier for customers to realize the true value of your products for them, instead of just looking for the lowest price from a too limited set of possible products.

I am a manufacturer of commodities. Why should I markup my product feature pages with GoodRelations?

If you are a manufacturer of commodities, you can use GoodRelations to implicitly augment the product descriptions of the thousands of retailer Web shops that offer your products for sale. This has an enormous lever, because by marking up your Web pages once, you make all the product details accessible to search engines. Based on strong identifiers (MPN, GTIN, EAN, UPC, ...), search engines and other clients can see the link and use your data to enhance the product feature data from the shop.

The potential customer will see all strengths and features of your products, not just the incomplete data from the single shop.

For more information, see

Is GoodRelations really free?

Yes. The usage of the vocabulary and the documentation is provided free of charge. The vocabulary is available under the Creative Commons Attribution 3.0 license. You are free to copy, distribute and transmit the work; to remix/adapt the work (e.g. to import the ontology and create specializations of its elements), as long as you attribute the work.

All content from this wiki and the user's guide are available under a Creative Commons Attribution-ShareAlike 3.0 license.

If you want to use the GoodRelations logo in your application, please contact mheppATcomputerDOTorg.

General support via the public mailing list and other public channels is free of charge, too.

Third parties may offer GoodRelations-related consulting for money, of course.

For more details, see

Technical Questions

What is the difference between a Web vocabulary and an ontology?

Practically spoken, they are the same and "ontology" is just a more complicated word for "Web vocabulary". Or you could say that a Web vocabulary is a fully documented, widely used, practically relevant example of an ontology.

If you have never heard the word "ontology" before, simply skip this question. It's not really needed to understand the power of GoodRelations and marketing with structured data over the Web.

What is the difference between GoodRelations and XML-based e-business standards?

XML-based e-business standards require a previous agreement between the publisher and the consumer and are thus not suited for the early stages of a business transaction, e.g. search for new suppliers. In practice, XML-based data interchange works well only between business parties

  1. who know each other and
  2. who do a minimum amount of business with each other.

Also, XML standards are often conceptually bound to a single vertical industry. 

What is the difference between GoodRelations and feed formats for price comparison services?

See here for more details.

Where can I find a free SPARQL endpoint with all GoodRelations data from the Web?

There is currently no "Google-like" RDF repository that offers you free access to the whole Web via a convenient SPARQL endpoint.

Some public SPARQL endpoints offer a moderate amount of such data, see

If this does not meet the needs for your application, you will have to crawl and cleanse the data yourself, e.g. from

Crawling, cleansing, and consolidating structured data at Web scale is a non-trivial task, so do not expect someone else to do it for you for free. It may be a good business idea to offer such a service.

Can I use GoodRelations in RDFa syntax with HTML5 and HTML 4.x markup?

Yes, no problem. RDFa does not depend on XHTML. See

What kind of reasoning is required for GoodRelations?

GoodRelations is an OWL 1 DL compliant Web ontology, but it does not critically depend on any reasoning support at the client side. Having support for a subset of RDFS-style reasoning is useful yet not mandatory. In practice, your repository should support

  • rdfs:subClassOf (transitive)
  • rdfs:subPropertyOf (transitive)

Ideally, you would also have support for

  • owl:equivalentClass
  • owl:equivalentProperty
  • owl:sameAs

There are also useful rules for handling GoodRelations data that require non-standard reasoning, but they can be easily implemented as SPARQL CONSTRUCT rules.