Skip to main content

Structured Data & Rich Results

Structured data (schema markup) helps search engines understand the content and context of your pages. It enables rich results in SERPs — enhanced displays that can improve CTR and visibility.

Schema markup connects your content to a knowledge graph of entity types and their relationships.

Learning Focus

After this lesson you can implement and validate Organization, Article, Product, Breadcrumb, FAQ, and LocalBusiness schema, then verify rich result eligibility in Google Search Console.

This lesson covers the eight schema areas (leaves 3.8.1–3.8.8): Organization schema, Article schema, Product schema, Breadcrumb schema, FAQ schema, LocalBusiness schema, schema validation, and rich result eligibility review.

Why This Matters

Core Concept
  • Rich results (review stars, product prices, breadcrumbs, events) stand out in SERPs, improving visibility and CTR.
  • Structured data helps search engines understand your content more accurately, which may improve relevance signals (not a direct ranking factor, but supports entity understanding). Structured data enables rich results and entity recognition but does not directly improve rankings.
  • Schema markup enables eligibility for emerging features (Google AI Overviews may use structured data for citations).

Organization Schema

Organization schema provides Google with structured information about your business entity.

Properties marked as Schema.org are defined by the Schema.org specification. Properties marked as Google are recommended for specific rich result eligibility. Google currently has no required properties for Organization — all properties are recommended for completeness.

Organization properties:

PropertyRequirementDescriptionExample
nameSchema.orgOrganization name"Acme Corporation"
urlGoogle (recommended)Official website URL"https://www.acme.com"
logoGoogle (recommended)URL to the organization's logo"https://www.acme.com/logo.png"

Recommended properties:

PropertyPurpose
sameAsLinks to official social profiles (Facebook, LinkedIn, Twitter/X, Instagram, YouTube, Wikipedia)
descriptionBrief description of the organization
contactPointContact information (phone, email)
addressPhysical address (for businesses with a physical location)
foundingDateYear founded
numberOfEmployeesEmployee count (for larger organizations)

Organization schema implementation:

organization-schema.json
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Example Corp",
"url": "https://www.example.com",
"logo": "https://www.example.com/logo.png",
"sameAs": [
"https://www.facebook.com/examplecorp",
"https://www.linkedin.com/company/examplecorp",
"https://twitter.com/examplecorp"
],
"contactPoint": {
"@type": "ContactPoint",
"telephone": "+1-800-555-0199",
"contactType": "customer service"
}
}

Article Schema

Article schema (and its subtypes NewsArticle, BlogPosting) provides structured information about article content.

Properties marked as Schema.org are mandated by specification. Properties marked as Google are required for Article rich result eligibility (Top Stories, AMP). Properties marked as Recommended are optional.

Required properties:

PropertyRequirementDescription
headlineSchema.orgThe article title
datePublishedSchema.orgPublication date in ISO 8601 format
authorSchema.org (at minimum author.name)Author information (Person or Organization)
imageGoogle (for rich results)Article featured image URL — required for Top Stories and AMP article rich results
dateModifiedGoogle (for rich results)Last modification date in ISO 8601
publisherGoogle (for AMP/Top Stories)Publishing organization with name and logo — required for certain rich result types

Recommended properties:

PropertyPurpose
descriptionArticle excerpt or description
mainEntityOfPageCanonical URL of the article
wordCountArticle word count

Article schema note for AMP: If using AMP with Article schema, ensure properties follow AMP requirements. For standard pages, JSON-LD format is sufficient.

Product Schema

Product schema provides detailed product information for rich results and Google Shopping.

Properties marked as Schema.org are mandated by specification. Properties marked as Google are required for Product rich result eligibility (product snippets in SERPs). Properties marked as Recommended are optional.

Required properties:

PropertyRequirementDescription
nameSchema.orgProduct name
offersGoogle (for rich results)Offer details including price and availability
imageGoogle (for rich results)Product image URL — required for Product rich results

Offer sub-properties (within offers):

