Audit Standard / 2026.4

Rule explorer: Audit Standard 2026.4

Every check that defines technical readiness in MaxiMarket Audit Standard 2026.4, exactly as the audit applies it. Open a rule to see what it checks, why it matters, how to fix it, where its authority comes from and how much it counts.

Guides by topic: technical SEO audit rules, AI readiness, structured data and ecommerce product data.

Version
2026.4
Status
Current
Published
2026-10-01
Rules
94
Scored
74
Observations
34

Authority levels

Official search-engine requirement
A search engine documents it as required for a specific outcome, such as Google eligibility.
Strongest external authority
Open standard / Schema.org
Defined by an open standard or vocabulary: HTML, WCAG, IETF RFCs, Schema.org, Sitemaps, Open Graph.
Official platform recommendation
Recommended in official platform documentation, such as Google Search Central or an AI platform.
Accepted best practice
Widely accepted practice with a cited source, but no official requirement.
MaxiMarket recommendation
MaxiMarket’s own advice. Never presented as a search engine or platform requirement.
MaxiMarket methodology

Filter

Showing 14 rules and 0 observations.

Rules

Rules pass or fail. A failed rule becomes a finding in your report; scored rules also count toward the Technical Score.

Document metadata

SEO-CHARSET-001Open standard / Schema.org · RequiredCharacter encoding is declared once, as UTF-8DocumentWarning when failedWeight 2Technical SearchAI DiscoveryMachine Readability
What this checks
The meta charset elements: how many there are and their value.
Why it matters
HTML allows at most one meta charset element and only the value utf-8; a wrong or conflicting declaration can garble text for every consumer.
How to fix
Keep a single <meta charset="utf-8"> and serve the document as UTF-8.
Expected
At most one meta charset, with the value utf-8.
Applies to
Pages with at least one meta charset element.
Authority
Open standard / Schema.org · RequiredHTML Standard, for pages that declare meta charset.
Technical Score
Weight 2 of 3A wrong or conflicting encoding declaration can garble the text for every consumer.
How MaxiMarket detects it
Reports when there is more than one meta element with a charset attribute, or its value is not utf-8 (ASCII case-insensitive, surrounding whitespace ignored). Pages without meta charset are not applicable.
Sources
SEO-LANGUAGE-001Open standard / Schema.org · RequiredPage language is declaredDocumentWarning when failedWeight 2Technical SearchAI DiscoveryMachine Readability
What this checks
Whether the root html element has a non-empty lang attribute.
Why it matters
WCAG requires the default human language of a page to be programmatically determinable, and the HTML Standard encourages a lang attribute on the root element for speech synthesis and translation tools.
How to fix
Add a lang attribute with the page language to the <html> element.
Expected
The root <html> element declares the page language, such as lang="en".
Applies to
Every retrieved page.
Authority
Open standard / Schema.org · RequiredRequired for WCAG 2.2 Level A conformance (Success Criterion 3.1.1); the HTML Standard encourages the lang attribute.
Technical Score
Weight 2 of 3A WCAG Level A requirement for every page.
How MaxiMarket detects it
Reports when the first html element has no lang attribute or an empty one. The language value is not validated.
Sources
SEO-LANGUAGE-002Open standard / Schema.org · RequiredPage language is a well-formed BCP 47 tagDocumentWarning when failedWeight 1AI DiscoveryMachine Readability
What this checks
Whether the html lang value conforms to the BCP 47 (RFC 5646) language tag syntax.
Why it matters
HTML requires the lang value to be a valid BCP 47 language tag; a malformed tag cannot identify the language for assistive technology or language processing.
How to fix
Use a BCP 47 language tag, such as en, en-GB or zh-Hant.
Expected
The lang value is a valid BCP 47 language tag, such as en or de-CH.
Applies to
Pages whose html element has a non-empty lang attribute.
Authority
Open standard / Schema.org · RequiredRequired by the HTML Standard for the lang attribute.
Technical Score
Weight 1 of 3A malformed lang value is declared but unusable; it only applies when lang is present.
How MaxiMarket detects it
Reports when a non-empty lang value is not well-formed under the RFC 5646 ABNF (language, script, region, variant, extension and private-use subtags, private-use tags and the listed grandfathered tags), case-insensitively. Subtags are not checked against the IANA registry, so a well-formed but unregistered tag passes.
Sources

