findXpand
← All categories

Structured Data

[← Back to Home](/docs/rules)

Checks JSON-LD, Microdata, and RDFa markup against schema.org requirements for the most common types (Organization, WebSite, Article, Product, FAQPage, BreadcrumbList, LocalBusiness, Person, Event). Source: src/lib/structuredDataAudit.ts (analyzeStructuredData).

42 rules in this category.

IDRuleSeverityWeight
jsonld-parse-errorN JSON-LD block(s) failed to parseHigh10 pts
schema-article-required-ArticleArticle schema is missing one or more required propertiesMedium–High6–9 pts (scales with how much of the page is affected — see source)
schema-article-required-BlogPostingBlogPosting schema is missing one or more required propertiesMedium–High6–9 pts (scales with how much of the page is affected — see source)
schema-article-required-NewsArticleNewsArticle schema is missing one or more required propertiesMedium–High6–9 pts (scales with how much of the page is affected — see source)
jsonld-missingNo JSON-LD structured data foundMedium8 pts
schema-breadcrumb-invalidBreadcrumbList schema has N issue(s)Medium5–8 pts (scales with how much of the page is affected — see source)
schema-event-requiredEvent schema is missing required property/ies: NMedium5–8 pts (scales with how much of the page is affected — see source)
schema-faq-invalidFAQPage schema has N issue(s)Medium5–8 pts (scales with how much of the page is affected — see source)
schema-missing-typeN JSON-LD node(s) missing "@type"Medium8 pts
schema-org-requiredOrganization schema is missing required property/ies: NMedium5–8 pts (scales with how much of the page is affected — see source)
structured-data-noneNo structured data detected on the page (JSON-LD, Microdata, or RDFa)Medium8 pts
schema-invalid-typeUnrecognized schema type(s): (actual value found on the page, truncated)Medium7 pts
schema-localbusiness-requiredLocalBusiness schema is missing required property/ies: NMedium7 pts
schema-missing-contextN JSON-LD node(s) missing a schema.org "@context"Medium6 pts
schema-product-offersProduct schema is missing a valid "offers" with price/priceCurrencyMedium6 pts
schema-product-requiredProduct schema is missing required property/ies: NMedium6 pts
schema-website-requiredWebSite schema is missing required property/ies: NMedium6 pts
microdata-missing-itemtypeN microdata element(s) missing "itemtype"Medium5 pts
schema-person-requiredPerson schema is missing required property: nameMedium5 pts
schema-searchaction-invalidSearchAction is malformed (invalid target/urlTemplate / invalid query-input)Medium5 pts
microdata-invalid-itemtypeN microdata element(s) use a non-schema.org itemtypeLow4 pts
rdfa-missing-vocabRDFa "typeof" attributes found without a "vocab" declarationLow4 pts
schema-searchaction-missingWebSite schema has no SearchAction (sitelinks search box)Low4 pts
jsonld-emptyN empty JSON-LD script tag(s)Low3 pts
schema-localbusiness-phoneLocalBusiness schema is missing "telephone"Low3 pts
schema-org-logoOrganization schema is missing "logo"Low3 pts
schema-product-imageProduct schema is missing "image"Low3 pts
jsonld-presentN JSON-LD block(s) foundPositive signal0 pts
microdataMicrodata found on N element(s) and looks well-formedPositive signal0 pts
rdfaRDFa markup found on N element(s) with a vocab declaredPositive signal0 pts
schema-article-ArticleArticle schema has all required properties (headline, author, datePublished)Positive signal0 pts
schema-article-BlogPostingBlogPosting schema has all required properties (headline, author, datePublished)Positive signal0 pts
schema-article-NewsArticleNewsArticle schema has all required properties (headline, author, datePublished)Positive signal0 pts
schema-breadcrumbBreadcrumbList schema is validPositive signal0 pts
schema-eventEvent schema has required propertiesPositive signal0 pts
schema-faqFAQPage schema is validPositive signal0 pts
schema-localbusinessLocalBusiness schema has required propertiesPositive signal0 pts
schema-orgOrganization schema has required propertiesPositive signal0 pts
schema-personPerson schema has required propertiesPositive signal0 pts
schema-productProduct schema has required propertiesPositive signal0 pts
schema-searchactionSearchAction is present and correctly configuredPositive signal0 pts
schema-websiteWebSite schema has required propertiesPositive signal0 pts

jsonld-parse-error

N JSON-LD block(s) failed to parse

SeverityWeightCategory
High10 ptsStructured Data

What triggers it & why it matters: One or more <script type="application/ld+json"> tags contain invalid JSON, so search engines will silently ignore them.

How to fix it & effect on score: Validate JSON-LD with a linter (or the Rich Results Test) and fix syntax errors like trailing commas or unescaped quotes. Fixing this removes the 10 pts deduction from the Structured Data category score on the next scan.


