I have a catalogue with more than 150000 (150k) unique single item pages, each with schema.org set up for titles, descriptions, images, prices etc. These pages are dynamically built through a unique ID in the URL.Unfortunately this includes out of stock items and old items where some or all content required for schema.org may be empty. This results in error flags raised in Google Webmaster Tools.What would be a better approach to tackle this catch-22?Fake schema.org Data (i.e. Set price from NULL to 0.00), which is NOT the correct price, suggesting the item is free of charge.Flag the page as noindex (which may be index'ed one day and noindex the next to be index'ed a couple of days after again)Set a 301 to another page.Set a 302 to another page.As it stands now, I have approximately 18.000 pages indexed with schema.org according to Google Webmaster Tools. I have the feeling that the less errors I receive caused by missing schema.org for already indexed pages, the faster Google lists the outstanding ones.Any ideas on what the best practice would be for such a scenario?
Structured Data for dynamic pages and Webmaster Tools
seo;google search console;microdata
Id say it typically makes sense (mainly for a good user experience) to keep pages about products that are out of stock, whether temporary or permanently. (See schema.orgs OutOfStock and Discontinued.)So when keeping these pages, what to do with your schema.org markup? First to clarify, when Google reports a schema.org error, it doesnt necessarily mean that your schema.org markup is wrong (schema.org doesnt have any required properties). It only means that your use of the markup doesnt comply with Googles own rules for displaying one of their Rich Snippets. So the worst that should happen is that Google is not showing a Rich Snippet for the particular pages.Faking data is a bad idea. If you also include the fake data visibly on the page, you are misleading your users. If you only provide it on the schema.org level (e.g., with meta/link elements, or hidden via CSS), Google might detect these contradictions. And in any case, if a Rich Snippet is shown, it would show false data. How would that be useful to anyone?So I see two solutions:If you dont have appropriate content for a schema.org property on a specific page, omit this property there. If you dont have appropriate content for all of the properties Google requires for showing a Rich Snippet, omit the schema.org markup completely for this page.Id strongly prefer the first solution. While Google might not show a Rich Snippet currently, their rules could change in the future. And dont forget about other search engines that make use of schema.org (they probably have different rules), and other consumers (like browser add-ons, aggregating websites, etc.).