Blog/article schema includes dates
Why it matters
Freshness is one of the few signals AI-search vendors name in their own docs. Microsoft is explicit that staleness is worse in AI answers than in ranking — "In search, stale content degrades ranking. In grounding, a stale fact produces a misleading response" — and lists "regular updates" among its AI-citation guidance; Google describes its AI features as retrieving "up-to-date web pages from our Search index." The cross-vendor way to declare freshness is visible dates on the page (covered by publication-dates-visible) plus an accurate sitemap lastmod (Bing calls it "a key signal" for AI answers). datePublished/dateModified in Article or BlogPosting schema is the structured, Bing-side bonus on top of those: machine-readable dates generated from the same source as the visible ones, so the two never disagree.
Severity rationale
Low because schema dates are a structured bonus on top of visible dates and sitemap lastmod (the cross-vendor freshness signals); absence costs a Bing-side signal, not indexing.
Remediation
Add Article or BlogPosting JSON-LD to each blog post with at least datePublished set. Generate the schema at render time from your post's frontmatter or CMS metadata so dates stay accurate.
// app/blog/[slug]/page.tsx
<script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify({
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": post.title,
"datePublished": post.publishedAt, // ISO 8601: "2026-04-02"
"dateModified": post.updatedAt ?? post.publishedAt,
"author": { "@type": "Person", "name": post.author }
})}} />
At minimum, datePublished is required. Including dateModified when content is updated signals freshness to AI systems more precisely — a post from 2024 updated in 2026 should reflect the 2026 dateModified date.
Detection
-
ID:
article-dates-in-schema -
Severity:
low -
What to look for: If blog posts or articles exist, count all blog/article page routes. Search for Article or BlogPosting JSON-LD schema — look for
"@type": "Article"or"@type": "BlogPosting"in structured data blocks. If found, check whetherdatePublishedanddateModifiedfields are present. Count how many blog pages have schema with dates vs. total blog pages. -
Pass criteria: Count all blog/article pages. At least 1 blog or article page must have Article/BlogPosting JSON-LD schema with at least the
datePublishedfield set. If multiple blog pages exist, at least 80% should have Article schema withdatePublished. Bonus: also includingdateModifiedis noted in detail on pass. -
Fail criteria: Blog content exists but either has no Article/BlogPosting schema at all (0 Article schemas found), or has the schema without date fields (
datePublishedmissing from all schema instances). Report:"X of Y blog pages have Article schema with datePublished — Z% (threshold: 80%)"or"0 Article/BlogPosting schemas found across Y blog pages". -
Skip (N/A) when: No blog or article content exists on the site.
-
Detail on fail:
"0 Article/BlogPosting schemas found across 3 blog pages — AI systems cannot determine content freshness from structured data"or"BlogPosting schema present on 1 of 3 pages but datePublished is missing from all instances" -
Remediation: Article schema with dates helps AI systems assess content freshness:
<script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify({ "@context": "https://schema.org", "@type": "BlogPosting", "headline": "Post title", "datePublished": "2026-04-02", "dateModified": "2026-04-02", "author": { "@type": "Person", "name": "Author Name" } })}} />For comprehensive structured data coverage, the Advanced SEO audit covers schema validation in depth.
External references
- schema-org · BlogPosting
- schema-org · Article
- external · bing-grounding-index — Bing — Evolving role of the index (a stale fact produces a misleading response)
Taxons
History
- 2026-04-18·v1.0.0·Initial import from geo-readiness·automated
- 2026-06-10·v1.0.1·Full-field reframe to first-party freshness story: visible dates + accurate sitemap lastmod are the cross-vendor signals; schema dates are the structured Bing-side bonus. Removed unsourced "actively downrank"/"actively suppresses citation rates"/"AI Overviews surface fresher content preferentially" claims. Criteria unchanged.·by geo-first-party-alignment