Advanced Schema Techniques: Mastering Three Powerful Schema Types with Practical Examples

Advanced schema is often the answer to the question: “How do I get search listings to appear with rich snippets?”

Implementing advanced schema techniques on your website can significantly enhance its visibility in search engine results pages (SERPs) and improve the user experience. In this article, we’ll explore three powerful schema types: Breadcrumb Schema, FAQ Schema, and Review Schema. We’ll also provide practical examples tailored to different website types, such as ecommerce, travel, and education. Finally, we’ll mention tools that can help you create these types of schema markup.

For those new to schema markup and wanting to start from the basics, check out our detailed guide on Using Schema Markup to Improve Your Website’s SEO. This article covers the importance of schema, tools like Semrush and AIOSEO for implementation, and best practices with practical examples. It’s a comprehensive resource to help you enhance your website’s visibility and performance in search engine results.

Breadcrumb Schema

Breadcrumb schema is essential for helping search engines understand the structure of your website and providing users with an easy way to navigate. This schema type displays breadcrumb navigation in SERPs, making it easier for users to understand where a particular page fits within your site’s hierarchy.

Example for Ecommerce Websites:


    <div>{

  "@context": "https://schema.org",

  "@type": "BreadcrumbList",

  "itemListElement": [{

    "@type": "ListItem",

    "position": 1,

    "name": "Home",

    "item": "https://www.example.com"

  },{

    "@type": "ListItem",

    "position": 2,

    "name": "Electronics",

    "item": "https://www.example.com/electronics"

  },{

    "@type": "ListItem",

    "position": 3,

    "name": "Cameras",

    "item": "https://www.example.com/electronics/cameras"

  },{

    "@type": "ListItem",

    "position": 4,

    "name": "Digital Cameras",

    "item": "https://www.example.com/electronics/cameras/digital"

  }]

}</div>
    

Explanation: This example helps search engines understand the path from the home page to the “Digital Cameras” category on an ecommerce site. Use this schema to highlight popular categories and products, making it easier for users to navigate and potentially increasing sales.

Example for Travel Websites:


    <div>{

  "@context": "https://schema.org",

  "@type": "BreadcrumbList",

  "itemListElement": [{

    "@type": "ListItem",

    "position": 1,

    "name": "Home",

    "item": "https://www.example.com"

  },{

    "@type": "ListItem",

    "position": 2,

    "name": "Destinations",

    "item": "https://www.example.com/destinations"

  },{

    "@type": "ListItem",

    "position": 3,

    "name": "Europe",

    "item": "https://www.example.com/destinations/europe"

  },{

    "@type": "ListItem",

    "position": 4,

    "name": "France",

    "item": "https://www.example.com/destinations/europe/france"

  }]

}</div>
    

Explanation: This breadcrumb schema illustrates the route from the home page to the “France” destination on a travel website. It can be used to highlight key destinations, improving user navigation and enhancing the visibility of popular travel spots.

Example for Education Websites:


    <div>{

  "@context": "https://schema.org",

  "@type": "BreadcrumbList",

  "itemListElement": [{

    "@type": "ListItem",

    "position": 1,

    "name": "Home",

    "item": "https://www.example.edu"

  },{

    "@type": "ListItem",

    "position": 2,

    "name": "Courses",

    "item": "https://www.example.edu/courses"

  },{

    "@type": "ListItem",

    "position": 3,

    "name": "Computer Science",

    "item": "https://www.example.edu/courses/computer-science"

  },{

    "@type": "ListItem",

    "position": 4,

    "name": "Introduction to Programming",

    "item": "https://www.example.edu/courses/computer-science/introduction-to-programming"

  }]

}</div>
    

Explanation: This example shows the path from the home page to the “Introduction to Programming” course on an education website. It helps highlight specific courses, making it easier for prospective students to find and enroll in relevant programs.

FAQ Schema

FAQ schema is perfect for pages that have a list of frequently asked questions. By implementing this schema, search engines can display the questions and answers directly in the search results, improving your site’s visibility and providing quick answers to users.

Example for Ecommerce Websites:


    <div>{

  "@context": "https://schema.org",

  "@type": "FAQPage",

  "mainEntity": [{

    "@type": "Question",

    "name": "What is your return policy?",

    "acceptedAnswer": {

      "@type": "Answer",

      "text": "You can return any item within 30 days of purchase."

    }

  },{

    "@type": "Question",

    "name": "Do you ship internationally?",

    "acceptedAnswer": {

      "@type": "Answer",

      "text": "Yes, we ship to over 50 countries worldwide."

    }

  }]

}</div>
    

Explanation: This example helps an ecommerce site display FAQs like “What is your return policy?” and “Do you ship internationally?” directly in the search results. It provides immediate answers to common customer questions, contributing to buying decisions.

Example for Travel Websites:


    <div>{

  "@context": "https://schema.org",

  "@type": "FAQPage",

  "mainEntity": [{

    "@type": "Question",

    "name": "What is the best time to visit France?",

    "acceptedAnswer": {

      "@type": "Answer",

      "text": "The best time to visit France is during spring (April to June) or fall (September to November)."

    }

  },{

    "@type": "Question",

    "name": "Do I need a visa to travel to France?",

    "acceptedAnswer": {

      "@type": "Answer",

      "text": "It depends on your nationality. Citizens of many countries can enter France without a visa for short stays."

    }

  }]

}</div>
    

Explanation: This schema for a travel website provides answers to questions like “What is the best time to visit France?” and “Do I need a visa to travel to France?” directly in search results. It helps travelers find useful information quickly, improving engagement and user satisfaction.

