Structured data
What is structured data?
Structured data is code added to a page in a standard format that describes its content in a way machines can read: this is a product with this price, this is an article by this author. Search engines use it to understand content and to show rich results such as review stars and product prices.
Most structured data on the web uses the schema.org vocabulary, which defines types (Product, Article, Recipe, Event, Organization, LocalBusiness, BreadcrumbList) and their properties (name, price, author, datePublished). Google, Bing and other engines all read it.
The vocabulary can be written in three formats: JSON-LD, a block of JSON in a script tag; Microdata, attributes added to existing HTML elements; and RDFa, a similar attribute-based syntax. Google supports all three and recommends JSON-LD because it is the easiest to add and maintain without touching the visible HTML.
Structured data must describe what is actually on the page. Marking up reviews that are not shown, prices that differ from the visible price, or content hidden from users breaks Google’s structured data guidelines, and structured data spam can earn a manual action that removes rich results.
Google lists which types it supports for rich results, with required and recommended properties for each, in its Search Gallery. That list changes. Google has retired several types over the years, such as HowTo results in 2023, and the same year limited FAQ rich results to a small set of well-known government and health sites. Check the current documentation before you invest in a type.
Why structured data matters for SEO
Structured data is not a direct ranking factor. Google has said so repeatedly. What it does is make pages eligible for rich results, which take up more space and can lift click-through rate. Eligibility is not a guarantee; Google decides when to show them.
It also helps search engines understand entities: who the organisation is, which product a page sells, who wrote an article. That understanding feeds features such as the knowledge panel and helps machines, including AI systems that read the web, interpret your pages accurately.
For ecommerce, Product markup with offers is what feeds price, availability and review stars in results and in Google’s shopping surfaces. For local businesses, LocalBusiness schema supports what Google knows from your Business Profile.
How to add structured data
- Pick the types that match your pages and that Google supports: Product for product pages, Article for news and blog posts, BreadcrumbList for breadcrumbs, Organization for your homepage, LocalBusiness for location pages, Event, Recipe, JobPosting and so on.
- Read Google’s documentation for each type and note the required and recommended properties.
- Write the markup in JSON-LD and add it to the page’s HTML, ideally from your templates so it updates with the content. Google can also read JSON-LD that is injected with JavaScript, but server-rendered markup is more reliable.
- Mark up only content that is visible on the page, and keep the values identical to what users see.
- Test each template in Google’s Rich Results Test, which shows which rich results the page is eligible for and any errors. Use the Schema Markup Validator (validator.schema.org) to check general schema.org validity.
- After launch, watch the rich result reports in Google Search Console for errors and warnings across the whole site.
Structured data example
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "How to write a robots.txt file",
"datePublished": "2026-09-14T09:00:00+01:00",
"dateModified": "2026-10-01T10:30:00+01:00",
"image": ["https://www.example.com/images/robots-txt-guide.png"],
"author": {
"@type": "Person",
"name": "Jane Doe",
"url": "https://www.example.com/authors/jane-doe"
},
"publisher": {
"@type": "Organization",
"name": "Example",
"logo": "https://www.example.com/logo.png"
}
}
</script>Structured data FAQ
Is structured data a ranking factor?
No. Google has said structured data does not directly improve rankings. It makes pages eligible for rich results and helps Google understand them, which can improve click-through rate.
What is the difference between structured data and schema markup?
Structured data is the general idea of describing content in a machine-readable format. Schema markup is structured data that uses the schema.org vocabulary, which is what nearly every site uses.
Why is my structured data not showing rich results?
Valid markup only makes a page eligible. Google may not show rich results because of query type, page quality, missing required properties, or because the type is restricted or no longer supported. Check the Rich Results Test and Search Console reports.
How do I test structured data?
Use Google’s Rich Results Test for Google eligibility and the Schema Markup Validator at validator.schema.org for general schema.org validity. Search Console’s enhancement reports show issues site-wide.
Related SEO terms
Schema markup is structured data that uses the schema.org vocabulary to describe things on a page, such as products, articles and businesses.
JSON-LD is a JSON-based format for structured data, placed in a script tag. It is the format Google recommends for schema markup.
Rich results are Google search results with extra visual features, such as star ratings, prices or event dates, usually powered by structured data.
Rich snippets are search results enhanced with extra details, such as review stars, prices or cooking times, usually from structured data.
Structured data spamBlack hat
Structured data spam is schema markup that misleads, such as fake review stars or markup for content not on the page, to win rich results.
An entity is a distinct, identifiable thing, such as a person, place, organisation or product, that search engines and AI models recognise.
The Knowledge Graph is Google’s database of entities and the facts and relationships between them, used to power knowledge panels and answers.