Canonicalization

SEO-CANONICAL-002Open standard / Schema.org · RequiredOnly one canonical is declaredDocumentWarning when failedWeight 2Technical SearchAI Discovery
What this checks
The number of rel=canonical link elements, and of canonical entries in HTTP Link headers.
Why it matters
RFC 6596 asks for a single canonical; when several are declared, Google may ignore them.
How to fix
Keep a single rel=canonical link element (and at most one canonical Link header).
Expected
At most one canonical per method.
Applies to
Pages that declare at least one canonical, in a link element or an HTTP Link header.
Authority
Open standard / Schema.org · RequiredRFC 6596 and Google canonicalization guidance.
Technical Score
Weight 2 of 3Several canonical declarations may make search engines ignore all of them.
How MaxiMarket detects it
Reports when the HTML contains more than one link element whose rel includes canonical, or the HTTP Link headers contain more than one rel=canonical entry. Disagreement between the two methods is SEO-CANONICAL-008.
Sources
SEO-CANONICAL-006Open standard / Schema.org · RecommendedCanonical target is directly retrievableDocumentWarning when failedWeight 2Technical SearchAI Discovery
What this checks
The HTTP status of the canonical URL when it differs from the final URL.
Why it matters
RFC 6596 advises against canonical targets that redirect or return an error, and Google wants canonical URLs that are accessible and indexable.
How to fix
Point the canonical at the final, directly reachable URL of the preferred page.
Expected
HTTP 200 without a redirect.
Applies to
Pages whose declared canonical resolves to a different URL than the final URL.
Authority
Open standard / Schema.org · RecommendedRFC 6596 and Google canonicalization guidance.
Technical Score
Weight 2 of 3A canonical that redirects or errors points search engines at a URL they cannot use.
How MaxiMarket detects it
One bounded request to the canonical URL through the same destination checks as the audit (public HTTP(S) destinations only, no redirects followed, 5-second limit). Reports a redirect status or a 4xx. Server errors, throttling, timeouts and refused destinations are not evaluated.
Sources
SEO-CANONICAL-007Open standard / Schema.org · RecommendedCanonical target does not declare another canonicalDocumentWarning when failedWeight 1Technical SearchAI Discovery
What this checks
The canonical declared by the canonical target page.
Why it matters
RFC 6596 advises against chains of canonical designations; search engines may ignore a chained canonical.
How to fix
Point the canonical directly at the final preferred URL.
Expected
The target is its own canonical, or declares none.
Applies to
Pages whose canonical target was retrieved as HTML with HTTP 200.
Authority
Open standard / Schema.org · RecommendedRFC 6596 guidance.
Technical Score
Weight 1 of 3A chained canonical may be ignored, but the chain usually still reaches the preferred page.
How MaxiMarket detects it
Uses the same request as SEO-CANONICAL-006. When the target answers 200 with HTML (read up to 512 KiB), reports when its first canonical link element resolves to a URL other than the target itself.
Sources

Images and media

