Skip to main content

Command Palette

Search for a command to run...

Article Schema Guide: Author, Dates, and Breadcrumbs

Updated
9 min readView as Markdown
Article Schema Guide: Author, Dates, and Breadcrumbs
F
FloxoLab helps small businesses cut manual work with n8n workflow automation and technical SEO. Based in the Philippines, serving US clients.

Article schema helps a search engine identify an article, its author, publication and update dates, primary image, publisher, and place in the site hierarchy. It does not make weak content trustworthy, and valid markup does not guarantee a special search appearance.

For a small business site, the safest implementation is a short JSON-LD graph that describes facts already visible on the page. The page should show the same author and dates that the markup declares.

What Google supports for articles

Google documents Article, NewsArticle, and BlogPosting as supported types for article pages. A normal company guide can use BlogPosting or Article. The type should describe the page honestly. Using NewsArticle does not turn a company blog post into news.

Google's Article documentation currently lists recommended properties rather than a separate set of required properties. That does not make an empty Article object useful. Include the applicable properties that identify the page and match its visible content:

  • headline

  • image

  • datePublished

  • dateModified

  • author

  • publisher

  • mainEntityOfPage

Add a separate BreadcrumbList when the page has a visible hierarchy that helps people understand where they are.

Match the visible page first

Structured data is a description of the page, not a hidden SEO version of it.

Visible page element JSON-LD property Check
Article H1 headline Same meaning and no exaggerated alternate title
Author byline author.name Same person or organization
Author profile link author.url Resolves to the entity's canonical page
Published date datePublished Same calendar date
Last updated date dateModified Shown only after a substantive update
Hero or representative image image Crawlable and relevant to the article
Site or business name publisher.name Correct publishing entity
Visible navigation trail BreadcrumbList Same logical hierarchy

If the page says "By Jordan Lee" but the markup says the author is Example Company, fix the mismatch. If the page shows only a publication date, do not invent a newer modification date to make the result look fresh.

A practical JSON-LD example

This example uses one @graph with a BlogPosting and a BreadcrumbList. Replace every example value with the final canonical URL, image, title, dates, and entity IDs for the real page.

{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "BlogPosting",
      "@id": "https://example.com/guides/article-schema#article",
      "url": "https://example.com/guides/article-schema",
      "mainEntityOfPage": {
        "@type": "WebPage",
        "@id": "https://example.com/guides/article-schema"
      },
      "headline": "Article Schema Guide: Author, Dates, and Breadcrumbs",
      "description": "A practical guide to matching article JSON-LD with visible authors, dates, images, and breadcrumbs.",
      "image": [
        "https://example.com/images/article-schema-cover.webp"
      ],
      "datePublished": "2026-07-25",
      "dateModified": "2026-07-25",
      "author": {
        "@type": "Person",
        "@id": "https://example.com/about/jordan-lee#person",
        "name": "Jordan Lee",
        "url": "https://example.com/about/jordan-lee"
      },
      "publisher": {
        "@type": "Organization",
        "@id": "https://example.com/#organization",
        "name": "Example Company",
        "url": "https://example.com/",
        "logo": {
          "@type": "ImageObject",
          "url": "https://example.com/images/logo.png"
        }
      }
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://example.com/guides/article-schema#breadcrumb",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Home",
          "item": "https://example.com/"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "SEO Guides",
          "item": "https://example.com/guides"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "Article Schema Guide"
        }
      ]
    }
  ]
}

The final breadcrumb item can omit item when it represents the current page. Google's breadcrumb examples allow the last item to contain only a name. The positions still need to run in order.

Step 1: choose the correct article type

Use the most specific honest type:

  • BlogPosting for a normal blog or educational guide

  • NewsArticle for actual news reporting

  • Article when neither narrower type is a better description

Do not add several types merely to cover every possibility. One accurate primary type is easier to maintain and validate.

Schema.org permits many properties and nested types. Google's search features use a documented subset. A property can be valid Schema.org and still have no effect on Google Search.

Step 2: identify the author as an entity

Google recommends marking each author separately and using Person for a person or Organization for an organization. Do not place several names in one name string.

For one person:

"author": {
  "@type": "Person",
  "@id": "https://example.com/about/jordan-lee#person",
  "name": "Jordan Lee",
  "url": "https://example.com/about/jordan-lee"
}

For two authors:

"author": [
  {
    "@type": "Person",
    "name": "Jordan Lee",
    "url": "https://example.com/about/jordan-lee"
  },
  {
    "@type": "Person",
    "name": "Morgan Cruz",
    "url": "https://example.com/about/morgan-cruz"
  }
]

The profile page should help identify the author. A useful page can explain role, experience, areas of work, and published material. Google specifically recommends an internal author page linked with author.url when available.

