[[{"@type":["BlogPosting"],"@id":"https:\/\/www.schemaapp.com\/schema-markup\/strange-behaviors-in-googles-structured-data-testing-tool\/#BlogPosting","@context":{"@vocab":"http:\/\/schema.org\/","kg":"http:\/\/g.co\/kg"},"url":"https:\/\/www.schemaapp.com\/schema-markup\/strange-behaviors-in-googles-structured-data-testing-tool\/","inLanguage":[{"@type":"Language","@id":"https:\/\/www.schemaapp.com\/schema-markup\/strange-behaviors-in-googles-structured-data-testing-tool\/#BlogPosting_inLanguage_Language","name":"English"}],"audience":"https:\/\/schema.org\/PeopleAudience","publisher":[{"@id":"https:\/\/www.schemaapp.com\/#Organization"}],"mentions":[{"@id":"https:\/\/www.schemaapp.com\/entity#Thing6"}],"name":"Strange Behaviors in Google\u2019s Structured Data Testing Tool","articleBody":"Multiple Product Markup On Page\nIntroduction & Thesis\nI\u2019ve spent a good part of the past month looking closely at the product markup on pages and experimenting, when I came across something interesting with Google\u2019s Structured Data Testing Tool, which has officially been replaced by the Schema Markup Validator. Namely, when you have multiple products marked up on a page, I was not able to achieve a preview within the Structured Data Testing Tool. However, if you remove all but one of these Product instances, you will receive a preview in the Structured Data Testing Tool.\nThe following example contains both micro-data and JSON-LD product markup with no preview showing.\n\n\nAfter removing the micro-data, the preview button will appear as follows:\n<img decoding=\"async\" class=\"alignnone wp-image-7106 size-full\" src=\"https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/MultipleProductMarkupPreview.png?strip=all&lossy=1&resize=916%2C173&ssl=1\" alt=\"After removing the micro-data, the preview button will appear as follows:\" width=\"916\" height=\"173\" srcset=\"https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/MultipleProductMarkupPreview.png?strip=all&amp;lossy=1&amp;ssl=1 916w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/MultipleProductMarkupPreview-300x57.png?strip=all&amp;lossy=1&amp;ssl=1 300w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/MultipleProductMarkupPreview-768x145.png?strip=all&amp;lossy=1&amp;ssl=1 768w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/MultipleProductMarkupPreview-100x19.png?strip=all&amp;lossy=1&amp;ssl=1 100w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/MultipleProductMarkupPreview-600x113.png?strip=all&amp;lossy=1&amp;ssl=1 600w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/MultipleProductMarkupPreview-200x38.png?strip=all&amp;lossy=1&amp;ssl=1 200w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/MultipleProductMarkupPreview-30x6.png?strip=all&amp;lossy=1&amp;ssl=1 30w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/MultipleProductMarkupPreview.png?strip=all&amp;lossy=1&amp;w=456&amp;ssl=1 456w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/MultipleProductMarkupPreview.png?strip=all&amp;lossy=1&amp;w=684&amp;ssl=1 684w\" sizes=\"(max-width: 916px) 100vw, 916px\" \/>\nThe next question that arose from this was, if I don\u2019t get a preview with multiple products, do I get rewarded with a rich result if I have more than one product on the page. For awhile during my experiment it seemed that this was the case, however after a number of attempts I was able to view a rich result for a page with multiple product markup that did not show the preview in the Structured Data Testing Tool. \nAssumption\nAt this point my assumption is that you are more likely to achieve a rich result when there is only on Product instance in the markup and the preview is showing in the Structured Data Testing Tool, however it is possible to achieve a rich result for pages with multiple products marked up.\nHypothesis & Next Steps\nNext, I sought to investigate what made this product page different from those that were not achieving the rich result. I began to hypothesize that the sites achieving the rich result were reaching a certain higher threshold of traffic, than those not receiving the rich result. At this point, we do not have a data set with a significant time period or a suitable method to test this, however this will inform the next steps in our research. If you have seen similar behavior in Google\u2019s Structured Data Testing Tool or have further insight, we would love to hear from you!\nOfferCatalog with Greater Than 20 Offers\nIn another product related instance, we had seen an aggregateRating rich result disappear when the offerCatalog size exceeded 20 Offers. This could be a bug, or it could be intended to limit the amount of offers on a single page. To circumvent this, we limited the markup to 20 Offers for each offerCatalog, which ensured that the rich result was still being achieved.\nMultiple hops issues\nWith Schema App we attempt to decrease the amount of code being injected into the page by limiting the markup to stop showing connected data items more than three \u201chops\u201d from the original primary entity. These hops occur as you move from a certain Class to another, connected by a property. The pattern when connecting data items across your graph and from page to page would be as follows:\nClass > Property > Class > Property\nThis would always end on a property, and each level from Class to Class, would be the \u201chops\u201d I had referred to earlier.\nThe next question might be, well if the advantage of Schema Markup is that I can connect my content and provide context to search engines and other technologies, then why would I want the code cut off? As you might have guessed, the process of connected Classes together can result in long code and the data items connected multiple hops down might be less relevant to the current page being marked up. Thus, we cut this off for maintainability. In addition, there is a practical benefit in that this creates simpler and more clear connections for a crawler to interpret. However, these additional connection are not lost.\nAnother part of how we condense or cut off markup has to do with the Uniform Resource Indicator (URI) for the data item. This can be seen in Schema App in the bottom left of the Editor window, beside \u201cselected resource:\u201d as seen here:\n<img decoding=\"async\" class=\"alignnone wp-image-7107 size-full\" src=\"https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI.png?strip=all&lossy=1&resize=1127%2C725&ssl=1\" alt=\"Uniform Resource Indicator (URI) for the data item\" width=\"1127\" height=\"725\" srcset=\"https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI.png?strip=all&amp;lossy=1&amp;ssl=1 1127w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI-300x193.png?strip=all&amp;lossy=1&amp;ssl=1 300w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI-768x494.png?strip=all&amp;lossy=1&amp;ssl=1 768w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI-1024x659.png?strip=all&amp;lossy=1&amp;ssl=1 1024w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI-100x64.png?strip=all&amp;lossy=1&amp;ssl=1 100w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI-600x386.png?strip=all&amp;lossy=1&amp;ssl=1 600w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI-200x129.png?strip=all&amp;lossy=1&amp;ssl=1 200w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI-30x19.png?strip=all&amp;lossy=1&amp;ssl=1 30w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI.png?strip=all&amp;lossy=1&amp;w=456&amp;ssl=1 456w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI.png?strip=all&amp;lossy=1&amp;w=684&amp;ssl=1 684w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/URI.png?strip=all&amp;lossy=1&amp;w=912&amp;ssl=1 912w\" sizes=\"(max-width: 1127px) 100vw, 1127px\" \/>\nWe use the URI to create an @id so that any technology that crawls through the markup can follow the @id to find the full set of markup. The Structured Data Testing Tool doesn\u2019t crawl page to page, rather it loads a single page. This is a limitation of the testing tool and brings us to our next issue.\nTesting Nested Schema Markup Against Expected Rich Result\nIn some cases we have noticed behaviours of the Structured Data Testing Tool when showing results for certain nested Schema Classes that were tied to rich results. Specifically, the Structured Data Testing Tool was firing errors for a Person with a hasOccupation property connecting an Occupation class, as it was testing against its expectations for the Occupation rich result as it is mentioned in Google\u2019s Structured Data Documentation. While the primary entity on the page was a person, the Structured Data Testing Tool validates the connected Occupation data item and show errors for any missing fields. In combination with the way in which Schema App shortens the code after a certain amount of \u201chops\u201d this results in Occupation properties that are not being displayed from the Person top level entity.\nThus, the markup could be correct in terms of what is included in Schema App, however the Structured Data Testing Tool can show errors as it runs tests on connected data items and does not continue to follow the @id.\nBlog Article Preview\nWe also noticed a similar quirk with the Blog Posting markup in Google\u2019s Structured Data Testing Tool. The preview button will not show if there is no amp html link in the code. With the amp link included, you will likely see a preview button that links to results similar to the following example:\n<img decoding=\"async\" class=\"alignnone wp-image-7109 size-full\" src=\"https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/BlogPosting-Amp-Rich-Result-1.png?strip=all&lossy=1&resize=672%2C408&ssl=1\" alt=\"Blog Article Preview\" width=\"672\" height=\"408\" srcset=\"https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/BlogPosting-Amp-Rich-Result-1.png?strip=all&amp;lossy=1&amp;ssl=1 672w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/BlogPosting-Amp-Rich-Result-1-300x182.png?strip=all&amp;lossy=1&amp;ssl=1 300w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/BlogPosting-Amp-Rich-Result-1-100x61.png?strip=all&amp;lossy=1&amp;ssl=1 100w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/BlogPosting-Amp-Rich-Result-1-600x364.png?strip=all&amp;lossy=1&amp;ssl=1 600w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/BlogPosting-Amp-Rich-Result-1-200x121.png?strip=all&amp;lossy=1&amp;ssl=1 200w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/BlogPosting-Amp-Rich-Result-1-30x18.png?strip=all&amp;lossy=1&amp;ssl=1 30w, https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2018\/12\/BlogPosting-Amp-Rich-Result-1.png?strip=all&amp;lossy=1&amp;w=456&amp;ssl=1 456w\" sizes=\"(max-width: 672px) 100vw, 672px\" \/>\n\nAdditionally, if you notice in the right corner there is a small amp lightning icon for these results. Without the amp link in the html, these previews will not show and it is very likely that the page is not eligible for these type of rich results. To ensure you achieve these rich results, be sure to set up your site with accelerated mobile pages (AMP).\nWe love using insights from the Structured Data Testing Tool to inform content strategy. Instead of seeing errors negatively, take them as opportunities to make your schema markup more robust. Set up a call with our technical experts to get started!\nStart reaching your online business goals with structured data.Let\u2019s Talk\n ","datePublished":"2018-12-12T21:01:54+00:00","mainEntityOfPage":"https:\/\/www.schemaapp.com\/schema-markup\/strange-behaviors-in-googles-structured-data-testing-tool\/","image":[{"@type":"ImageObject","@id":"https:\/\/www.schemaapp.com\/schema-markup\/strange-behaviors-in-googles-structured-data-testing-tool\/#BlogPosting_image_ImageObject","url":"https:\/\/www.schemaapp.com\/wp-content\/uploads\/2019\/11\/Strange-Behaviors-in-Googles-Structured-Data-Testing-Tool.png"}],"description":"When you have multiple products marked up on a page, you may not achieve a preview within the Structured Data Testing Tool.","dateModified":"2022-09-02T14:58:52+00:00","headline":"Strange Behaviors in Google\u2019s Structured Data Testing Tool"},{"@context":"http:\/\/schema.org","@type":"Organization","address":{"@type":"PostalAddress","streetAddress":"201 - 412 Laird Road","postalCode":"N1G 3X7","addressRegion":"Ontario","addressLocality":"Guelph","addressCountry":"https:\/\/www.schemaapp.com\/#Country","name":"Schema App Address","@id":"https:\/\/www.schemaapp.com\/#PostalAddress"},"logo":{"@type":"ImageObject","width":"290","height":"93","url":"https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2020\/07\/SA_Logo_Main_Orange_w300-1.png?strip=all&lossy=1&ssl=1","@id":"https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2020\/07\/SA_Logo_Main_Orange_w300-1.png?strip=all&lossy=1&ssl=1"},"potentialAction":{"@type":"ScheduleAction","name":"Schedule a Demo","url":"https:\/\/www.schemaapp.com\/book-a-demo\/","@id":"https:\/\/www.schemaapp.com\/#ScheduleAction"},"image":{"@type":"ImageObject","width":"1350","height":"650","url":"https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2021\/04\/Schema-App-Featured-Image.png?strip=all&lossy=1&ssl=1","@id":"https:\/\/ezk8caoodod.exactdn.com\/wp-content\/uploads\/2021\/04\/Schema-App-Featured-Image.png?strip=all&lossy=1&ssl=1"},"description":"Schema App is an end-to-end Schema Markup solution that helps enterprise SEO teams develop a knowledge graph and drive search performance.","knowsAbout":["http:\/\/www.wikidata.org\/entity\/Q1891170","https:\/\/www.wikidata.org\/wiki\/Q6108942","https:\/\/www.wikidata.org\/wiki\/Q26813700","https:\/\/www.wikidata.org\/wiki\/Q180711","http:\/\/www.wikidata.org\/entity\/Q33002955"],"keywords":["Structured Data","Knowledge Graph","Rich Results","Semantic Search","Search Engine Optimization","Schema Markup","Semantic Technology"],"location":"http:\/\/www.wikidata.org\/entity\/Q504114","sameAs":["https:\/\/www.instagram.com\/lifeatschemaapp\/","https:\/\/www.linkedin.com\/company\/2480720\/","https:\/\/twitter.com\/schemaapptool","https:\/\/www.youtube.com\/channel\/UCqVBXnwZ3YNf2BVP1jXcp6Q"],"legalName":"Hunch Manifest Inc","name":"Schema App","telephone":"+18554448624","url":"https:\/\/www.schemaapp.com\/","email":"support@schemaapp.com","knowsLanguage":"http:\/\/www.wikidata.org\/entity\/Q1860","areaServed":"http:\/\/www.wikidata.org\/entity\/Q13780930","@id":"https:\/\/www.schemaapp.com\/#Organization"},{"@context":"http:\/\/schema.org","@type":"Thing","name":"Structured Data","sameAs":["kg:\/m\/05p2j70","http:\/\/www.wikidata.org\/entity\/Q26813700","https:\/\/en.wikipedia.org\/wiki\/Structured_data"],"description":"information with a formal data model","alternateName":"Schema Markup","@id":"https:\/\/www.schemaapp.com\/entity#Thing6"}],{"@context":"https:\/\/schema.org\/","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Schema Markup","item":"https:\/\/www.schemaapp.com\/schema-markup\/#breadcrumbitem"},{"@type":"ListItem","position":2,"name":"Strange Behaviors in Google’s Structured Data Testing Tool","item":"https:\/\/www.schemaapp.com\/schema-markup\/strange-behaviors-in-googles-structured-data-testing-tool\/#breadcrumbitem"}]}]