MEDIA-IMG-ALT-001Open standard / Schema.org · RequiredImages have text alternativesDocumentWarning when failedWeight 1Technical SearchAI DiscoveryMachine Readability
What this checks
img elements without an alt attribute.
Why it matters
WCAG 1.1.1 (Level A) requires a text alternative for non-text content, and Google calls alt text the most important image metadata.
How to fix
Add an alt attribute to every img: a description for meaningful images, alt="" for decorative ones.
Expected
Every img has an alt attribute (empty for decorative images).
Applies to
Pages with at least one img element.
Authority
Open standard / Schema.org · RequiredWCAG 2.2 Level A.
Technical Score
Weight 1 of 3A WCAG Level A requirement and Google image guidance. Lowered to 1 in 2026.3: the search effect depends on each image's role, and decorative images correctly use alt="".
How MaxiMarket detects it
Reports when an img element has no alt attribute and no other accessible name or hiding: aria-label, aria-labelledby, role="presentation" or role="none", and aria-hidden="true" are accepted. Alt text quality is not judged.
Sources

Sitemaps

INDEX-SITEMAP-002Open standard / Schema.org · RequiredSitemap is well-formedIndexingWarning when failedWeight 2Technical SearchAI Discovery
What this checks
Whether each retrieved sitemap is well-formed XML with a urlset or sitemapindex root.
Why it matters
The Sitemaps protocol defines a sitemap as XML beginning with urlset (or sitemapindex for index files); a malformed file cannot be processed as a sitemap.
How to fix
Regenerate the sitemap as well-formed UTF-8 XML following the Sitemaps protocol.
Expected
Each sitemap is a well-formed XML document whose root is urlset or sitemapindex.
Applies to
Origins where at least one sitemap was retrieved.
Authority
Open standard / Schema.org · RequiredRequired by the Sitemaps XML format.
Technical Score
Weight 2 of 3A malformed sitemap cannot be processed at all.
How MaxiMarket detects it
Reports when at least one retrieved sitemap is malformed, has another root element, or contains a DTD or entity declaration, which MaxiMarket rejects for safety. Gzip-compressed sitemaps are not supported and namespaces are not validated.
Sources
INDEX-SITEMAP-007Open standard / Schema.org · RecommendedSitemap lastmod values are valid W3C DatetimeIndexingInfo when failedWeight 1Technical SearchAI Discovery
What this checks
The format of lastmod values in the inspected sitemaps.
Why it matters
The sitemap protocol requires W3C Datetime; Google uses lastmod only when it is consistently accurate, and a malformed value cannot be used.
How to fix
Write lastmod as YYYY-MM-DD or as a full timestamp with a time zone, such as 2026-09-26T08:00:00+00:00.
Expected
W3C Datetime: YYYY, YYYY-MM, YYYY-MM-DD, or a date with hh:mm[:ss[.s]] and a time zone.
Applies to
Retrieved, well-formed sitemaps with at least one lastmod value.
Authority
Open standard / Schema.org · RecommendedSitemaps XML protocol.
Technical Score
Weight 1 of 3Malformed lastmod values are ignored; the URLs are still listed.
How MaxiMarket detects it
Reports when a lastmod of an inspected url or sitemap entry does not match a W3C Datetime form or has an impossible date or time. Whether the dates are accurate is not verifiable and not checked.
Sources

Structured data (general)

STRUCTURED-JSONLD-002Open standard / Schema.org · RequiredJSON-LD blocks parse as JSONStructured dataWarning when failedWeight 2Technical SearchAI DiscoveryMachine Readability
What this checks
Whether each inspected JSON-LD block parses as JSON.
Why it matters
JSON-LD is JSON; a block that cannot be parsed cannot be read as structured data by any consumer.
How to fix
Validate the JSON-LD block and fix syntax errors such as trailing commas, unescaped quotes or unclosed brackets.
Expected
Every JSON-LD block is valid JSON.
Applies to
Pages with at least one JSON-LD block.
Authority
Open standard / Schema.org · RequiredRequired by the JSON-LD 1.1 data format.
Technical Score
Weight 2 of 3An unparseable JSON-LD block loses all the data it contains.
How MaxiMarket detects it
Reports when at least one inspected JSON-LD block fails JSON parsing. Blocks skipped because of size or count limits are not counted as invalid.
Sources