schema-article-required-Article

Article schema is missing one or more required properties

SeverityWeightCategory
Medium–High6–9 pts (scales with how much of the page is affected — see source)Structured Data

What triggers it & why it matters: A JSON-LD node typed Article is missing at least one of its required properties (headline, author, datePublished). Article-family rich results require headline, author, datePublished; missing fields can prevent the article rich result from showing in search.

How to fix it & effect on score: Add the missing propert(y/ies) — one or more of headline, author, datePublished — to the Article JSON-LD block. Fixing this removes the 6–9 pts (scales with how much of the page is affected — see source) deduction from the Structured Data category score on the next scan.

What a pass looks like: Article schema has all required properties


schema-article-required-BlogPosting

BlogPosting schema is missing one or more required properties

SeverityWeightCategory
Medium–High6–9 pts (scales with how much of the page is affected — see source)Structured Data

What triggers it & why it matters: A JSON-LD node typed BlogPosting is missing at least one of its required properties (headline, author, datePublished). Article-family rich results require headline, author, datePublished; missing fields can prevent the article rich result from showing in search.

How to fix it & effect on score: Add the missing propert(y/ies) — one or more of headline, author, datePublished — to the BlogPosting JSON-LD block. Fixing this removes the 6–9 pts (scales with how much of the page is affected — see source) deduction from the Structured Data category score on the next scan.

What a pass looks like: BlogPosting schema has all required properties


schema-article-required-NewsArticle

NewsArticle schema is missing one or more required properties

SeverityWeightCategory
Medium–High6–9 pts (scales with how much of the page is affected — see source)Structured Data

What triggers it & why it matters: A JSON-LD node typed NewsArticle is missing at least one of its required properties (headline, author, datePublished). Article-family rich results require headline, author, datePublished; missing fields can prevent the article rich result from showing in search.

How to fix it & effect on score: Add the missing propert(y/ies) — one or more of headline, author, datePublished — to the NewsArticle JSON-LD block. Fixing this removes the 6–9 pts (scales with how much of the page is affected — see source) deduction from the Structured Data category score on the next scan.

What a pass looks like: NewsArticle schema has all required properties


jsonld-missing

No JSON-LD structured data found

SeverityWeightCategory
Medium8 ptsStructured Data

What triggers it & why it matters: No <script type="application/ld+json"> blocks were found on the page. JSON-LD is the format Google recommends for rich results (Organization, WebSite, Breadcrumbs, FAQs, Articles, Products, etc.).

How to fix it & effect on score: Add JSON-LD structured data describing the page, e.g. Organization/WebSite on the homepage, Article on blog posts, or Product on product pages. Fixing this removes the 8 pts deduction from the Structured Data category score on the next scan.


schema-breadcrumb-invalid

BreadcrumbList schema has N issue(s)

SeverityWeightCategory
Medium5–8 pts (scales with how much of the page is affected — see source)Structured Data

What triggers it & why it matters: Breadcrumb rich results require each itemListElement to have position, name, and item: (actual value found on the page, truncated).

How to fix it & effect on score: Ensure every itemListElement has "position" (integer), "name", and an absolute "item" URL. Fixing this removes the 5–8 pts (scales with how much of the page is affected — see source) deduction from the Structured Data category score on the next scan.


schema-event-required

Event schema is missing required property/ies: N

SeverityWeightCategory
Medium5–8 pts (scales with how much of the page is affected — see source)Structured Data

What triggers it & why it matters: Event rich results require "name", "startDate", and "location" at minimum.

How to fix it & effect on score: Add N to the Event JSON-LD block. Fixing this removes the 5–8 pts (scales with how much of the page is affected — see source) deduction from the Structured Data category score on the next scan.


schema-faq-invalid

FAQPage schema has N issue(s)

SeverityWeightCategory
Medium5–8 pts (scales with how much of the page is affected — see source)Structured Data

What triggers it & why it matters: FAQ rich results require each mainEntity Question to have a name and an acceptedAnswer.text: (actual value found on the page, truncated).

How to fix it & effect on score: Ensure every Question has "name" and an acceptedAnswer with "text". Fixing this removes the 5–8 pts (scales with how much of the page is affected — see source) deduction from the Structured Data category score on the next scan.


schema-missing-type

N JSON-LD node(s) missing "@type"

SeverityWeightCategory
Medium8 ptsStructured Data

What triggers it & why it matters: Every JSON-LD node needs an "@type" so search engines know which schema.org vocabulary applies.

How to fix it & effect on score: Add an appropriate "@type" (e.g. "Organization", "Article", "Product") to each JSON-LD node. Fixing this removes the 8 pts deduction from the Structured Data category score on the next scan.


schema-org-required

Organization schema is missing required property/ies: N

SeverityWeightCategory
Medium5–8 pts (scales with how much of the page is affected — see source)Structured Data

