Schema Markup
Why it matters
Schema markup is structured data embedded in the page's HTML. It gives search engines explicit, machine-readable information about what the page contains: an article, a product, a recipe, an event, a local business. Google uses this data to generate rich results in search — star ratings, pricing, availability, event dates.
Rich results take up more space in search results. A product listing with a star rating and price range is visually larger and more informative than a standard blue link. Click-through rates are higher for rich results. The markup that makes them possible needs to be present and valid.
A schema type that disappears can remove a product's rich snippet overnight. A schema type that changes — from Product to Article, for example, due to a CMS template change — can similarly affect what Google serves for that URL.
How we check it
We execute JavaScript in the rendered page to extract all <script type="application/ld+json"> blocks and parse the @type values from each. We record the complete set of types found: Article, Product, BreadcrumbList, LocalBusiness, and so on.
If the set of types changes between crawls, we flag it with before/after values. We track type presence on every crawl — a disappearing or changing type is the most common and damaging issue.
What to watch for
Schema disappearing entirely on a product page usually indicates a JavaScript rendering failure or a CMS update that stripped the schema block from the template. Check that the page is rendering fully and that the JSON-LD blocks are present in the DOM.
For detailed schema validation — checking the contents of each block, not just the type — use Google's Rich Results Test or Schema.org validator. Coffeepot catches presence changes; those tools validate correctness.