freecourses.digital
Lesson progress: 0 of 3 activities done
All lessons in Technical SEO Auditing Lesson 9.3 of 84

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:

TemplateExpected typesFoundCoverage
HomepageOrganization, WebSiteOrganizationMissing WebSite
Property pagesHotel, BreadcrumbListHotel on 3 of 933%
Blog postsArticle, BreadcrumbListArticle, BreadcrumbList100%

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

  • BreadcrumbList on all category and product pages

  • No Organization or LocalBusiness anywhere

  • No Product markup on the About page

  • Article markup only in a rendered crawl, not text-only

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.
1. Why build a schema map by template?
2. Why might a text-only crawl show no markup?
3. Where does Search Console report detected rich result types?

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.