Use Article for most pages — it's the parent type and works universally. NewsArticle requires you to be a recognized news publisher with eligibility for Google News. BlogPosting works fine but conveys no advantage over Article.
Schema.org's Article hierarchy:
- **Article** (parent type) — any article-like content - **NewsArticle** (child of Article) — journalism content from recognized publishers - **BlogPosting** (child of Article) — blog post content - **TechArticle**, **ScholarlyArticle**, **Report** — specialized children for specific contexts
**Which to use, by content type:**
**Use `Article` for:** - Most marketing blog posts - Long-form guides - Educational content - Q&A and FAQ pages (often combined with QAPage or FAQPage) - Case studies - Anything that doesn't clearly fit a more specific type
**Use `NewsArticle` only if:** - You're a registered Google News publisher - The content is genuinely news (timely, factual, journalist-authored) - You have an editorial team and an "About" page that establishes journalistic credentials
Misusing NewsArticle on a marketing blog will not earn you Google News inclusion and may trigger quality signal mismatches. Stick with Article unless you're actually news.
**Use `BlogPosting` if:** - You explicitly want to signal "this is blog content" - You're following a CMS convention that defaults to BlogPosting (WordPress with Yoast, for example)
BlogPosting works identically to Article for SEO purposes. There's no rich snippet treatment difference between Article and BlogPosting in 2026.
**Required properties for any Article-type schema:**
{ "@context": "https://schema.org", "@type": "Article", "headline": "Article title (max 110 characters)", "image": [ "https://yoursite.ca/images/article-1x1.jpg", "https://yoursite.ca/images/article-4x3.jpg", "https://yoursite.ca/images/article-16x9.jpg" ], "datePublished": "2026-04-22T08:00:00-04:00", "dateModified": "2026-04-22T08:00:00-04:00", "author": { "@type": "Person", "name": "Martin Vassilev", "url": "https://yoursite.ca/about/" }, "publisher": { "@type": "Organization", "name": "Ottawa SEO Inc.", "logo": { "@type": "ImageObject", "url": "https://yoursite.ca/logo.png", "width": 600, "height": 60 } } }
**Notes on each required property:**
- **`headline`** — under 110 characters. Longer headlines are truncated by Google. - **`image`** — supply at least one, but ideally three aspect ratios (1:1, 4:3, 16:9). Each image at minimum 1200px wide. - **`datePublished` and `dateModified`** — ISO 8601 format with timezone. Update `dateModified` whenever content changes meaningfully (not every page edit, but every meaningful refresh). - **`author`** — Person type preferred over Organization. Strengthens E-E-A-T signal. - **`publisher`** — Organization type with logo. Logo should be at least 600px wide and rectangular.
**Don't add Article schema to:** - Homepage (use Organization or LocalBusiness instead) - Service pages (use Service) - Product pages (use Product) - Category/tag archive pages (use CollectionPage) - About / Contact / Privacy pages (no schema needed for these)
**Top Stories carousel eligibility (NewsArticle only):**
The Top Stories carousel on Google search results is restricted to NewsArticle from Google News-eligible publishers. This is the primary reason to consider NewsArticle — but Google News inclusion requires a separate application and approval process through Publisher Center. Don't use NewsArticle hoping to "get into Top Stories" without the underlying publisher status — it won't work.
- **Should I use JSON-LD, Microdata, or RDFa for schema markup?** — JSON-LD, period. Google has explicitly stated JSON-LD is preferred since 2017. Microdata and RDFa still parse correctly but add no benefit and complicate maintenance. Strip out any old Microdata when you migrate. - **Is FAQ schema still worth implementing in 2026?** — Yes, but with reduced expectations. Google removed FAQ rich snippets from most non-authoritative sites in August 2023 and continued tightening through 2024–2025. FAQ schema still helps with semantic understanding and AI Overview citations, even when rich snippets don't display. - **Can I use Product schema for service businesses?** — Yes — Service schema (a Product subtype) is the right choice for service businesses. Don't use the generic Product schema for services; use Service, with proper offers, areaServed, and provider properties. - **How do I add AggregateRating schema without violating Google's guidelines?** — Only mark up reviews that are genuinely visible on the page, came from real customers, and are first-party (collected by you, not aggregated from elsewhere). Google's 2019 review snippet update made fake or third-party-aggregated review markup ineligible for rich results.