What triggers it & why it matters: Organization schema needs at least "name" and "url" to be usable for knowledge panel / logo rich results.

How to fix it & effect on score: Add N to the Organization JSON-LD block. Fixing this removes the 5–8 pts (scales with how much of the page is affected — see source) deduction from the Structured Data category score on the next scan.


structured-data-none

No structured data detected on the page (JSON-LD, Microdata, or RDFa)

SeverityWeightCategory
Medium8 ptsStructured Data

What triggers it & why it matters: Without any structured data, this page is not eligible for rich results like sitelinks search boxes, breadcrumbs, FAQs, product pricing, or article cards.

How to fix it & effect on score: Add JSON-LD structured data appropriate to the page type (Organization/WebSite on the homepage, Article on posts, Product on product pages, etc.). Fixing this removes the 8 pts deduction from the Structured Data category score on the next scan.


schema-invalid-type

Unrecognized schema type(s): (actual value found on the page, truncated)

SeverityWeightCategory
Medium7 ptsStructured Data

What triggers it & why it matters: These "@type" values don't match standard schema.org type names (case-sensitive), which likely means a typo or an invalid/custom type that rich results won't recognize.

How to fix it & effect on score: Check spelling/casing against schema.org and use a valid registered type (e.g. "LocalBusiness", not "localbusiness" or "Local_Business"). Fixing this removes the 7 pts deduction from the Structured Data category score on the next scan.


schema-localbusiness-required

LocalBusiness schema is missing required property/ies: N

SeverityWeightCategory
Medium7 ptsStructured Data

What triggers it & why it matters: LocalBusiness schema needs "name" and "address" for local search / map pack eligibility.

How to fix it & effect on score: Add N to the LocalBusiness JSON-LD block. Fixing this removes the 7 pts deduction from the Structured Data category score on the next scan.


schema-missing-context

N JSON-LD node(s) missing a schema.org "@context"

SeverityWeightCategory
Medium6 ptsStructured Data

What triggers it & why it matters: Without "@context": "https://schema.org", the "@type" values are ambiguous and may be ignored by search engines.

How to fix it & effect on score: Add "@context": "https://schema.org" to each top-level JSON-LD object. Fixing this removes the 6 pts deduction from the Structured Data category score on the next scan.


schema-product-offers

Product schema is missing a valid "offers" with price/priceCurrency

SeverityWeightCategory
Medium6 ptsStructured Data

What triggers it & why it matters: Google requires Product rich results to include an offers object with "price" and "priceCurrency" (or an aggregateOffer) to show pricing.

How to fix it & effect on score: Add an "offers" object with "price", "priceCurrency", and "availability". Fixing this removes the 6 pts deduction from the Structured Data category score on the next scan.


schema-product-required

Product schema is missing required property/ies: N

SeverityWeightCategory
Medium6 ptsStructured Data

What triggers it & why it matters: Product schema needs at least a "name" to be valid.

How to fix it & effect on score: Add N to the Product JSON-LD block. Fixing this removes the 6 pts deduction from the Structured Data category score on the next scan.


schema-website-required

WebSite schema is missing required property/ies: N

SeverityWeightCategory
Medium6 ptsStructured Data

What triggers it & why it matters: WebSite schema needs "name" and "url" at minimum.

How to fix it & effect on score: Add N to the WebSite JSON-LD block. Fixing this removes the 6 pts deduction from the Structured Data category score on the next scan.


microdata-missing-itemtype

N microdata element(s) missing "itemtype"

SeverityWeightCategory
Medium5 ptsStructured Data

What triggers it & why it matters: Elements using itemscope without a matching itemtype have no defined vocabulary, so parsers can't interpret the properties inside them.

How to fix it & effect on score: Add an itemtype attribute (e.g. itemtype="https://schema.org/Product") to every itemscope element. Fixing this removes the 5 pts deduction from the Structured Data category score on the next scan.


schema-person-required

Person schema is missing required property: name

SeverityWeightCategory
Medium5 ptsStructured Data

What triggers it & why it matters: Person schema is not useful to search engines without at least a "name".

How to fix it & effect on score: Add a "name" property to the Person JSON-LD block. Fixing this removes the 5 pts deduction from the Structured Data category score on the next scan.


schema-searchaction-invalid

SearchAction is malformed (invalid target/urlTemplate / invalid query-input)

SeverityWeightCategory
Medium5 ptsStructured Data

What triggers it & why it matters: The SearchAction target must contain "{search_term_string}" as a placeholder and query-input must reference "search_term_string".

How to fix it & effect on score: Set target.urlTemplate to something like "https://example.com/search?q={search_term_string}" and query-input to "required name=search_term_string". Fixing this removes the 5 pts deduction from the Structured Data category score on the next scan.


microdata-invalid-itemtype