Example for Education Websites:


    <div>{

  "@context": "https://schema.org",

  "@type": "FAQPage",

  "mainEntity": [{

    "@type": "Question",

    "name": "What courses are available online?",

    "acceptedAnswer": {

      "@type": "Answer",

      "text": "We offer a wide range of online courses, including computer science, business management, and more."

    }

  },{

    "@type": "Question",

    "name": "How do I apply for a course?",

    "acceptedAnswer": {

      "@type": "Answer",

      "text": "You can apply for a course through our online application portal."

    }

  }]

}</div>
    

Explanation: This example for an education website answers common questions like “What courses are available online?” and “How do I apply for a course?” in the search results. It streamlines the process for prospective students to find and apply for courses, enhancing user experience.

Review Schema

Review schema is beneficial for displaying star ratings and reviews directly in search results. This can significantly improve click-through rates by making your listing stand out. However, this type of schema can only be effectively used for products or services with very stable ratings. For items with fluctuating ratings, it’s essential to implement a dynamic solution to ensure the ratings reflect real-time data.

Example for Education Websites:


    <div>{

  "@context": "https://schema.org",

  "@type": "Course",

  "name": "Introduction to Programming",

  "aggregateRating": {

    "@type": "AggregateRating",

    "ratingValue": "4.8",

    "reviewCount": "150"

  },

  "review": [{

    "@type": "Review",

    "author": "Alice Johnson",

    "datePublished": "2023-05-10",

    "reviewBody": "A fantastic course for beginners in programming.",

    "reviewRating": {

      "@type": "Rating",

      "ratingValue": "5"

    }

  }]

}</div>
    

Explanation: This example for an education site adds review schema for an “Introduction to Programming” course, displaying a star rating (4.8 out of 5) and user reviews directly in search results. This helps attract more prospective students by showcasing the course’s high quality and positive feedback from learners.

Dynamic Schema Markup for Fluctuating Ratings

For products or services with many items where ratings frequently change, it is crucial to dynamically update the schema markup to reflect real-time ratings. 

To ensure that your schema markup automatically updates based on the information on your website, you can implement the following strategies:

  1. Dynamic Schema Markup Generation:
    • Use server-side scripting languages like PHP, Python, or Node.js to dynamically generate schema markup based on the current ratings and reviews stored in your database.
    • Fetch the latest ratings and reviews from your database and include them in the schema markup during page rendering.
  2. JavaScript-Based Updates:
    • Use JavaScript to dynamically insert schema markup into your webpage. This can be done by fetching the latest ratings and reviews from your backend via an API and then updating the schema markup accordingly.
  3. Use a Content Management System (CMS) with Schema Support:
    • If you are using a CMS like WordPress, Joomla, or Magento, you can find plugins or extensions that automatically update schema markup based on product data. Plugins like Yoast SEO for WordPress can help manage and automate schema markup.
  4. Structured Data Markup Helper Tools:
    • Use tools like Google’s Structured Data Markup Helper to create templates for your product pages that automatically pull in the latest ratings and reviews.

Here are some implementation examples:

Using PHP to Generate Dynamic Schema Markup

To dynamically generate schema markup based on the current ratings and reviews stored in your database, you can use server-side scripting languages like PHP.


    <div> "Digital Camera",

        "ratingValue" => 4.5,

        "reviewCount" => 24,

        "reviews" => [

            [

                "author" => "John Doe",

                "datePublished" => "2023-06-21",

                "reviewBody" => "This camera is excellent for beginners.",

                "reviewRating" => 5

            ],

            // Add more reviews as needed

        ]

    ];

}

// Generate schema markup

$schema = [

    "@context" => "https://schema.org",

    "@type" => "Product",

    "name" => $product['name'],

    "aggregateRating" => [

        "@type" => "AggregateRating",

        "ratingValue" => $product['ratingValue'],

        "reviewCount" => $product['reviewCount']

    ],

    "review" => array_map(function($review) {

        return [

            "@type" => "Review",

            "author" => $review['author'],

            "datePublished" => $review['datePublished'],

            "reviewBody" => $review['reviewBody'],

            "reviewRating" => [

                "@type" => "Rating",

                "ratingValue" => $review['reviewRating']

            ]

        ];

    }, $product['reviews'])

];

// Output schema markup as JSON-LD

echo '';

?></div>
    

Using JavaScript to Update Schema Markup

JavaScript can also be used to dynamically insert schema markup into your webpage by fetching the latest ratings and reviews from your backend via an API. JavaScript is not always the best option, however, as many bots will not execute it at all.


    <div></div>
    

By utilizing these dynamic methods, you can ensure that your schema markup stays current with the latest ratings and reviews, providing accurate information to search engines and users, thereby maintaining credibility and improving user engagement.

Don’t do this: put schema markup in Google Tag Manager

We’ve cleaned up schema markup from quite a few GTM instances, and even found old blog posts where folks were recommending this as a way to meet E-E-A-T standards. Do not do this if you want the markup to be read by bots (yes we do).

Tools to Help Create Schema Markup

Several tools can assist you in creating and implementing schema markup on your website:

You can learn more about tools that help you create schema markup in our “Powerful Tools to Simplify Schema Markup Implementation” article which is full of practical examples and quick guides, to help you master schema markup effortlessly.

By utilizing these advanced schema techniques and tools, you can significantly enhance your website’s visibility and user engagement, ultimately driving better results for your business.

If you have any questions or doubts about implementing Schema Markup for your website, ask a ZappyPeople expert!

author avatar
Nataliya
Nataliya Kuznetsova is a seasoned marketing consultant with nearly 20 years of experience. She helps businesses optimise their marketing strategy, refine messaging and positioning, develop and implement go-to-market strategies, and launch new products. She works closely with founders and in-house teams, organises agency collaborations, and builds marketing teams and processes from scratch.

Related Posts

Get updates from the ZappyPeople blog

Sign up here for a no-frills update when we post new content.
newsletter martech