Resources / Structured data / Template

Article and BlogPosting JSON-LD Template

Describe an editorial page with its headline, images, accountable author, publisher, and meaningful publication dates.

What this describes

Use Article for editorial work and BlogPosting or NewsArticle when that narrower type fits. The example uses BlogPosting. Change the type rather than claiming several types simply to broaden eligibility.

Copyable template

{
  "@context": "https://schema.org",
  "@type": "BlogPosting",
  "@id": "https://www.example.com/articles/example-article/#article",
  "mainEntityOfPage": {
    "@id": "https://www.example.com/articles/example-article/#webpage"
  },
  "headline": "Example Article Headline",
  "description": "A summary that matches the article.",
  "image": [
    "https://www.example.com/images/example-article.jpg"
  ],
  "datePublished": "2026-09-01",
  "dateModified": "2026-09-18",
  "author": {
    "@id": "https://www.example.com/authors/example-person/#person"
  },
  "publisher": {
    "@id": "https://www.example.com/#organization"
  },
  "inLanguage": "en-US"
}

Customize it

Validate it

Use the live-page JSON-LD validation tutorial, test with Schema.org Validator and Google’s Rich Results Test, and compare every value with the rendered article. Provide the referenced Person, Organization, and WebPage nodes in markup the intended consumer can receive; a shared identifier alone does not ensure remote resolution. A passing test establishes neither editorial quality nor guaranteed search presentation.

Official references

Completion check

  • Match headline, author, publisher, images, and dates to the article.
  • Use a more specific Article subtype only when it fits.
  • Change dateModified only after a meaningful content change.