Product and Offer data

STRUCTURED-OFFER-006Open standard / Schema.org · RecommendedOffer price is machine-readableOfferWarning when failedWeight 2Technical SearchAI DiscoveryCommerceMachine Readability
What this checks
The format of Offer price and priceSpecification.price values, and AggregateOffer lowPrice and highPrice.
Why it matters
Schema.org asks for "." as the decimal separator and for the currency in priceCurrency, not in the price.
How to fix
Write prices such as 1299.00, without currency symbols or thousands separators.
Expected
A number, or a string of digits with an optional "." decimal part.
Applies to
Pages with at least one inspected Offer or AggregateOffer price value linked from a fully inspected Product.
Authority
Open standard / Schema.org · RecommendedSchema.org Offer usage guidance.
Technical Score
Weight 2 of 3A price that is not machine-readable cannot be interpreted reliably.
How MaxiMarket detects it
Reports when an inspected price value (linked from a fully inspected Product) is neither a finite non-negative JSON number nor a string of digits with an optional "." and digits (surrounding whitespace ignored). Missing prices are STRUCTURED-OFFER-001 and -002.
Sources
STRUCTURED-OFFER-008Open standard / Schema.org · RecommendedpriceValidUntil is not in the pastOfferWarning when failedWeight 1Technical SearchAI DiscoveryCommerceMachine Readability
What this checks
priceValidUntil of each inspected Offer against the audit time.
Why it matters
After priceValidUntil the price is by definition no longer available, so the offer information is stale.
How to fix
Update or remove priceValidUntil.
Expected
Absent, or not yet passed.
Applies to
Pages with at least one inspected Offer declaring priceValidUntil.
Authority
Open standard / Schema.org · RecommendedSchema.org Offer definition; Google merchant listing recommendation.
Technical Score
Weight 1 of 3An expired priceValidUntil makes offer data stale.
How MaxiMarket detects it
Reports when an ISO 8601 priceValidUntil has passed in every time zone at the audit time (a date is valid through its whole day). Unparseable values are not evaluated.
Sources

Social metadata

SOCIAL-OG-URL-001Open standard / Schema.org · RequiredOpen Graph URL is presentDocumentInfo when failedNot scoredAI DiscoverySocial Discovery
What this checks
Whether a page that declares Open Graph metadata has a non-empty og:url.
Why it matters
The Open Graph protocol lists og:url among the four properties required for every page, as the canonical URL of the object.
How to fix
Add <meta property="og:url" content="..."> with the canonical URL of the page.
Expected
Pages that use Open Graph declare <meta property="og:url"> with the canonical URL.
Applies to
Pages that declare any well-formed og:* meta property; pages without Open Graph metadata are not applicable.
Authority
Open standard / Schema.org · RequiredOpen Graph protocol, for pages that use Open Graph.
Technical Score
Not scoredShare-preview markup is outside the Technical Score.
How MaxiMarket detects it
Reports when Open Graph inspection is complete, the page declares at least one well-formed og:* meta property, and no og:url has a non-empty value.
Sources
SOCIAL-OG-URL-002Open standard / Schema.org · RecommendedOpen Graph URL matches the canonical URLDocumentInfo when failedNot scoredAI DiscoverySocial Discovery
What this checks
og:url against the declared canonical URL.
Why it matters
The Open Graph protocol defines og:url as the canonical URL; a different value splits the page's identity between share previews and search.
How to fix
Set og:url to the canonical URL.
Expected
The same URL.
Applies to
Pages that use Open Graph and declare both a non-empty og:url and a canonical URL.
Authority
Open standard / Schema.org · RecommendedOpen Graph protocol, for pages that use Open Graph.
Technical Score
Not scoredShare-preview markup is outside the Technical Score.
How MaxiMarket detects it
Resolves the first non-empty og:url and the first canonical against the final URL, ignoring fragments, and reports when they differ.
Sources