PropertyRequirementDescription
priceGoogle (for rich results)Product price — required for Product rich results
priceCurrencyGoogle (for rich results)Currency code (ISO 4217) — required for Product rich results
availabilityGoogle (for rich results)https://schema.org/InStock or https://schema.org/OutOfStock — required for Product rich results
urlGoogle (recommended)Direct product URL
itemConditionGoogle (recommended)NewCondition, UsedCondition, RefurbishedCondition

Recommended properties:

PropertyPurpose
descriptionProduct description
brandBrand name
aggregateRatingProduct rating (if reviews available)
reviewProduct review
skuStock keeping unit
gtinGlobal Trade Item Number (GTIN-8, GTIN-12, GTIN-13, GTIN-14)
mpnManufacturer part number

Product schema implementation:

product-schema.json
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Widget Pro 2000",
"description": "A high-quality widget for professional use.",
"image": "https://www.example.com/widget-pro-2000.jpg",
"brand": {"@type": "Brand", "name": "ExampleBrand"},
"offers": {
"@type": "Offer",
"price": "199.99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://www.example.com/widget-pro-2000"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.5",
"reviewCount": "120"
}
}

Breadcrumb Schema

BreadcrumbList schema generates breadcrumb rich results in SERPs, showing users where a page sits in the site hierarchy.

Implementation:

breadcrumb-schema.json
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://www.example.com"
},
{
"@type": "ListItem",
"position": 2,
"name": "Products",
"item": "https://www.example.com/products"
},
{
"@type": "ListItem",
"position": 3,
"name": "Widgets",
"item": "https://www.example.com/products/widgets"
}
]
}

Breadcrumb schema notes:

  • item is optional for the last breadcrumb (the current page).
  • Use absolute URLs for item.
  • Maintain breadcrumb order from homepage to current page.
  • Breadcrumb schema works independently of UI breadcrumbs — but they should match.

FAQ Schema

Important — As of May 2026, Google fully deprecated FAQ rich results. FAQPage schema no longer produces any rich result in Google Search, including for government and health sites. The FAQ rich result documentation has been removed. FAQPage markup can still be used for non-Google purposes (voice assistants, internal knowledge tools), but it will not generate a SERP enhancement.

FAQ schema provides structured Q&A markup for pages with frequently asked questions.

Current status:

AspectDetail
Rich result eligibilityFully deprecated as of May 2026 — no sites qualify
GSC Enhancement reportRemoved
Schema.org supportFAQPage type still valid in the Schema.org vocabulary
Non-Google use casesVoice assistants, internal knowledge tools, AI/LLM content extraction

Implementation (if used for non-Google purposes):

faq-schema.json
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is your return policy?",
"acceptedAnswer": {
"@type": "Answer",
"text": "We accept returns within 30 days of delivery."
}
},
{
"@type": "Question",
"name": "Do you ship internationally?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes, we ship to over 50 countries worldwide."
}
}
]
}

When to use FAQ schema:

  • Only for non-Google purposes (voice assistant integration, knowledge graph enrichment, LLM content extraction).
  • FAQPage schema will not generate rich results in Google Search as of May 2026.
  • No Google-specific eligibility requirements apply since no rich result is available.

LocalBusiness Schema

LocalBusiness schema (and subtypes: Restaurant, Dentist, Store, etc.) provides location-specific business information.

Properties marked as Schema.org are mandated by specification. Properties marked as Google are required for Local Business rich result eligibility. Properties marked as Recommended are optional.

Required properties:

PropertyRequirementDescription
nameSchema.orgBusiness name
addressSchema.org + GooglePhysical address (PostalAddress) — required by both
telephoneSchema.org + GoogleBusiness phone number — required by both

Recommended properties:

PropertyPurpose
geoLatitude and longitude coordinates
openingHoursSpecificationBusiness hours
priceRangePrice indicator ($, $$, $$$)
imageBusiness photos
urlBusiness website
aggregateRatingCustomer rating
sameAsSocial profiles
PropertyPurpose
geoLatitude and longitude coordinates
openingHoursSpecificationBusiness hours
priceRangePrice indicator ($, $$, $$$)
imageBusiness photos
urlBusiness website
aggregateRatingCustomer rating
sameAsSocial profiles

Multi-location implementation:

