This document is
gsc-structured-data-overview.md's pure Chinese version, content is generated from the original version.The original version is the single source of truth, please modify the original version for changes; this version is regenerated along with the original.Original text retained: schema.org type names (Article / Product, etc.), JSON-LD field names (headline/imageetc.), Google tool names (Search Console / Rich Results Test, etc.), technical abbreviations (JSON-LD / GTM / URL, etc.).In one sentence: Structured Data (SD for short) = adding schema.org tags to web pages,to explicitly tell Google what the content of this page is(ingredients in a recipe / article author / product price, etc.) → triggers rich results.Google supports a total of 34 types, this wiki is the entry point + key pitfalls for each type. For specific field tables, see search-gallery official documentation.
TL;DR (read in one minute) — 7 core decisions
| Decision | Answer |
|---|---|
| Which format to use? | JSON-LD(recommended), placed in <script type="application/ld+json">, placing it in <head> or <body>both work |
| Can Microdata / RDFa still be used? | Yes, but prone to errors, JSON-LD is the easiest to maintain |
data-vocabulary.org Can still be used? |
No, deprecated in 2020 |
| Will marking SD definitely show rich results? | Not necessarily, marking only means "eligible to participate", whether to display is ultimately decided by Google's algorithm |
| Are more fields always better? | No,"fewer but accurate" > "more but wrong". Complete + accurate > fully listed but broken |
| What to use for testing? | Rich Results Test(Google-specific) / Schema Markup Validator(general schema.org validation) |
| Can invisible content be marked? | ❌ No — it must be consistent with the visible content on the page, otherwise it will be considered spam |
Part 1 — Framework: How to use structured data
1.1 Why use it
Data from some case studies:
- Rotten Tomatoes: Adding SD to 100,000 pages → click-through rate (CTR) +25%
- Food Network: Adding SD to 80% of pages → traffic +35%
- Rakuten: User dwell time on pages with SD is 1.5 times, AMP+SD has3.6 times times the engagement
- Nestlé: CTR of pages showing rich results is+82%
1.2 How to choose among the 3 formats
| Format | Advantages | Disadvantages | When to use |
|---|---|---|---|
| JSON-LD ⭐ | <script> Independent block, not mixed with visible HTML / supports dynamic JS injection / easy to write even with deep nesting |
Decoupled from visible HTML,prone to desynchronization | First choice |
| Microdata | Tightly coupled with visible HTML | Engineering-heavy / high error rate | For legacy site maintenance |
| RDFa | HTML5 extension / supports linked data | Complex | For experienced users |
1.3 5 quality guidelines ⭐⭐⭐
A. Content
- Comply with the spam policy
- Keep it up to date(Google will not display outdated information)
- Original content(written by yourself or user-generated)
- ❌ Do not mark invisible content(if there is a performer field in JSON-LD, it must exist in the HTML body)
- ❌ Do not mark irrelevant / misleading content(fake reviews / content unrelated to the page topic)
- ❌ Do not impersonate / mislead about identity / affiliation / primary purpose
B. Relevance
SD must truly represent the page:
- ❌ A live sports site marks a broadcast as a local event
- ❌ A woodworking site marks a tutorial as a recipe
C. Completeness
- You must fill in required fields to be eligible to show rich results
- The more recommended fields you fill in → the higher the quality → rich result ranking bonus(job seekers prefer job postings with marked salaries; recipes with real user reviews get a bonus)
D. Location
- SD must be placed on the page it describes
- Duplicate pages (http and https / www and non-www)must have the same SD marked on both versions
E. Specificity
- Use the most specific type / property in schema.org (use
NewsArticleinstead ofCreativeWork) - Check additional guidance in specific feature documentation
F. Images
- Images must be relevant to the page(
NewsArticle.imagemust match news content) - Image URLs must be crawlable and indexable
1.4 2 patterns for multiple items on one page
Pattern 1: Nesting — the main item nests sub-items, suitable for closely related scenarios:
{
"@type": "Recipe",
"name": "Banana Bread",
"aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.7, "ratingCount": 123 },
"video": { "@type": "VideoObject", "name": "How To...", "contentUrl": "..." }
}
Pattern 2: Link independent items with @id to link independent items — suitable for scenarios with multiple independent items:
[
{ "@type": "Recipe", "@id": "https://example.com/banana-bread", "name": "..." },
{ "@type": "BreadcrumbList", "itemListElement": [...] }
]
⚠️ If you do not use @id to link, Google may not know that the video is about the recipe.
1.5 Unlock multiple rich results with main type + auxiliary types
Example: A recipe page:
- Main:
Recipe - Auxiliary:
Video+Review+BreadcrumbList
→ Can be "eligible" to show recipe rich results / video search / review snippets at the same time.
1.6 5 steps for testing + deployment
1. 加上必填的属性
2. 遵守指南
3. 用 Rich Results Test 验证语法
4. 部署后用 URL Inspection 工具看 Google 渲染后的版本
5. 提交 sitemap;在 Search Console 的 Rich Results status report 里跟进
1.7 Monitoring
Search Console → Rich result status reports(Rich result status reports, one report per type). After fixing issues → submit a review.
1.8 SD spam will result in manual actions
If an issue occurs → you lose eligibility for rich results,but this does not affect your ranking in regular web search. Check in the Manual Actions report(Manual Actions report) in Search Console.
Part 2 — Complete Overview of 34 Types ⭐⭐⭐
Each entry marks required(core fields) + gotcha(common pitfalls) + search appearance(appearance in search results). For the full field table → click the type name to link to Google's official documentation.
2.1 News / Article Types
Article / NewsArticle / BlogPosting
- Required:
headline(headline) +image(three aspect ratios: 1x1 / 4x3 / 16x9) +datePublished(date published) +dateModified(date modified) +author(PersonorOrganization, must contain theurlfield; it cannot have only name) - gotcha:
author.namemust match the visible byline on the page; an organization is also acceptable as the author - Appearance: title link / large image / byline date / Top stories candidate
Speakable(Speakable for news)
- Required:
cssSelectororxPath, pointing to speakable passages on the page - Applicable: news only + en-US / en-CA / en-AU / en-IE / en-NZ / en-UK 6 regions
- gotcha: short passages totaling ≤30 seconds, only headline and introduction
Subscription / Paywalled Content(Subscription / paywalled content)
- Required: add
NewsArticleonisAccessibleForFree: false+hasPart: { @type: "WebPageElement", isAccessibleForFree: false, cssSelector: "#paywall" } - gotcha: You must use structured data markup; otherwise Googlebot sees the full content but users do not = cloaking violation
FactCheck(Fact check)
- Required:
ClaimReviewcontainsclaimReviewed+reviewRating - gotcha: The site must clearly be a professional fact-checking site (independent third party)
2.2 E-commerce Types
Product + ProductGroup
- 2 major categories:
- Product snippet — Review pages (cannot purchase directly)
- Merchant listing — Product pages available for purchase (supports size / shipping / return)
- Overlap: The required product information for Merchant listings usually automatically also "qualifies" for Product snippets
- Variants → use
ProductGroup+ childProduct
Product Snippet(Review / comparison pages)
- Emphasize
pros(pros) +cons(cons) - Rich review information
Merchant Listing(Purchasable)
- size / shipping / return / availability, etc.
Product Variants(Product variants)
ProductGroupparent + multipleProductchildren (one independent URL per variant)- Helps Google understand which items are "the same product in different sizes/colors"
Review Snippet(Review snippet)
- Applies to:
Book/Recipe/Movie/Product/SoftwareApp/LocalBusiness - Required:
reviewRating+author+itemReviewed - ⚠️ Ratings must come from real users;fake 5-star ratings → manual action
Return Policy(Return policy, attached to Organization)
- Nested inside
Organizationin - Unlocks result enhancements, displays return policy in search results
Shipping Policy(Shipping policy, attached to Organization)
- Nested inside
Organizationin - Displays shipping cost / free shipping / delivery time
Loyalty Program(Loyalty points policy, attached to Organization)
- Nested inside
Organizationin - Displays points / membership program
2.3 Organization Types
Organization
- Required:
name(organization name) +url+logo(image) - Optional:
contactPoint/sameAs/legalName/taxID/iso6523Code/address - Appearance: Knowledge Panel
LocalBusiness(Local business)
- Subtypes:
Restaurant(Restaurant) /Hotel(Hotel) /Store(Store), etc. - Required:
name+image+address(PostalAddress) +priceRange(price range) + usually alsoopeningHoursSpecification(opening hours) - Appearance: Displays opening hours / ratings / directions / reservation/order buttons in the Knowledge Panel
2.4 Job Posting Types
JobPosting(Job posting)
- Required:
title(job title) +description(full HTML description) +datePosted+hiringOrganization+jobLocationorapplicantLocationRequirements - Strongly recommended:
baseSalary(Job postings with marked salary get a ranking boost) - gotcha:
validThrough(valid through) must be set; after expiration it will be automatically removed from job search; failing to remove expired postings will trigger a manual action; the site must have real, open positions to apply for, no spam allowed
Employer Aggregate Rating(Employer aggregate rating)
- Nested under
Organizationto represent employer rating - Data requires reviews from multiple users
2.5 Entertainment Types
Movie(Movie)
- Required:
name+image+dateCreated(release date) - Single page / carousel
- Nested
aggregateRating/director/actor
Event(Event, enriched search!)
- Required:
name+startDate+location - Offline events:
location.@type = Place+address - Online events:
location.@type = VirtualLocation+url - Mixed type: use an array
- eventStatus(event status):
EventScheduled(scheduled) /EventRescheduled(rescheduled) /EventCancelled(cancelled) /EventPostponed(postponed) /EventMovedOnline(moved online) - gotcha: Must be a leaf page (a page for a single event); listing pages are invalid
Carousel(Carousel, used in combination)
- It is not an independent type;it must be combined with one of the following: 4 types: Recipe / Course / Restaurant / Movie
- Use
ItemList+itemListElement - Multiple items from the same site displayed as one carousel
Carousels Beta(New feature carousel)
- Multi-site carousel (from sites other than a single site)
- Still in beta (testing) phase
Vacation Rental(Vacation rental)
- Required:
name+image+address+containsPlace+latitude/longitude+numberOfRoomsetc. - gotcha: Access has application requirements; you must first apply to join the program
2.6 Food & Beverage Category
Recipe(Recipe, enriched search!)
- Required:
name+image+recipeIngredient(Ingredients) +recipeInstructions(Step-by-step instructions) - Strongly recommended:
nutrition(Nutrition) +aggregateRating+video+prepTime/cookTime/totalTime(In ISO 8601 format, e.g.PT1H30M) - Single page / same-site carousel
- Enriched: Users can search by calories/time
2.7 Education & Science Category
Course + Course List
- For a single course use
Course - For a carousel of multiple courses use
ItemListcontainsCoursechild - Required:
name+description+provider
Education Q&A(Educational Q&A)
- Education card format (for student learning)
- Required:
QAPageorQuiz+ complete Q&A content
Math Solvers(Math solver)
- Helps students find step-by-step solutions to math problems
- Required:
MathSolvercontainsmathExpression+subjectOf(Solution walkthrough)
Dataset(Dataset)
- Discovered via Google Dataset Search; found in
- Required:
name+description+creator+distribution
2.8 Q&A / Forum / General Category
FAQPage ⚠️ Major change
⚠️ Starting 2026-05-07, FAQ rich results will no longer be displayed. Tool will be removed in 2026-06. Search Console API support will be removed in 2026-08. New sites do not need to add it, existing sites may keep it.
- History: Only government / authoritative medical sites were eligible for rich results (scope already restricted since 2023)
- Alternative: Use
QAPage(Single question with multiple user answers)
QAPage(Q&A page)
- 1 question + multiple user answers (forum / Stack Overflow / Quora style)
- Required:
Question+ at least 1Answer(can beacceptedAnsweraccepted orsuggestedAnswerrecommended) - gotcha:Must have real user questions + real answers, auto-generated FAQs are not allowed
Discussion Forum(Forum discussion)
- Short-form UGC (user-generated content, forum posts) + threaded or non-threaded discussions
- Required:
DiscussionForumPostingcontainsheadline+text+author+datePublished - gotcha: For comments use
Commentnesting
Profile Page(Personal / organization profile page)
- Pages about a single person / organization (associated with the site)
- Required:
ProfilePage+ includesmainEntityisPersonorOrganization - gotcha: Used for filters such as Perspectives
2.9 General / Cross-domain Category
Breadcrumb(Breadcrumb)BreadcrumbList)
- Required:
itemListElementarray, eachListItemcontainsposition+name+item(URL, the last item may omit the item) - Display format: Breadcrumbs are shown in search results instead of the URL
- Multiple breadcrumb paths: The same page may have multiple
BreadcrumbList(when there is more than one display path)
Video(Video,VideoObject)
- See full analysis in Complete Guide to Rich Features / Discover / Images / Video / Page Experience / Web Stories / SXG / Paywall Part 3
- Required:
name+description+thumbnailUrl(Thumbnail) +uploadDate - May add
contentUrl/embedUrl/duration/Clipchild (Key Moments) /SeekToAction/BroadcastEvent(Live broadcast badge)
Book(Book)
- For a single book use
Bookor for a series useBookSeries - Required:
name+author+workExample(one per edition/formatBook) - Suitable for book review sites / publishers
Software App(Software application)
- Required:
name+applicationCategory+operatingSystem+offersoraggregateRating
Image License Metadata(Image copyright metadata)
- Add
imagemetadata to help Google Images display author / usage license / credit information - Required(added on
ImageObject):creator+creditText+copyrightNotice+license(URL pointing to the license page) +acquireLicensePage(URL pointing to the purchase/obtain license page)
2.10 Detailed Carousel Combination Rules
Only 4 types can be used for single-site carousels (wrapped with ItemList ):
- Recipe(Recipe) carousel
- Course(Course) carousel
- Restaurant(
LocalBusinesssubclass, restaurant) carousel - Movie(Movie) carousel
Format:
{
"@context": "https://schema.org",
"@type": "ItemList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "url": "https://example.com/recipe-1" },
{ "@type": "ListItem", "position": 2, "url": "https://example.com/recipe-2" }
]
}
Each listItem's URL must point to an independent leaf page(with complete SD on that page).
Part 3 — Generating SD with JavaScript
3.1 Two approaches
A. Google Tag Manager(GTM):
- Install GTM
- Add a Custom HTML tag → paste in JSON-LD
- Publish the container
- Use GTM variables to extract data from the page (to prevent SD from being out of sync with page content)
function() { return document.title; }
B. Custom JS:
- Server-side rendered (SSR) SD + JS supplementation
- or pure JS-generated SD
- When Google renders it can process SD in the DOM(WRS, Web Rendering Service, see Full JavaScript SEO Suite (Basics + Diagnostics + Dynamic Rendering + Lazy Loading))
3.2 ⚠️ Special pitfalls for Product-type SD + JS
Shopping crawl frequency will decrease + reliability will worsen, which is a problem for rapidly changing content (inventory / price).
Fix:
- Prioritize server-side rendering(server-side render) Product-type SD
- The server must have sufficient capacity to handle increased crawl from Google
3.3 Testing
Use the URL Inspection tool to check post-render HTML to confirm SD is actually present.
Part 4 — Image License Metadata Explained
4.1 Purpose
Lets Google Images display:
- image author,
- license,and credit
- How to use(free / paid)
- Attribution(credit)
- URL of the page to obtain a license
4.2 5 required / recommended fields (added on ImageObject )
| Field | Meaning |
|---|---|
creator |
Person or Organization, with name |
creditText |
displayed attribution (may differ from creator) |
copyrightNotice |
© Brand Name 2024 copyright notice in the form of a |
license |
URL pointing to the license page |
acquireLicensePage |
URL pointing to the purchase / obtain license page |
4.3 Implementation examples
{
"@context": "https://schema.org/",
"@type": "ImageObject",
"contentUrl": "https://example.com/image.jpg",
"license": "https://example.com/license",
"acquireLicensePage": "https://example.com/how-to-license",
"creditText": "Labrador by Andy Wong",
"creator": { "@type": "Person", "name": "Andy Wong" },
"copyrightNotice": "© 2024 Andy Wong"
}
Part 5 — Collection of Anti-patterns (Common Mistakes)
| # | Anti-pattern | Consequence |
|---|---|---|
| 1 | Marking invisible content (JSON states there is a performer / HTML does not) | Triggers manual penalty, loses rich result eligibility |
| 2 | Marking misleading / irrelevant content (fake reviews) | Same as above |
| 3 | Use data-vocabulary.org |
Completely invalid(deprecated in 2020) |
| 4 | Microdata / RDFa / JSON-LD Mixing the same type | Google gets confused and only selects the most complete one |
| 5 | Only filling required fields, leaving all recommended fields empty | Low rich result ranking |
| 6 | Filling all recommended fields but inaccurate / incomplete | Worse than filling fewer fields |
| 7 | Placing SD on irrelevant pages(e.g. BreadcrumbList describing a different page) | Invalid |
| 8 | Duplicate pages (http and https / www and non-www)must have the same SD marked on both versions; do not add SD only on the canonical page and not on duplicate pages | Both versions must have the same SD added |
| 9 | Using broad CreativeWork instead of specific NewsArticle |
Loss of specificity |
| 10 | Multiple reviews / FAQs but only marking a subset | Misleading, triggers manual penalty |
| 11 | Still expecting FAQ rich results (discontinued 2026-05-07) | Wasted effort — use QAPage / change to Article instead |
| 12 | Expecting Speakable to support all languages | Limited to 6 English regions (en-US/CA/AU/IE/NZ/UK) |
| 13 | JobPosting does not set validThrough |
Expired positions still displayed → manual penalty |
| 14 | Product-type SD generated with JS but not SSR | Shopping crawl frequency drops, inventory / prices inaccurate |
| 15 | Paywalled content not marked with SD | Treated as cloaking spam |
| 16 | Vacation Rental SD added without applying to join the program | Invalid |
| 17 | Marked Image License but no real license exists | Triggers manual penalty |
Part 6 — Complete Type Index (34 types)
| Type | Link | Category |
|---|---|---|
| Article / NewsArticle / BlogPosting | docs | News / Sports |
| Book | docs | Entertainment |
| Breadcrumb | docs | General |
| Carousel | docs | Used in combination with Recipe / Course / Movie / Restaurant |
| Carousels Beta | docs | Beta |
| Course / Course List | docs | Education |
| Dataset | docs | Education |
| Discussion Forum | docs | UGC |
| Education Q&A | docs | Education |
| Employer Aggregate Rating | docs | Recruitment |
| Event | docs | Entertainment |
| FactCheck | docs | News |
| FAQPage ⚠️ Discontinued (2026-05-07) | docs | (Discontinued) |
| Image License Metadata | docs | General |
| Job Posting | docs | Recruitment |
| Local Business | docs | Organization |
| Loyalty Program | docs | E-commerce |
| Math Solvers | docs | Education |
| Merchant Listing | docs | E-commerce |
| Movie | docs | Entertainment |
| Organization | docs | Organization |
| Paywalled Content | docs | News |
| Product | docs | E-commerce |
| Product Snippet | docs | E-commerce |
| Product Variants | docs | E-commerce |
| Profile Page | docs | General |
| Q&A Page | docs | UGC |
| Recipe | docs | Food & Beverage |
| Return Policy | docs | E-commerce |
| Review Snippet | docs | E-commerce / Reviews |
| Shipping Policy | docs | E-commerce |
| Software App | docs | General |
| Speakable | docs | News (limited to 6 English regions) |
| Vacation Rental | docs | Application required |
| Video | docs | General |
Part 7 — Tools
| Tool | Purpose |
|---|---|
| Rich Results Test | Google-specific validation + preview |
| Schema Markup Validator | General schema.org validation (excludes Google-specific warnings) |
| Search Console Rich result status reports | Monitor errors for a specific type after deployment |
| Search Console URL Inspection | Check what Google actually received for a single URL |
⚠️ Structured Data Testing Tool has migrated to Schema Markup Validator (migrated 2020-12).
Part 8 — Related Wiki
- AI Overviews / AI Mode:No special schema required, regular SEO applies Full Landscape of Search Result Visual Elements (Visual Gallery / Title / Snippet / Favicon / Sitelinks / Featured / AI / Translated / Preferred)
- For the 6 major e-commerce SD types (BreadcrumbList / LocalBusiness / Organization / Product+ProductGroup / Review / VideoObject), see: Complete Ecommerce SEO Guide (6 Surfaces / 4 Launch Strategies / Merchant Center / 6 SD Types / 3 Pagination Modes / 13 Review Guidelines) Part 4
- Article with publication-dates:Complete Guide to Rich Features / Discover / Images / Video / Page Experience / Web Stories / SXG / Paywall Part 11
- Image SD with preferred image:Complete Guide to Rich Features / Discover / Images / Video / Page Experience / Web Stories / SXG / Paywall Part 2
- Video SD details (Key Moments / Live Badge / Clip / SeekToAction):Complete Guide to Rich Features / Discover / Images / Video / Page Experience / Web Stories / SXG / Paywall Part 3
- Paywalled SD with flexible-sampling 6-10 articles/month:Complete Guide to Rich Features / Discover / Images / Video / Page Experience / Web Stories / SXG / Paywall Part 9
- Invisible content in SD = cloaking spam:Google SEO Basics + How Search Works + Search Essentials 24 spam policies
- Relationship between robots meta and SD (
max-snippetdoes not affect content provided by SD):Complete Guide to Crawling & Indexing Control (robots.txt / noindex / X-Robots-Tag / data-nosnippet / rel) Section 3.5 - SD must be crawlable by Googlebot (must not be blocked by robots.txt or marked noindex):Complete Guide to Canonical Tags / Redirects / Site Migrations (Including Full HTTP Status Code Table + 503 Temporary Closure Playbook)
- Detailed fields for each type: see the search-gallery links to the official documentation
Last updated
2026-05-17 — Compiled based on 40 articles in Google Search Central's appearance/structured-data series (latest from 2024-10 to 2026-05).Major change: FAQ rich results will be discontinued starting 2026-05-07.