Finding Structured Data Across a Website
In this lesson
- How to configure a crawl to extract structured data
- How to map schema types to page templates
- How to spot templates with missing markup
- How Search Console reports fit in
Short answer
To find structured data across a site, enable structured data extraction for JSON-LD, Microdata, and RDFa in your crawler, with JavaScript rendering if markup is injected by scripts. Export types per URL, pivot them by page template, and compare against what each template should have. Search Console's enhancement reports then show what Google detected.
Testing one page in the Rich Results Test shows that page. An audit needs every template. A Baguio hotel chain found Hotel markup on 3 of its 9 property pages, because the plugin was enabled per page and nobody remembered to switch it on for the newer ones.
Step 1: Configure the crawl
In Screaming Frog: Configuration, Spider, Extraction, tick JSON-LD, Microdata, RDFa, and Schema.org Validation and Google Rich Result Feature Validation. Use JavaScript rendering if any markup is injected by scripts.
Step 2: Export and map
Export the Structured Data tab. Add a page type column, then build a schema map:
| Template | Expected types | Found | Coverage |
|---|---|---|---|
| Homepage | Organization, WebSite | Organization | Missing WebSite |
| Property pages | Hotel, BreadcrumbList | Hotel on 3 of 9 | 33% |
| Blog posts | Article, BreadcrumbList | Article, BreadcrumbList | 100% |
Step 3: Check Search Console
Under Enhancements (and Shopping for merchants), each detected rich result type has a report with valid items, items with warnings, and invalid items. Compare counts with your crawl.
Practice: coverage gap or fine?
Sort each item into the right group.
-
Product markup on 40% of product pages
Answer: Coverage gap.
-
BreadcrumbList on all category and product pages
Answer: Fine.
-
No Organization or LocalBusiness anywhere
Answer: Coverage gap.
-
No Product markup on the About page
Answer: Fine.
-
Article markup only in a rendered crawl, not text-only
Answer: Fine.
Common mistakes
- Testing single URLs only.
- Text-only crawls on sites with injected JSON-LD.
- No expected-type list. You cannot find gaps without one.
Your action
Next, you will detect invalid and incomplete markup.
Key terms
- Structured data extraction
- A crawler setting that reads and stores all markup found on each page.
- Schema coverage
- The share of pages in a template that carry the expected markup.
- Enhancement reports
- Search Console reports for detected rich result types, such as Products, Breadcrumbs, and Review snippets.
- Schema map
- A table of templates, expected types, and found types.
Questions beginners ask
Why enable JavaScript rendering?
Many plugins and tag managers inject JSON-LD with scripts. A text-only crawl may report no markup.
Why does Search Console show fewer items than my crawl?
Search Console only reports types Google supports for rich results, and only on pages it crawled and indexed.
Should every page have markup?
Most sites benefit from Organization or LocalBusiness, WebSite, and BreadcrumbList sitewide, plus a specific type per template.
Can I extract specific property values?
Yes, with custom extraction, for example to pull every Product price and compare it with the visible price.
Related lessons
Want someone to handle SEO for your business while you learn? The team at Remar Digital can help.