BlogPosting Schema Generator

Boost your article visibility with valid JSON-LD. Connect your content to authors and publishers for better E-E-A-T signals.


Need Person Schema?

Need Org Schema?

BlogPosting Schema Example

{
"@context": "https://schema.org/",
"@type": "BlogPosting",
"headline": "Technical SEO Audit Guide",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://awesomedigital.com/blog/technical-seo"
},
"author": {
"@type": "Person",
"name": "Beth Woodcock",
"url": "https://awesomedigital.com/author/beth"
},
"datePublished": "2026-03-06T09:00:00+00:00",
"dateModified": "2026-03-06T09:00:00+00:00",
"image": {
"@type": "ImageObject",
"url": "https://awesomedigital.com/images/hero.jpg"
},
"publisher": {
"@type": "Organization",
"name": "Awesome Digital Collective",
"logo": {
"@type": "ImageObject",
"url": "https://awesomedigital.com/logo.svg"
}
}
}

BlogPosting Schema: The Comprehensive Guide

Everything you need to know about implementing BlogPosting schema correctly — from choosing the right Article subtype to wiring up E-E-A-T signals and deploying across WordPress, Shopify, and Magento.

Schema Types & SEO Impact

What is BlogPosting schema and how does it differ from standard Article schema?

BlogPosting is a more specific subtype of the generic Article schema, which itself inherits from CreativeWork. The key difference is precision: Article is a broad catch-all suitable for investigative journalism or white papers, while BlogPosting explicitly tells Google the page is dynamic, editorial blog content — making crawl intent clearer and indexing more confident.

Using the most specific type also unlocks additional blog-specific properties that Article alone does not support, such as commentCount and keywords. Google's own Article structured data documentation lists BlogPosting as a recommended subtype for standard blog content.

Rule of thumb: If a human editor wrote it for an ongoing blog, use BlogPosting. If it was published as a one-off editorial feature or news item, reach for NewsArticle.

Should I use BlogPosting, Article, NewsArticle, or HowTo schema?

Google's structured data guidelines are explicit: always use the most specific schema type that accurately fits your content. The more precise the type, the stronger the semantic signal. Use this reference to make the call:

Schema Type Best for
BlogPosting Standard blog articles, opinion pieces, editorial posts, and brand content.
NewsArticle Breaking news, time-sensitive journalism, and content distributed via Google News.
HowTo Step-by-step guides, tutorials, recipes, and instructional content.
TechArticle Technical walkthroughs, software manuals, API documentation, and code-intensive tutorials.
Article Generic fallback — only use when no subtype accurately fits the content.

For standard business or personal blogs, BlogPosting is the correct and optimal choice. Avoid falling back to the generic Article type if a more precise classification exists.

E-E-A-T & Freshness Signals

Why are datePublished and dateModified critical for BlogPosting SEO?

Freshness is one of Google's core ranking signals for informational queries. These two date fields do very different jobs — and both matter:

datePublished required
Declares the original publication date. Tells Google when the content first appeared and helps it calibrate freshness expectations for the topic.
dateModified recommended
Signals the last meaningful update. Refreshing this when you update content prompts re-crawling and can restore or improve rankings on competitive queries.

Both fields must use ISO 8601 format: YYYY-MM-DDThh:mm:ss+TZD — for example, 2026-05-19T09:00:00+01:00. This generator handles the conversion automatically from your shorthand date input.

How does BlogPosting schema support Google's E-E-A-T guidelines?

Google's Search Quality Evaluator Guidelines place heavy weight on E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness). BlogPosting schema directly feeds these signals by connecting content to verifiable, named entities. The key properties that drive E-E-A-T are:

Together, these properties transform a standalone blog post into a connected node in your site's entity graph — which is how topical authority is built at scale.

Placement & Implementation

Where should I place the BlogPosting schema on my website?

Place your BlogPosting JSON-LD inside a <script type="application/ld+json"> block in the <head> of each individual blog post's HTML document. Each post needs its own unique schema block — unlike Organization schema, which lives only on your homepage.

Avoid copy-paste bloat: Instead of repeating your full Organization and Person schema on every post, reference them using their @id values. For example: "publisher": { "@id": "https://yourdomain.com/#organization" }. This creates a clean linked data network with zero redundancy.
CMS Platform Guides

How do I implement BlogPosting schema on a WordPress website?

WordPress

WordPress is the most plugin-rich environment for schema markup. The three most widely used options are:

Rank Math Yoast SEO All in One SEO

All three auto-detect your post metadata and generate valid BlogPosting JSON-LD dynamically. To maximise E-E-A-T gains, configure each author's WordPress user profile in full — including a bio, website URL, and social links — so the plugin can map them into sameAs fields automatically.

For block-theme WordPress installs or headless setups, inject the schema directly into your post template's <head> using the wp_head hook or a custom ACF field piped into a JSON-LD template.

How do I add BlogPosting schema to a Shopify store's blog?

Shopify

Shopify blogs sit within your Liquid theme templates. For a manual implementation, open the theme code editor and locate the article.liquid or sections/main-article.liquid file. Add the following JSON-LD block using Shopify's native Liquid variables:

headline required
Map to {{ article.title }} — pulls the post title from Shopify's article object directly.
datePublished required
Map to {{ article.published_at | date: '%Y-%m-%dT%H:%M:%S+00:00' }} to output ISO 8601 format.
image recommended
Map to {{ article.image | img_url: 'master' }} to reference the post's featured image at full resolution.
author.name recommended
Map to {{ article.author }} — returns the author's display name as configured in Shopify Staff accounts.

For a no-code approach, apps like Hello Rich Snippets and Webrex SEO Optimizer in the Shopify App Store handle this automatically with a toggle — no Liquid editing required.

How do I configure BlogPosting schema for a Magento (Adobe Commerce) blog?

Magento / Adobe Commerce

Magento does not natively include a blogging module, so a third-party blog extension is required. The two most robust options that include built-in structured data support are:

Magefan Blog Extension Amasty SEO Toolkit Mirasvit Blog MX

Once installed, navigate to your Magento Admin Panel → the blog post editing view → and expand the Search Engine Optimization or Rich Snippets section. Select BlogPosting as the structured data type. The extension automatically maps the post database fields — author name, publish date, modification date, and category taxonomy — into valid JSON-LD output.

Magento headless / PWA Studio: If you're running a headless storefront, generate the JSON-LD server-side in your GraphQL resolver and inject it into the page's <head> via your frontend framework's head management (e.g. React Helmet or Next.js Head component).