DEV Community

Cover image for Schema.org: train your SEO specialist
Iso Feldmann
Iso Feldmann

Posted on

Schema.org: train your SEO specialist

Whenever schema.org is to be used on a website, more detailed information about the implementation should be specified. Typically, schema.org is requested by SEOs, Product Owners, or website operators. Below is an overview of the information that should be provided by them.

The prio of schema.org

schema.org defines standardized data structures that can be used on websites. One example is schema.org markup on product pages, which represents information such as product name, price, rating, etc., in HTML so that search engines and web services can easily interpret this data. In the documentation of search engines like Google or Bing, there are entire lists of supported schema.org markups, and it is possible to achieve so-called rich snippets in search results, such as highlighted search results, e.g., star ratings for products.

Search features can highlight your content in search results and often lead to higher click-through rates. Therefore, schema.org implementations are of great interest to website operators and SEOs who are responsible for the performance of websites in search.

Roles coming together

SEOs and Product Owners should have already considered the relevance of implementing schema.org. The following questions should be addressed:

  • Does the schema.org markup fit the information we provide on the webpages?
  • Do we have the information required for the schema.org markup available for the website? (Frontend or Backend)
  • Does the schema.org markup have an impact on search? Many markups are possible, but only a few can trigger search features.
  • What is the business impact and priority of the markup?
  • Are the search features already available in the markets that are relevant to us? If some schema.org types emerge from the evaluation, a specification document should be created. This document will guide the implementation process. We assume here that we do not have an out-of-the-box solution such as a WordPress plugin, etc.

The following information is suggested to be included in the schema.org specification:

  1. An overview of the desired implementations (types and pages)
  2. For each implementation: Which page types or contents should be marked up? (Including which languages and markets, if the website has multiple)
  3. Documentation references from search engines and the date of the last update of the corresponding pages, e.g., Product (Last updated 2024-10-31 UTC.)
  4. Valid implementation examples for existing webpages
  5. Indication of which variables can be used (sometimes only one value is allowed based on a closed list) and which are required
  6. Format of the values (e.g., how a date should be formatted)
  7. Possible cases (For products, for example, whether the product is available or not)
  8. Type of implementation – JSON-LD, RDFa, or Microdata
  9. Testing tools (rich results test, schema.org validator, others)

Example: Product

A product page on zurrose.ch (online pharmacy, Switzerland)

The variables are highlighted with comments:
//T: Textstring variables
//E: Enumerations; variables with a finite number of possible values
//N: Numeric values
(In a document, colors could be helpful instead)

Please have this implemented according to the example on all product pages in all languages for products that are prescription only and in stock.

{
  "@context": "https://schema.org",
  "@type": "Drug",
  "name": "Dafalgan Brausetabl 500 mg 40 Stk", //T
  "image": "https://www.zurrose.ch/images/dafalgan-500mg-40stk.jpg", //T
  "prescriptionStatus": "PrescriptionOnly", //E
  "manufacturer": {
    "@type": "Organization",
    "name": "Dafalgan AG" //T
  },
  "offers": {
    "@type": "Offer",
    "price": 12.65, //N
    "priceCurrency": "CHF", //E
    "priceValidUntil": "2025-12-31", //N
    "availability": "InStock", //E
    "url": "https://www.zurrose.ch/de/medikamente/dafalgan-brausetabl-500-mg-40-stk" //T
  }
}

Enter fullscreen mode Exit fullscreen mode
Enum Variables and Possible Values:
prescriptionStatus: PrescriptionOnly, OverTheCounter, Compounded
priceCurrency: Any 3-digit currency code according to ISO-4217
Availability: InStock, OutOfStock, PreOrder, PreSale, Discontinued
Enter fullscreen mode Exit fullscreen mode

This example illustrates only one case (available product) of a single implementation (Product). The complete specification document could consist of a variety of such examples.

Conclusion

To ensure that the implementation of schema.org is as targeted and smooth as possible, some initial considerations should be made. It has been shown how SEOs, POs, or website operators can help effectively brief schema.org implementations.

Top comments (0)