N microdata element(s) use a non-schema.org itemtype

SeverityWeightCategory
Low4 ptsStructured Data

What triggers it & why it matters: itemtype values should be absolute schema.org URLs (https://schema.org/Type) for search engines to recognize them.

How to fix it & effect on score: Point itemtype attributes at https://schema.org/ type URLs. Fixing this removes the 4 pts deduction from the Structured Data category score on the next scan.


rdfa-missing-vocab

RDFa "typeof" attributes found without a "vocab" declaration

SeverityWeightCategory
Low4 ptsStructured Data

What triggers it & why it matters: RDFa typeof values are ambiguous without a vocab attribute (typically vocab="https://schema.org/") establishing which vocabulary the types come from.

How to fix it & effect on score: Add vocab="https://schema.org/" to the <html> or a wrapping element that contains the RDFa markup. Fixing this removes the 4 pts deduction from the Structured Data category score on the next scan.


schema-searchaction-missing

WebSite schema has no SearchAction (sitelinks search box)

SeverityWeightCategory
Low4 ptsStructured Data

What triggers it & why it matters: Without a potentialAction/SearchAction, Google cannot show a sitelinks search box for your site in search results.

How to fix it & effect on score: Add a potentialAction with @type "SearchAction", a target urlTemplate containing "{search_term_string}", and query-input "required name=search_term_string". Fixing this removes the 4 pts deduction from the Structured Data category score on the next scan.


jsonld-empty

N empty JSON-LD script tag(s)

SeverityWeightCategory
Low3 ptsStructured Data

What triggers it & why it matters: A <script type="application/ld+json"> tag exists but contains no content.

How to fix it & effect on score: Remove empty JSON-LD script tags or populate them with valid structured data. Fixing this removes the 3 pts deduction from the Structured Data category score on the next scan.


schema-localbusiness-phone

LocalBusiness schema is missing "telephone"

SeverityWeightCategory
Low3 ptsStructured Data

What triggers it & why it matters: A phone number helps LocalBusiness listings qualify for click-to-call rich results.

How to fix it & effect on score: Add a "telephone" property in E.164 or national format. Fixing this removes the 3 pts deduction from the Structured Data category score on the next scan.


schema-org-logo

Organization schema is missing "logo"

SeverityWeightCategory
Low3 ptsStructured Data

What triggers it & why it matters: Google uses the Organization logo for knowledge panels and search result branding.

How to fix it & effect on score: Add a "logo" property with an absolute image URL to the Organization schema. Fixing this removes the 3 pts deduction from the Structured Data category score on the next scan.


schema-product-image

Product schema is missing "image"

SeverityWeightCategory
Low3 ptsStructured Data

What triggers it & why it matters: Product rich results display an image; without it, the listing looks incomplete.

How to fix it & effect on score: Add an "image" property with one or more absolute image URLs. Fixing this removes the 3 pts deduction from the Structured Data category score on the next scan.


jsonld-present

N JSON-LD block(s) found

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: N JSON-LD block(s) found. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


microdata

Microdata found on N element(s) and looks well-formed

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: Microdata found on N element(s) and looks well-formed. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


rdfa

RDFa markup found on N element(s) with a vocab declared

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: RDFa markup found on N element(s) with a vocab declared. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-article-Article

Article schema has all required properties

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: Article schema has all required properties (headline, author, datePublished). There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-article-BlogPosting

BlogPosting schema has all required properties

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: BlogPosting schema has all required properties (headline, author, datePublished). There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-article-NewsArticle

NewsArticle schema has all required properties

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: NewsArticle schema has all required properties (headline, author, datePublished). There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-breadcrumb

BreadcrumbList schema is valid

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: BreadcrumbList schema is valid. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-event

Event schema has required properties

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: Event schema has required properties. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-faq

FAQPage schema is valid

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: FAQPage schema is valid. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-localbusiness

LocalBusiness schema has required properties

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: LocalBusiness schema has required properties. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-org

Organization schema has required properties

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: Organization schema has required properties. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-person

Person schema has required properties

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: Person schema has required properties. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-product

Product schema has required properties

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: Product schema has required properties. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-searchaction

SearchAction is present and correctly configured

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: SearchAction is present and correctly configured. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.


schema-website

WebSite schema has required properties

SeverityWeightCategory
Positive signal0 ptsStructured Data

What triggers it & why it matters: This rule only ever surfaces as a passing signal in the current source — it fires (as a pass) when: WebSite schema has required properties. There is no separate failing issue() call under this exact id; the failure condition is the logical negation of the pass condition, and in most cases is covered by a related rule id documented elsewhere in this category (see the table above for a sibling rule on the same feature).

Effect on score: Meeting this condition costs nothing and confirms a positive signal. Missing it doesn't directly deduct points under this id — it typically shows up as a deduction under the related failing rule instead.