BlogPosting Schema Markup (JSON-LD Blueprint)
Specialized subtype of Article optimized for corporate and developer blogs, personal publishing hubs, and case studies.
Displayed below main page header or above the tool container. • Zero CLS Container
Production JSON-LD Code Block
Embed this structured data block directly into your HTML <head> or framework layout template.
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "Why GA4 Strips UTM Parameters in Single Page Applications",
"description": "Deep dive into browser History API state pushes, query parameter preservation, and GA4 tag sequencing in Next.js SPAs.",
"image": "https://omniseotools.com/images/blog/ga4-utm-spa-cover.jpg",
"datePublished": "2026-08-10T10:00:00+00:00",
"dateModified": "2026-09-20T12:00:00+00:00",
"author": {
"@type": "Person",
"name": "Amr Gharz",
"jobTitle": "Lead SEO Architect",
"url": "https://omniseotools.com/about"
},
"publisher": {
"@type": "Organization",
"name": "OmniSEO Tools",
"logo": {
"@type": "ImageObject",
"url": "https://omniseotools.com/images/logo.png"
}
},
"wordCount": 1850,
"articleSection": "Web Analytics"
}Typed Properties Specification (7 Fields)
Key Schema.org properties and sub-objects required to qualify for rich snippet treatment in Google Search.
| Property | Expected Type | Status | Description & Example |
|---|---|---|---|
| headline | Text | Required | The title of the blog post. e.g. Why GA4 Strips UTM Parameters in Single Page Applications |
| datePublished | DateTime | Required | ISO 8601 publication date. e.g. 2026-08-10T10:00:00+00:00 |
| author | Person | Required | Blog writer entity with job title and author page URL. e.g. { "@type": "Person", "name": "Amr Gharz" } |
| image | URL | Required | Primary featured image URL. e.g. https://omniseotools.com/images/cover.jpg |
| publisher | Organization | Required | Publishing blog or corporate site. e.g. { "@type": "Organization", "name": "OmniSEO Tools" } |
| wordCount | Integer | Recommended | Total approximate word count of the article body. e.g. 1850 |
| articleSection | Text | Recommended | Topical category or tag of the blog post. e.g. Web Analytics |
Google Search Console Pitfalls & Critical Warnings
Avoid these 3 common validation traps, parser errors, and algorithmic policy penalties when deploying BlogPosting schema.
Missing ISO 8601 Timezone Offset
Providing '2026-08-10 10:00' without UTC 'Z' or '+00:00' offset causes Google date parsing to default to local crawler server time.
Always append standard timezone offsets like 'T10:00:00+00:00'.
Hidden or Non-Rendered Text in Schema
Including content in the schema description that does not appear in the visible blog HTML violates Google guidelines.
Ensure structured data fields match user-visible page copy.
Nested Comments Without Typed UserComments
Attempting to embed raw comment arrays inside blog posting without typed Comment nodes creates schema linter errors.
Use properly typed 'comment': [{ '@type': 'Comment', ... }] objects.
Recommended Implementation Scenarios
Related Schema Blueprints
Explore complementary structured data blueprints across the Editorial cluster.
Displayed below main page header or above the tool container. • Zero CLS Container