For businesses with multiple locations, each location gets its own LocalBusiness schema. Use a parentOrganization property or Organization schema as a wrapper.

Schema Validation

Schema validation ensures your markup is syntactically correct, complete with required properties, and eligible for rich results.

Validation tools:

ToolPurposeBest For
Google Rich Results TestTests if a page is eligible for rich resultsRich result eligibility check
Schema Markup Validator (formerly Structured Data Testing Tool)Validates schema syntax and property correctnessFull schema validation
GSC Enhancements reportsShows schema validation status for indexed pagesOngoing monitoring
Schema.org validatorValidates against schema.org vocabularyTechnical schema validation

Validation workflow:

  1. Test a sample page in the Rich Results Test.
  2. Check for errors (required properties missing, incorrect types) and warnings (recommended properties missing).
  3. Fix errors and re-test.
  4. Deploy to production.
  5. Monitor GSC Enhancements reports for validation issues.

Common validation errors:

ErrorCauseFix
Missing required propertyRequired field not presentAdd the required property
Incorrect property typeValue format does not match expected typeCheck schema.org definition for correct type
Unrecognized propertyProperty name is misspelled or not part of the schema typeUse correct vocabulary from schema.org
Missing or invalid URLURL is relative, malformed, or returns 4xxUse absolute URL, verify URL is valid
Item not reviewedGoogle has not yet reviewed the markupWait for recrawl, or submit updated sitemap

Rich Result Eligibility Review

Not all schema types produce rich results. Eligibility review identifies which pages can qualify for enhanced SERP display.

Rich result types and schema requirements:

Rich Result TypeSchema TypeGSC Enhancement Report
Review snippetReview, AggregateRatingReview Snippet
Recipe cardRecipeN/A
ProductProductProduct
FAQFAQPageDeprecated May 2026 — no longer produces rich results
How-ToHowToDeprecated — no longer produces rich results
EventEventEvent
Job postingJobPostingJob Posting
Local businessLocalBusinessLocal Business
BreadcrumbBreadcrumbListBreadcrumbs

Eligibility checklist:

CheckQuestion
Schema type matches Google's rich result documentationIs the schema type listed in Google's rich result gallery?
All required properties are presentDoes the schema include all required properties for the rich result type?
Content is visible to usersIs the marked-up content visibly displayed on the page?
Page content matches schemaDoes the text content on the page match the values in the schema?
No prohibited practicesIs there any cloaking, invisible content, or misleading schema?

Workflow

  1. Identify schema opportunities: For each page type, determine which schema types are applicable (Product for product pages, Article for blog posts, LocalBusiness for local businesses, etc.).
  2. Implement schema: Add JSON-LD to the <head> or body of each page.
  3. Validate: Test with Rich Results Test before deployment.
  4. Deploy: Roll out schema changes to production.
  5. Monitor: Check GSC Enhancements reports regularly for validation issues.
  6. Iterate: Add new schema types as content types evolve.

Common Mistakes

warning

Adding schema markup for content not visible to users: This violates Google guidelines and can result in manual action.

  • Using schema types that do not match the page content: A blog post should not have Product schema; a product page should not have Article schema.
  • Missing required properties for rich result eligibility: Adding Product schema without price and availability will not produce product rich results.
  • Combining multiple schema types incorrectly: Use @graph or nested types properly; avoid conflicting properties.
  • Not monitoring GSC Enhancement reports: Schema errors can persist for months if not monitored.

Checklist

  • Organization schema is implemented with name, URL, logo, and sameAs.
  • Article schema is on all article/blog pages with headline, datePublished, author.
  • Product schema is on all product pages with name, image, price, availability, brand.
  • BreadcrumbList schema is on all relevant pages.
  • FAQPage schema is on pages with FAQ content (note: FAQ rich results were fully deprecated May 2026; schema still useful for non-Google purposes).
  • LocalBusiness schema is on location/city pages.
  • Schema validates in Rich Results Test with no errors.
  • GSC Enhancements reports show no errors or warnings.
  • Schema content matches visible page content.
  • Schema is consistently implemented across all relevant pages.

What's Next

References