sameAs can point to another page that unambiguously identifies the same person or organization, but it is not a substitute for a useful on-site profile. Do not create a fictional expert, use a reviewer who did not review the page, or add credentials that are not visible and verifiable.

Step 3: handle publication and update dates honestly

Use ISO 8601 date or date-time values:

"datePublished": "2026-07-25",
"dateModified": "2026-08-14T10:30:00+08:00"

Google recommends including timezone information when a time is supplied. A date without time can use YYYY-MM-DD.

The two dates have different jobs:

  • datePublished records when the article was first published

  • dateModified records the most recent substantive update

Correcting a typo, changing a button color, or rebuilding a shared footer is not a reason to tell readers that the guide was freshly updated. Change dateModified when the article's useful content, evidence, instructions, or conclusions materially change. Show that updated date on the page.

Keep the dates consistent across visible copy, JSON-LD, Open Graph metadata where used, the content manifest, and sitemap lastmod.

Step 4: use a representative, crawlable image

The image property should point to an image that represents the article and can be crawled. Use an absolute HTTPS URL, not a private asset path or a CSS background reference.

Google recommends high-resolution images and supports several aspect ratios. A site does not need to manufacture misleading crops solely to fill an array. Supply the real, indexable image variants the page owns, keep their URLs stable, and ensure the visible hero corresponds to the declared image.

Step 5: connect the article to its canonical page

mainEntityOfPage identifies the page whose primary subject is the article. Its @id should normally match the clean canonical URL.

Keep these values aligned:

  • HTML canonical

  • og:url

  • structured data url

  • structured data mainEntityOfPage.@id

  • sitemap URL

  • internal links

Mixed .html, trailing-slash, HTTP, HTTPS, and parameter versions create unnecessary ambiguity. Choose the public canonical format and use it consistently.

Step 6: describe the publisher once

Use Organization for a business publication and give the organization a stable @id, such as the homepage plus #organization. Reuse that ID across articles instead of creating a slightly different publisher on each page.

The logo should belong to the publisher, be crawlable, and use a stable URL. The article author and publisher do not have to be the same entity. A person can write an article published by a company.

Step 7: add breadcrumbs that match the site

A breadcrumb trail describes a typical route from a broader section to the current page. It is not a list of keywords.

Home > SEO Guides > Article Schema Guide

Each ListItem needs a numeric position and a name. Include item for linked breadcrumb pages. Use canonical URLs and the same hierarchy that the visible page and internal navigation imply.

Google can use breadcrumb markup to categorize page information in search results, but it can also choose a different display. Valid breadcrumb markup is not a promise that the full trail will appear.

Common implementation mistakes

Markup that disagrees with the page

Hidden dates, alternate authors, inflated headlines, and images unrelated to the article break the principle that structured data should represent visible content.

A new modification date on every build

If a deployment script sets dateModified to today on every release, unchanged articles appear freshly updated. Derive the date from actual editorial changes, not the build clock.

One author string containing several people

Use an array of separate Person objects. This lets each author have a name and identity URL.

Relative or noncanonical URLs

Use absolute public URLs in JSON-LD. Do not expose staging hosts, .html paths, tracking parameters, or image paths that require authentication.

Duplicate blocks that contradict each other

One template may generate JSON-LD while a plugin or tag manager injects another version. Inspect the rendered HTML, not only the source template. Remove or reconcile duplicate entities.

FAQ schema added to ordinary Q&A

Visible questions can still help readers. However, Google retired FAQ rich results on May 7, 2026. Do not add FAQPage markup to a guide in the hope of restoring that search feature.

Validate before and after release

  1. Confirm the visible author, dates, headline, image, and breadcrumb hierarchy.

  2. Validate the JSON syntax.

  3. Test the public or preview code in Google's Rich Results Test.

  4. Check the page in Schema.org Validator for vocabulary-level issues.

  5. Inspect the rendered HTML for duplicate or stale JSON-LD.

  6. Publish a small set first rather than changing every template at once.

  7. Use URL Inspection after launch to confirm Google can access the canonical page and resources.

  8. Monitor Search Console enhancement reports when Google provides a relevant report.

The Rich Results Test reports eligibility and errors for supported Google features. It cannot guarantee that a rich result will be displayed. Google's structured data policies explicitly state that correct markup does not guarantee special search appearance.

A compact maintenance rule

Treat article schema as generated content tied to the same source fields that render the visible page:

title -> H1 + headline
author entity -> byline + author object
published date -> visible published date + datePublished
modified date -> visible updated date + dateModified + sitemap lastmod
cover -> visible hero + image
canonical -> canonical + url + mainEntityOfPage

One source of truth prevents the most common drift. It also makes a sitewide author or URL correction safer than editing dozens of independent JSON blocks.

Official sources

Originally published on FloxoLab.